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

Unified Diff: ui/views/widget/widget.cc

Issue 375593002: Do not set the mouse event handler if Widget::SetCapture() fails (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 5 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 side-by-side diff with in-line comments
Download patch
Index: ui/views/widget/widget.cc
diff --git a/ui/views/widget/widget.cc b/ui/views/widget/widget.cc
index d8b203080719216c6279f60c9e4d4af43f88eefe..82a2f538909cf6b12c5b6a249a17a4bb25d2c579 100644
--- a/ui/views/widget/widget.cc
+++ b/ui/views/widget/widget.cc
@@ -938,11 +938,17 @@ NativeWidget* Widget::native_widget() {
}
void Widget::SetCapture(View* view) {
+ if (!native_widget_->HasCapture()) {
+ native_widget_->SetCapture();
+
+ // Early return if setting capture was unsuccessful.
+ if (!native_widget_->HasCapture())
+ return;
+ }
+
if (internal::NativeWidgetPrivate::IsMouseButtonDown())
is_mouse_button_pressed_ = true;
root_view_->SetMouseHandler(view);
- if (!native_widget_->HasCapture())
- native_widget_->SetCapture();
}
void Widget::ReleaseCapture() {

Powered by Google App Engine
This is Rietveld 408576698