diff options
author | cpu@chromium.org <cpu@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-12-04 23:48:50 +0000 |
---|---|---|
committer | cpu@chromium.org <cpu@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-12-04 23:48:50 +0000 |
commit | 91f9e4d35cf2965d73f8aa2cefb0d0439075d4a7 (patch) | |
tree | aea15254e2052aa90f473cbbd96cb6383ce7ca2d /chrome | |
parent | 6d613d6dc13bf948f84f7494c6ee316a06d7c4e4 (diff) | |
download | chromium_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.cc | 12 |
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; |