Fix button order on Win32
authorPaul Betts <paul@github.com>
Fri, 30 Aug 2013 19:08:04 +0000 (12:08 -0700)
committerPaul Betts <paul@github.com>
Fri, 30 Aug 2013 19:08:04 +0000 (12:08 -0700)
On Windows, the button order is left to right, with the primary action on the
left (i.e. "Ok" "Cancel"). On Mac, the button order is that the primary action
is nearest to the corner.

browser/ui/message_box_win.cc

index d9e0869..52181e4 100644 (file)
@@ -195,7 +195,10 @@ void MessageDialog::Layout() {
   int x = bounds.width();
   int height = buttons_[0]->GetPreferredSize().height() +
                views::kRelatedControlVerticalSpacing;
-  for (size_t i = 0; i < buttons_.size(); ++i) {
+
+  // NB: We iterate through the buttons backwards here because
+  // Mac and Windows buttons are laid out in opposite order.
+  for (int i = buttons_.size() - 1; i >= 0; --i) {
     gfx::Size size = buttons_[i]->GetPreferredSize();
     x -= size.width() + views::kRelatedButtonHSpacing;