Index: chrome/browser/ui/views/app_list/app_list_dialog_container.cc |
diff --git a/chrome/browser/ui/views/app_list/app_list_dialog_container.cc b/chrome/browser/ui/views/app_list/app_list_dialog_container.cc |
index e86ca7dfb8b4cd3123b0e655d15638abc6cb4562..3ff64caca2bb5e8106bcd39f0b18953893f9bc8c 100644 |
--- a/chrome/browser/ui/views/app_list/app_list_dialog_container.cc |
+++ b/chrome/browser/ui/views/app_list/app_list_dialog_container.cc |
@@ -168,8 +168,13 @@ class FullSizeBubbleFrameView : public views::BubbleFrameView { |
const gfx::Rect& rect) const override { |
// Make sure click events can still reach the close button, even if the |
// ClientView overlaps it. |
- if (IsCloseButtonVisible() && GetCloseButtonBounds().Intersects(rect)) |
+ // NOTE: |rect| is in the mirrored coordinate space, so we must use the |
+ // close button's mirrored bounds to correctly target the close button when |
+ // in RTL mode. |
+ if (IsCloseButtonVisible() && |
+ GetCloseButtonMirroredBounds().Intersects(rect)) { |
return true; |
+ } |
return views::BubbleFrameView::DoesIntersectRect(target, rect); |
} |