summaryrefslogtreecommitdiffstats
path: root/ash
diff options
context:
space:
mode:
authorskuhne@chromium.org <skuhne@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-09-14 23:03:28 +0000
committerskuhne@chromium.org <skuhne@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-09-14 23:03:28 +0000
commitb35c1a3eeb5a8af84d3aebeb1a5043839751cb1b (patch)
treef857af44bd4aee7820a766e3addce7b7fd50f7ca /ash
parent015fd815bf3c538857eb263cbd15e56ed01f20fe (diff)
downloadchromium_src-b35c1a3eeb5a8af84d3aebeb1a5043839751cb1b.zip
chromium_src-b35c1a3eeb5a8af84d3aebeb1a5043839751cb1b.tar.gz
chromium_src-b35c1a3eeb5a8af84d3aebeb1a5043839751cb1b.tar.bz2
Switch button positions for right to left languages
BUG=148790 TEST=visual Review URL: https://chromiumcodereview.appspot.com/10928206 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@156918 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'ash')
-rw-r--r--ash/wm/maximize_bubble_controller.cc81
1 files changed, 52 insertions, 29 deletions
diff --git a/ash/wm/maximize_bubble_controller.cc b/ash/wm/maximize_bubble_controller.cc
index 6f66278..49e9a8c 100644
--- a/ash/wm/maximize_bubble_controller.cc
+++ b/ash/wm/maximize_bubble_controller.cc
@@ -307,6 +307,11 @@ class BubbleContentsButtonRow : public views::View,
MaximizeBubbleController::Bubble* bubble() { return bubble_; }
private:
+ // Functions to add the left and right maximize / restore buttons.
+ void AddMaximizeLeftButton();
+ void AddMaximizeRightButton();
+ void AddMinimizeButton();
+
// The owning object which gets notifications.
MaximizeBubbleController::Bubble* bubble_;
@@ -569,36 +574,14 @@ BubbleContentsButtonRow::BubbleContentsButtonRow(
set_background(
views::Background::CreateSolidBackground(kBubbleBackgroundColor));
- if (bubble_->controller()->maximize_type() == FRAME_STATE_SNAP_LEFT) {
- left_button_ = new BubbleDialogButton(
- this,
- IDR_AURA_WINDOW_POSITION_LEFT_RESTORE,
- IDR_AURA_WINDOW_POSITION_LEFT_RESTORE_H,
- IDR_AURA_WINDOW_POSITION_LEFT_RESTORE_P);
- } else {
- left_button_ = new BubbleDialogButton(
- this,
- IDR_AURA_WINDOW_POSITION_LEFT,
- IDR_AURA_WINDOW_POSITION_LEFT_H,
- IDR_AURA_WINDOW_POSITION_LEFT_P);
- }
- minimize_button_ = new BubbleDialogButton(
- this,
- IDR_AURA_WINDOW_POSITION_MIDDLE,
- IDR_AURA_WINDOW_POSITION_MIDDLE_H,
- IDR_AURA_WINDOW_POSITION_MIDDLE_P);
- if (bubble_->controller()->maximize_type() == FRAME_STATE_SNAP_RIGHT) {
- right_button_ = new BubbleDialogButton(
- this,
- IDR_AURA_WINDOW_POSITION_RIGHT_RESTORE,
- IDR_AURA_WINDOW_POSITION_RIGHT_RESTORE_H,
- IDR_AURA_WINDOW_POSITION_RIGHT_RESTORE_P);
+ if (base::i18n::IsRTL()) {
+ AddMaximizeRightButton();
+ AddMinimizeButton();
+ AddMaximizeLeftButton();
} else {
- right_button_ = new BubbleDialogButton(
- this,
- IDR_AURA_WINDOW_POSITION_RIGHT,
- IDR_AURA_WINDOW_POSITION_RIGHT_H,
- IDR_AURA_WINDOW_POSITION_RIGHT_P);
+ AddMaximizeLeftButton();
+ AddMinimizeButton();
+ AddMaximizeRightButton();
}
}
@@ -656,6 +639,46 @@ views::CustomButton* BubbleContentsButtonRow::GetButtonForUnitTest(
}
}
+void BubbleContentsButtonRow::AddMaximizeLeftButton() {
+ if (bubble_->controller()->maximize_type() == FRAME_STATE_SNAP_LEFT) {
+ left_button_ = new BubbleDialogButton(
+ this,
+ IDR_AURA_WINDOW_POSITION_LEFT_RESTORE,
+ IDR_AURA_WINDOW_POSITION_LEFT_RESTORE_H,
+ IDR_AURA_WINDOW_POSITION_LEFT_RESTORE_P);
+ } else {
+ left_button_ = new BubbleDialogButton(
+ this,
+ IDR_AURA_WINDOW_POSITION_LEFT,
+ IDR_AURA_WINDOW_POSITION_LEFT_H,
+ IDR_AURA_WINDOW_POSITION_LEFT_P);
+ }
+}
+
+void BubbleContentsButtonRow::AddMaximizeRightButton() {
+ if (bubble_->controller()->maximize_type() == FRAME_STATE_SNAP_RIGHT) {
+ right_button_ = new BubbleDialogButton(
+ this,
+ IDR_AURA_WINDOW_POSITION_RIGHT_RESTORE,
+ IDR_AURA_WINDOW_POSITION_RIGHT_RESTORE_H,
+ IDR_AURA_WINDOW_POSITION_RIGHT_RESTORE_P);
+ } else {
+ right_button_ = new BubbleDialogButton(
+ this,
+ IDR_AURA_WINDOW_POSITION_RIGHT,
+ IDR_AURA_WINDOW_POSITION_RIGHT_H,
+ IDR_AURA_WINDOW_POSITION_RIGHT_P);
+ }
+}
+
+void BubbleContentsButtonRow::AddMinimizeButton() {
+ minimize_button_ = new BubbleDialogButton(
+ this,
+ IDR_AURA_WINDOW_POSITION_MIDDLE,
+ IDR_AURA_WINDOW_POSITION_MIDDLE_H,
+ IDR_AURA_WINDOW_POSITION_MIDDLE_P);
+}
+
BubbleContentsView::BubbleContentsView(
MaximizeBubbleController::Bubble* bubble)
: bubble_(bubble),