summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFelipe Borges <felipeborges@gnome.org>2021-04-13 10:29:51 +0200
committerFelipe Borges <felipeborges@gnome.org>2021-04-13 13:41:14 +0200
commit44ee3e5fa23b6f2637071f22c5d2a76f7ec4cba3 (patch)
tree7c8fbc0f5af112ae821ebdb4911d5d2d12519e1f
parent983a44bfcabb718496591faa6c42bdd79e53faeb (diff)
downloadgnome-control-center-gnome-40-mouse-button-order-rtl.tar.gz
mouse: Prevent direction change for primary mouse button boxgnome-40-mouse-button-order-rtl
In Right-to-left locales GNOME Settings presents a button on the left with the translated label "Right" and a button on the right with the translated label "Left". These changes prevent the flip of the direction buttons in RTL locales. Fixes #1101
-rw-r--r--panels/mouse/cc-mouse-panel.c4
-rw-r--r--panels/mouse/cc-mouse-panel.ui4
2 files changed, 6 insertions, 2 deletions
diff --git a/panels/mouse/cc-mouse-panel.c b/panels/mouse/cc-mouse-panel.c
index 4f28edaae..2f545e692 100644
--- a/panels/mouse/cc-mouse-panel.c
+++ b/panels/mouse/cc-mouse-panel.c
@@ -44,6 +44,7 @@ struct _CcMousePanel
GtkSwitch *mouse_natural_scrolling_switch;
GtkScale *mouse_speed_scale;
CcMouseTest *mouse_test;
+ GtkBox *primary_button_box;
GtkRadioButton *primary_button_left;
GtkRadioButton *primary_button_right;
GtkScrolledWindow *scrolled_window;
@@ -205,6 +206,8 @@ setup_dialog (CcMousePanel *self)
{
GtkRadioButton *button;
+ gtk_widget_set_direction (GTK_WIDGET (self->primary_button_box), GTK_TEXT_DIR_LTR);
+
self->left_handed = g_settings_get_boolean (self->mouse_settings, "left-handed");
button = self->left_handed ? self->primary_button_right : self->primary_button_left;
gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (button), TRUE);
@@ -425,6 +428,7 @@ cc_mouse_panel_class_init (CcMousePanelClass *klass)
gtk_widget_class_bind_template_child (widget_class, CcMousePanel, mouse_natural_scrolling_switch);
gtk_widget_class_bind_template_child (widget_class, CcMousePanel, mouse_speed_scale);
gtk_widget_class_bind_template_child (widget_class, CcMousePanel, mouse_test);
+ gtk_widget_class_bind_template_child (widget_class, CcMousePanel, primary_button_box);
gtk_widget_class_bind_template_child (widget_class, CcMousePanel, primary_button_left);
gtk_widget_class_bind_template_child (widget_class, CcMousePanel, primary_button_right);
gtk_widget_class_bind_template_child (widget_class, CcMousePanel, scrolled_window);
diff --git a/panels/mouse/cc-mouse-panel.ui b/panels/mouse/cc-mouse-panel.ui
index bcfde6de6..58c7b1046 100644
--- a/panels/mouse/cc-mouse-panel.ui
+++ b/panels/mouse/cc-mouse-panel.ui
@@ -107,11 +107,11 @@
</packing>
</child>
<child>
- <object class="GtkGrid">
+ <object class="GtkBox" id="primary_button_box">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="valign">center</property>
- <property name="column_homogeneous">True</property>
+ <property name="homogeneous">True</property>
<style>
<class name="linked"/>
</style>