diff options
Diffstat (limited to 'ui')
-rw-r--r-- | ui/linux_ui/linux_ui.h | 5 | ||||
-rw-r--r-- | ui/views/widget/desktop_aura/desktop_root_window_host_x11.cc | 4 |
2 files changed, 9 insertions, 0 deletions
diff --git a/ui/linux_ui/linux_ui.h b/ui/linux_ui/linux_ui.h index 85decc8..1f58e11 100644 --- a/ui/linux_ui/linux_ui.h +++ b/ui/linux_ui/linux_ui.h @@ -47,10 +47,15 @@ class LINUX_UI_EXPORT LinuxUI : public LinuxShellDialog { virtual bool UseNativeTheme() const = 0; virtual gfx::Image GetThemeImageNamed(int id) const = 0; virtual bool GetColor(int id, SkColor* color) const = 0; + virtual bool HasCustomImage(int id) const = 0; // Returns a NativeTheme that will provide system colors and draw system // style widgets. virtual NativeTheme* GetNativeTheme() const = 0; + + // Returns whether we should be using the native theme provided by this + // object by default. + virtual bool GetDefaultUsesSystemTheme() const = 0; }; } // namespace ui diff --git a/ui/views/widget/desktop_aura/desktop_root_window_host_x11.cc b/ui/views/widget/desktop_aura/desktop_root_window_host_x11.cc index ea98a9c..78d3e9d 100644 --- a/ui/views/widget/desktop_aura/desktop_root_window_host_x11.cc +++ b/ui/views/widget/desktop_aura/desktop_root_window_host_x11.cc @@ -619,6 +619,10 @@ bool DesktopRootWindowHostX11::ShouldUseNativeFrame() { } void DesktopRootWindowHostX11::FrameTypeChanged() { + // Replace the frame and layout the contents. Even though we don't have a + // swapable glass frame like on Windows, we still replace the frame because + // the button assets don't update otherwise. + native_widget_delegate_->AsWidget()->non_client_view()->UpdateFrame(true); } NonClientFrameView* DesktopRootWindowHostX11::CreateNonClientFrameView() { |