summaryrefslogtreecommitdiffstats
path: root/chrome
diff options
context:
space:
mode:
authorcpu@chromium.org <cpu@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-12-04 23:48:50 +0000
committercpu@chromium.org <cpu@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-12-04 23:48:50 +0000
commit91f9e4d35cf2965d73f8aa2cefb0d0439075d4a7 (patch)
treeaea15254e2052aa90f473cbbd96cb6383ce7ca2d /chrome
parent6d613d6dc13bf948f84f7494c6ee316a06d7c4e4 (diff)
downloadchromium_src-91f9e4d35cf2965d73f8aa2cefb0d0439075d4a7.zip
chromium_src-91f9e4d35cf2965d73f8aa2cefb0d0439075d4a7.tar.gz
chromium_src-91f9e4d35cf2965d73f8aa2cefb0d0439075d4a7.tar.bz2
Fix for tab re-attach on windows desktop aura
When draggin a window from the tab to re-attach the tab to another window it didn't work because the windows enumeration was not ignoring the window that was being moved (aka itself). BUG=128578 TEST= windows aura desktop, drag tab out and try to re-attach. Review URL: https://codereview.chromium.org/11416345 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@171082 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome')
-rw-r--r--chrome/browser/ui/views/tabs/dock_info_win.cc12
1 files changed, 8 insertions, 4 deletions
diff --git a/chrome/browser/ui/views/tabs/dock_info_win.cc b/chrome/browser/ui/views/tabs/dock_info_win.cc
index eccfaa8..bd47e93 100644
--- a/chrome/browser/ui/views/tabs/dock_info_win.cc
+++ b/chrome/browser/ui/views/tabs/dock_info_win.cc
@@ -306,10 +306,14 @@ class DockToWindowFinder : public BaseWindowFinder {
std::set<HWND> RemapIgnoreSet(const std::set<gfx::NativeView>& ignore) {
#if defined(USE_AURA)
- // TODO(scottmg): Figure out how to reimplement |ignore| on Aura. The ignore
- // in BaseWindowFinder is via EnumThreadWindows, but the NativeViews won't
- // be enumerated on Aura.
- return std::set<HWND>();
+ std::set<HWND> hwnd_set;
+ std::set<gfx::NativeView>::const_iterator it = ignore.begin();
+ for (; it != ignore.end(); ++it) {
+ HWND w = (*it)->GetRootWindow()->GetAcceleratedWidget();
+ if (w)
+ hwnd_set.insert(w);
+ }
+ return hwnd_set;
#else
// NativeViews are already HWNDs on non-Aura Windows.
return ignore;