diff options
author | pkasting@chromium.org <pkasting@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-04-14 18:38:31 +0000 |
---|---|---|
committer | pkasting@chromium.org <pkasting@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-04-14 18:38:31 +0000 |
commit | df9fd0d0bfef305243b90b193a6211ae64193fd5 (patch) | |
tree | e07b282802e4474502b35246439d8048eff4ba06 /chrome/common/win_util.cc | |
parent | a5f9bded7d8d8ff47ba62507c188106dba40229c (diff) | |
download | chromium_src-df9fd0d0bfef305243b90b193a6211ae64193fd5.zip chromium_src-df9fd0d0bfef305243b90b193a6211ae64193fd5.tar.gz chromium_src-df9fd0d0bfef305243b90b193a6211ae64193fd5.tar.bz2 |
Don't reserve space for an auto-hide taskbar that's not always-on-top. Windows native behavior is to cover these.
BUG=9976
Review URL: http://codereview.chromium.org/66055
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@13683 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/common/win_util.cc')
-rw-r--r-- | chrome/common/win_util.cc | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/chrome/common/win_util.cc b/chrome/common/win_util.cc index bf96cfb..3facfb8 100644 --- a/chrome/common/win_util.cc +++ b/chrome/common/win_util.cc @@ -524,14 +524,15 @@ void CenterAndSizeWindow(HWND parent, HWND window, const SIZE& pref, } } -bool EdgeHasAutoHideTaskbar(UINT edge, HMONITOR monitor) { +bool EdgeHasTopmostAutoHideTaskbar(UINT edge, HMONITOR monitor) { APPBARDATA taskbar_data = { 0 }; taskbar_data.cbSize = sizeof APPBARDATA; taskbar_data.uEdge = edge; HWND taskbar = reinterpret_cast<HWND>(SHAppBarMessage(ABM_GETAUTOHIDEBAR, &taskbar_data)); return ::IsWindow(taskbar) && - (MonitorFromWindow(taskbar, MONITOR_DEFAULTTONEAREST) == monitor); + (MonitorFromWindow(taskbar, MONITOR_DEFAULTTONULL) == monitor) && + (GetWindowLong(taskbar, GWL_EXSTYLE) & WS_EX_TOPMOST); } HANDLE GetSectionFromProcess(HANDLE section, HANDLE process, bool read_only) { |