Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(710)

Side by Side Diff: content/browser/renderer_host/render_widget_host_view_aura.cc

Issue 11829044: Revert 175644 (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: Created 7 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "content/browser/renderer_host/render_widget_host_view_aura.h" 5 #include "content/browser/renderer_host/render_widget_host_view_aura.h"
6 6
7 #include "base/bind.h" 7 #include "base/bind.h"
8 #include "base/bind_helpers.h" 8 #include "base/bind_helpers.h"
9 #include "base/command_line.h" 9 #include "base/command_line.h"
10 #include "base/debug/trace_event.h" 10 #include "base/debug/trace_event.h"
(...skipping 324 matching lines...) Expand 10 before | Expand all | Expand 10 after
335 RenderWidgetHostViewAura* old_child = 335 RenderWidgetHostViewAura* old_child =
336 popup_parent_host_view_->popup_child_host_view_; 336 popup_parent_host_view_->popup_child_host_view_;
337 if (old_child) { 337 if (old_child) {
338 // TODO(jhorwich): Allow multiple popup_child_host_view_ per view, or 338 // TODO(jhorwich): Allow multiple popup_child_host_view_ per view, or
339 // similar mechanism to ensure a second popup doesn't cause the first one 339 // similar mechanism to ensure a second popup doesn't cause the first one
340 // to never get a chance to filter events. See crbug.com/160589. 340 // to never get a chance to filter events. See crbug.com/160589.
341 DCHECK(old_child->popup_parent_host_view_ == popup_parent_host_view_); 341 DCHECK(old_child->popup_parent_host_view_ == popup_parent_host_view_);
342 old_child->popup_parent_host_view_ = NULL; 342 old_child->popup_parent_host_view_ = NULL;
343 } 343 }
344 popup_parent_host_view_->popup_child_host_view_ = this; 344 popup_parent_host_view_->popup_child_host_view_ = this;
345 if (popup_type_ != WebKit::WebPopupTypeNone)
346 window_->SetCapture();
347 window_->SetType(aura::client::WINDOW_TYPE_MENU); 345 window_->SetType(aura::client::WINDOW_TYPE_MENU);
348 window_->Init(ui::LAYER_TEXTURED); 346 window_->Init(ui::LAYER_TEXTURED);
349 window_->SetName("RenderWidgetHostViewAura"); 347 window_->SetName("RenderWidgetHostViewAura");
350 348
351 aura::RootWindow* root = popup_parent_host_view_->window_->GetRootWindow(); 349 aura::RootWindow* root = popup_parent_host_view_->window_->GetRootWindow();
352 window_->SetDefaultParentByRootWindow(root, bounds_in_screen); 350 window_->SetDefaultParentByRootWindow(root, bounds_in_screen);
353 351
354 // TODO(erg): While I could make sure details of the StackingClient are 352 // TODO(erg): While I could make sure details of the StackingClient are
355 // hidden behind aura, hiding the details of the ScreenPositionClient will 353 // hidden behind aura, hiding the details of the ScreenPositionClient will
356 // take another effort. 354 // take another effort.
(...skipping 1187 matching lines...) Expand 10 before | Expand all | Expand 10 after
1544 } 1542 }
1545 1543
1546 switch (event->type()) { 1544 switch (event->type()) {
1547 case ui::ET_MOUSE_PRESSED: 1545 case ui::ET_MOUSE_PRESSED:
1548 window_->SetCapture(); 1546 window_->SetCapture();
1549 // Confirm existing composition text on mouse click events, to make sure 1547 // Confirm existing composition text on mouse click events, to make sure
1550 // the input caret won't be moved with an ongoing composition text. 1548 // the input caret won't be moved with an ongoing composition text.
1551 FinishImeCompositionSession(); 1549 FinishImeCompositionSession();
1552 break; 1550 break;
1553 case ui::ET_MOUSE_RELEASED: 1551 case ui::ET_MOUSE_RELEASED:
1554 if (popup_type_ == WebKit::WebPopupTypeNone && 1552 window_->ReleaseCapture();
1555 (popup_child_host_view_ == NULL ||
1556 popup_child_host_view_->popup_type_ == WebKit::WebPopupTypeNone))
1557 window_->ReleaseCapture();
1558 break; 1553 break;
1559 default: 1554 default:
1560 break; 1555 break;
1561 } 1556 }
1562 1557
1563 // Needed to propagate mouse event to native_tab_contents_view_aura. 1558 // Needed to propagate mouse event to native_tab_contents_view_aura.
1564 // TODO(pkotwicz): Find a better way of doing this. 1559 // TODO(pkotwicz): Find a better way of doing this.
1565 if (window_->parent()->delegate() && !(event->flags() & ui::EF_FROM_TOUCH)) 1560 if (window_->parent()->delegate() && !(event->flags() & ui::EF_FROM_TOUCH))
1566 window_->parent()->delegate()->OnMouseEvent(event); 1561 window_->parent()->delegate()->OnMouseEvent(event);
1567 1562
(...skipping 410 matching lines...) Expand 10 before | Expand all | Expand 10 after
1978 RenderWidgetHost* widget) { 1973 RenderWidgetHost* widget) {
1979 return new RenderWidgetHostViewAura(widget); 1974 return new RenderWidgetHostViewAura(widget);
1980 } 1975 }
1981 1976
1982 // static 1977 // static
1983 void RenderWidgetHostViewPort::GetDefaultScreenInfo(WebScreenInfo* results) { 1978 void RenderWidgetHostViewPort::GetDefaultScreenInfo(WebScreenInfo* results) {
1984 GetScreenInfoForWindow(results, NULL); 1979 GetScreenInfoForWindow(results, NULL);
1985 } 1980 }
1986 1981
1987 } // namespace content 1982 } // namespace content
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698