summaryrefslogtreecommitdiffstats
path: root/chrome/common/win_util.cc
diff options
context:
space:
mode:
authorpkasting@chromium.org <pkasting@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-04-14 18:38:31 +0000
committerpkasting@chromium.org <pkasting@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-04-14 18:38:31 +0000
commitdf9fd0d0bfef305243b90b193a6211ae64193fd5 (patch)
treee07b282802e4474502b35246439d8048eff4ba06 /chrome/common/win_util.cc
parenta5f9bded7d8d8ff47ba62507c188106dba40229c (diff)
downloadchromium_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.cc5
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) {