diff options
Diffstat (limited to 'views/widget')
-rw-r--r-- | views/widget/widget_delegate.h | 4 | ||||
-rw-r--r-- | views/widget/widget_win.cc | 2 |
2 files changed, 6 insertions, 0 deletions
diff --git a/views/widget/widget_delegate.h b/views/widget/widget_delegate.h index 4607376..41fd4db 100644 --- a/views/widget/widget_delegate.h +++ b/views/widget/widget_delegate.h @@ -15,6 +15,10 @@ class WidgetDelegate { // Called with the display changes (color depth or resolution). virtual void DisplayChanged() = 0; + + // Called when the work area (the desktop area minus taskbars, + // menubars, etc.) changes in size. + virtual void WorkAreaChanged() = 0; }; } // namespace views diff --git a/views/widget/widget_win.cc b/views/widget/widget_win.cc index 84aece0..c88e218 100644 --- a/views/widget/widget_win.cc +++ b/views/widget/widget_win.cc @@ -889,6 +889,8 @@ LRESULT WidgetWin::OnSetText(const wchar_t* text) { } void WidgetWin::OnSettingChange(UINT flags, const wchar_t* section) { + if (flags == SPI_SETWORKAREA && GetWidgetDelegate()) + GetWidgetDelegate()->WorkAreaChanged(); SetMsgHandled(FALSE); } |