blob: cbe2b79bbfb3e55a33e0aa0052e23b37d63f23ed (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
--- ui/base/x/x11_util.cc.orig 2024-02-21 00:21:15 UTC
+++ ui/base/x/x11_util.cc
@@ -699,4 +699,20 @@ gfx::ImageSkia GetNativeWindowIcon(intptr_t target_win
return gfx::ImageSkia::CreateFrom1xBitmap(result);
}
+gfx::ICCProfile GetICCProfileForMonitor(int monitor) {
+ gfx::ICCProfile icc_profile;
+ if (base::CommandLine::ForCurrentProcess()->HasSwitch(switches::kHeadless)) {
+ return icc_profile;
+ }
+ std::string atom_name = monitor == 0
+ ? "_ICC_PROFILE"
+ : base::StringPrintf("_ICC_PROFILE_%d", monitor);
+ scoped_refptr<base::RefCountedMemory> data;
+ if (GetRawBytesOfProperty(GetX11RootWindow(), x11::GetAtom(atom_name.c_str()),
+ &data, nullptr)) {
+ icc_profile = gfx::ICCProfile::FromData(data->data(), data->size());
+ }
+ return icc_profile;
+}
+
} // namespace ui
|