fix prefers-color-scheme
This commit is contained in:
parent
b9a9d41dd6
commit
f53718b47d
60
chromium-110-gtktheme.patch
Normal file
60
chromium-110-gtktheme.patch
Normal file
@ -0,0 +1,60 @@
|
||||
Update web_instance on GTK when checking for dark mode
|
||||
|
||||
Adds some extra code to change the theme in the web instance when on GTK,
|
||||
to fix prefers-color-scheme.
|
||||
|
||||
Also makes SystemDarkModeSupported return true on Linux,
|
||||
since the most modern Linux distributions support it,
|
||||
and Linux dark mode code doesn’t detect whether or not it is supported.
|
||||
This function seems to only be used in telemetry, so maybe it doesn’t
|
||||
need to be changed.
|
||||
|
||||
Bug: 998903
|
||||
Change-Id: I02a084d9f733b01c8e6ad0f5ca5f1ebcfb16d475
|
||||
diff --git a/AUTHORS b/AUTHORS
|
||||
index 758d0bf..8c91146 100644
|
||||
--- a/AUTHORS
|
||||
+++ b/AUTHORS
|
||||
@@ -735,6 +735,7 @@
|
||||
Leith Bade <leith@leithalweapon.geek.nz>
|
||||
Lei Gao <leigao@huawei.com>
|
||||
Lei Li <lli.kernel.kvm@gmail.com>
|
||||
+Lena Wildervanck <lena.wildervanck@gmail.com>
|
||||
Lenny Khazan <lenny.khazan@gmail.com>
|
||||
Leo Wolf <jclw@ymail.com>
|
||||
Leon Han <leon.han@intel.com>
|
||||
diff --git a/ui/gtk/native_theme_gtk.cc b/ui/gtk/native_theme_gtk.cc
|
||||
index a60d6e3..1200a80 100644
|
||||
--- a/ui/gtk/native_theme_gtk.cc
|
||||
+++ b/ui/gtk/native_theme_gtk.cc
|
||||
@@ -165,6 +165,14 @@
|
||||
UserHasContrastPreference()
|
||||
? ui::NativeThemeBase::PreferredContrast::kMore
|
||||
: ui::NativeThemeBase::PreferredContrast::kNoPreference);
|
||||
+
|
||||
+ // Update the web instance too to fix prefers-color-theme
|
||||
+ NativeTheme* web_instance = NativeTheme::GetInstanceForWeb();
|
||||
+ web_instance->set_use_dark_colors(ShouldUseDarkColors());
|
||||
+ web_instance->set_preferred_color_scheme(CalculatePreferredColorScheme());
|
||||
+ web_instance->SetPreferredContrast(CalculatePreferredContrast());
|
||||
+ web_instance->NotifyOnNativeThemeUpdated();
|
||||
+
|
||||
native_theme->NotifyOnNativeThemeUpdated();
|
||||
}
|
||||
|
||||
diff --git a/ui/native_theme/native_theme.cc b/ui/native_theme/native_theme.cc
|
||||
index 835fa36..feec109 100644
|
||||
--- a/ui/native_theme/native_theme.cc
|
||||
+++ b/ui/native_theme/native_theme.cc
|
||||
@@ -36,7 +36,11 @@
|
||||
#if !BUILDFLAG(IS_WIN) && !BUILDFLAG(IS_APPLE)
|
||||
// static
|
||||
bool NativeTheme::SystemDarkModeSupported() {
|
||||
+#if BUILDFLAG(IS_LINUX)
|
||||
+ return true;
|
||||
+#else
|
||||
return false;
|
||||
+#endif
|
||||
}
|
||||
#endif
|
||||
|
@ -306,6 +306,9 @@ Patch90: chromium-109-disable-GlobalMediaControlsCastStartStop.patch
|
||||
# patch for using system opus
|
||||
Patch91: chromium-108-system-opus.patch
|
||||
|
||||
# fix prefers-color-scheme
|
||||
Patch92: chromium-110-gtktheme.patch
|
||||
|
||||
# From gentoo
|
||||
Patch98: chromium-94.0.4606.71-InkDropHost-crash.patch
|
||||
|
||||
@ -929,6 +932,8 @@ udev.
|
||||
%patch91 -p1 -b .system-opus
|
||||
%endif
|
||||
|
||||
%patch92 -p1 -b .gtk-prefers-color-scheme
|
||||
|
||||
%patch98 -p1 -b .InkDropHost-crash
|
||||
|
||||
# Fedora branded user agent
|
||||
@ -1366,8 +1371,6 @@ pushd %{builddir}
|
||||
# V8 initial snapshots
|
||||
# https://code.google.com/p/chromium/issues/detail?id=421063
|
||||
cp -a v8_context_snapshot.bin %{buildroot}%{chromium_path}
|
||||
cp -a xdg-mime xdg-settings %{buildroot}%{chromium_path}
|
||||
cp -a MEIPreload %{buildroot}%{chromium_path}
|
||||
|
||||
# This is ANGLE, not to be confused with the similarly named files under swiftshader/
|
||||
cp -a libEGL.so libGLESv2.so %{buildroot}%{chromium_path}
|
||||
@ -1545,10 +1548,7 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt
|
||||
%{chromium_path}/%{chromium_browser_channel}.sh
|
||||
%{chromium_path}/libEGL.so*
|
||||
%{chromium_path}/libGLESv2.so*
|
||||
%{chromium_path}/MEIPreload/
|
||||
%attr(4755, root, root) %{chromium_path}/chrome-sandbox
|
||||
%{chromium_path}/xdg-mime
|
||||
%{chromium_path}/xdg-settings
|
||||
%if %{use_qt}
|
||||
%{chromium_path}/libqt5_shim.so
|
||||
%endif
|
||||
|
Loading…
Reference in New Issue
Block a user