mouse: Move Mouse Test into its own window
Per discussion at https://gitlab.gnome.org/GNOME/gnome-control-center/-/issues/2250#note_1631136 Fixes #2250
This commit is contained in:
parent
d8eb1967e9
commit
9e0e6253e4
5 changed files with 28 additions and 20 deletions
|
@ -50,7 +50,6 @@ struct _CcMousePanel
|
||||||
GtkStack *stack;
|
GtkStack *stack;
|
||||||
CcIllustratedRow *tap_to_click_row;
|
CcIllustratedRow *tap_to_click_row;
|
||||||
GtkSwitch *tap_to_click_switch;
|
GtkSwitch *tap_to_click_switch;
|
||||||
GtkButton *test_button;
|
|
||||||
AdwPreferencesGroup *touchpad_group;
|
AdwPreferencesGroup *touchpad_group;
|
||||||
CcSplitRow *touchpad_scroll_direction_row;
|
CcSplitRow *touchpad_scroll_direction_row;
|
||||||
CcSplitRow *touchpad_scroll_method_row;
|
CcSplitRow *touchpad_scroll_method_row;
|
||||||
|
@ -252,6 +251,8 @@ setup_dialog (CcMousePanel *self)
|
||||||
{
|
{
|
||||||
GtkToggleButton *button;
|
GtkToggleButton *button;
|
||||||
|
|
||||||
|
self->mouse_test = CC_MOUSE_TEST (cc_mouse_test_new ());
|
||||||
|
|
||||||
gtk_widget_set_direction (GTK_WIDGET (self->primary_button_box), GTK_TEXT_DIR_LTR);
|
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");
|
self->left_handed = g_settings_get_boolean (self->mouse_settings, "left-handed");
|
||||||
|
@ -386,12 +387,13 @@ cc_mouse_panel_get_help_uri (CcPanel *panel)
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
test_button_toggled_cb (CcMousePanel *self)
|
test_button_clicked_cb (CcMousePanel *self)
|
||||||
{
|
{
|
||||||
if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (self->test_button)))
|
CcShell *shell = cc_panel_get_shell (CC_PANEL (self));
|
||||||
gtk_stack_set_visible_child (self->stack, GTK_WIDGET (self->mouse_test));
|
|
||||||
else
|
gtk_window_set_transient_for (GTK_WINDOW (self->mouse_test),
|
||||||
gtk_stack_set_visible_child (self->stack, GTK_WIDGET (self->preferences));
|
GTK_WINDOW (cc_shell_get_toplevel (shell)));
|
||||||
|
gtk_window_present (GTK_WINDOW (self->mouse_test));
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
|
@ -442,7 +444,6 @@ cc_mouse_panel_class_init (CcMousePanelClass *klass)
|
||||||
gtk_widget_class_bind_template_child (widget_class, CcMousePanel, mouse_group);
|
gtk_widget_class_bind_template_child (widget_class, CcMousePanel, mouse_group);
|
||||||
gtk_widget_class_bind_template_child (widget_class, CcMousePanel, mouse_scroll_direction_row);
|
gtk_widget_class_bind_template_child (widget_class, CcMousePanel, mouse_scroll_direction_row);
|
||||||
gtk_widget_class_bind_template_child (widget_class, CcMousePanel, mouse_speed_scale);
|
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_box);
|
||||||
gtk_widget_class_bind_template_child (widget_class, CcMousePanel, primary_button_left);
|
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, primary_button_right);
|
||||||
|
@ -450,7 +451,6 @@ cc_mouse_panel_class_init (CcMousePanelClass *klass)
|
||||||
gtk_widget_class_bind_template_child (widget_class, CcMousePanel, stack);
|
gtk_widget_class_bind_template_child (widget_class, CcMousePanel, stack);
|
||||||
gtk_widget_class_bind_template_child (widget_class, CcMousePanel, tap_to_click_row);
|
gtk_widget_class_bind_template_child (widget_class, CcMousePanel, tap_to_click_row);
|
||||||
gtk_widget_class_bind_template_child (widget_class, CcMousePanel, tap_to_click_switch);
|
gtk_widget_class_bind_template_child (widget_class, CcMousePanel, tap_to_click_switch);
|
||||||
gtk_widget_class_bind_template_child (widget_class, CcMousePanel, test_button);
|
|
||||||
gtk_widget_class_bind_template_child (widget_class, CcMousePanel, touchpad_group);
|
gtk_widget_class_bind_template_child (widget_class, CcMousePanel, touchpad_group);
|
||||||
gtk_widget_class_bind_template_child (widget_class, CcMousePanel, touchpad_scroll_direction_row);
|
gtk_widget_class_bind_template_child (widget_class, CcMousePanel, touchpad_scroll_direction_row);
|
||||||
gtk_widget_class_bind_template_child (widget_class, CcMousePanel, touchpad_scroll_method_row);
|
gtk_widget_class_bind_template_child (widget_class, CcMousePanel, touchpad_scroll_method_row);
|
||||||
|
@ -459,5 +459,5 @@ cc_mouse_panel_class_init (CcMousePanelClass *klass)
|
||||||
gtk_widget_class_bind_template_child (widget_class, CcMousePanel, touchpad_toggle_switch);
|
gtk_widget_class_bind_template_child (widget_class, CcMousePanel, touchpad_toggle_switch);
|
||||||
|
|
||||||
gtk_widget_class_bind_template_callback (widget_class, on_touchpad_scroll_method_changed_cb);
|
gtk_widget_class_bind_template_callback (widget_class, on_touchpad_scroll_method_changed_cb);
|
||||||
gtk_widget_class_bind_template_callback (widget_class, test_button_toggled_cb);
|
gtk_widget_class_bind_template_callback (widget_class, test_button_clicked_cb);
|
||||||
}
|
}
|
||||||
|
|
|
@ -12,11 +12,11 @@
|
||||||
</object>
|
</object>
|
||||||
</property>
|
</property>
|
||||||
<child type="end">
|
<child type="end">
|
||||||
<object class="GtkToggleButton" id="test_button">
|
<object class="GtkButton" id="test_button">
|
||||||
<property name="use_underline">True</property>
|
<property name="use_underline">True</property>
|
||||||
<property name="valign">center</property>
|
<property name="valign">center</property>
|
||||||
<property name="label" translatable="yes">Test _Settings</property>
|
<property name="label" translatable="yes">Test _Settings</property>
|
||||||
<signal name="toggled" handler="test_button_toggled_cb" object="CcMousePanel" swapped="yes"/>
|
<signal name="clicked" handler="test_button_clicked_cb" object="CcMousePanel" swapped="yes"/>
|
||||||
<style>
|
<style>
|
||||||
<class name="text-button"/>
|
<class name="text-button"/>
|
||||||
</style>
|
</style>
|
||||||
|
@ -265,11 +265,6 @@ Pointer assistance is also known as pointer acceleration.</property>
|
||||||
|
|
||||||
</object>
|
</object>
|
||||||
</child>
|
</child>
|
||||||
|
|
||||||
<child>
|
|
||||||
<object class="CcMouseTest" id="mouse_test">
|
|
||||||
</object>
|
|
||||||
</child>
|
|
||||||
</object>
|
</object>
|
||||||
</child>
|
</child>
|
||||||
</template>
|
</template>
|
||||||
|
|
|
@ -54,7 +54,7 @@ enum
|
||||||
|
|
||||||
struct _CcMouseTest
|
struct _CcMouseTest
|
||||||
{
|
{
|
||||||
AdwBin parent_instance;
|
AdwWindow parent_instance;
|
||||||
|
|
||||||
GtkWidget *button_drawing_area;
|
GtkWidget *button_drawing_area;
|
||||||
GtkWidget *information_label;
|
GtkWidget *information_label;
|
||||||
|
@ -73,7 +73,7 @@ struct _CcMouseTest
|
||||||
gint scroll_image_timeout_id;
|
gint scroll_image_timeout_id;
|
||||||
};
|
};
|
||||||
|
|
||||||
G_DEFINE_TYPE (CcMouseTest, cc_mouse_test, ADW_TYPE_BIN);
|
G_DEFINE_TYPE (CcMouseTest, cc_mouse_test, ADW_TYPE_WINDOW);
|
||||||
|
|
||||||
/* Timeout for the double click test */
|
/* Timeout for the double click test */
|
||||||
|
|
||||||
|
|
|
@ -25,7 +25,7 @@
|
||||||
G_BEGIN_DECLS
|
G_BEGIN_DECLS
|
||||||
|
|
||||||
#define CC_TYPE_MOUSE_TEST (cc_mouse_test_get_type ())
|
#define CC_TYPE_MOUSE_TEST (cc_mouse_test_get_type ())
|
||||||
G_DECLARE_FINAL_TYPE (CcMouseTest, cc_mouse_test, CC, MOUSE_TEST, AdwBin)
|
G_DECLARE_FINAL_TYPE (CcMouseTest, cc_mouse_test, CC, MOUSE_TEST, AdwWindow)
|
||||||
|
|
||||||
GtkWidget *cc_mouse_test_new (void);
|
GtkWidget *cc_mouse_test_new (void);
|
||||||
|
|
||||||
|
|
|
@ -7,12 +7,25 @@
|
||||||
<property name="step_increment">1</property>
|
<property name="step_increment">1</property>
|
||||||
<property name="page_increment">10</property>
|
<property name="page_increment">10</property>
|
||||||
</object>
|
</object>
|
||||||
<template class="CcMouseTest" parent="AdwBin">
|
<template class="CcMouseTest" parent="AdwWindow">
|
||||||
|
<property name="width-request">1024</property>
|
||||||
|
<property name="height-request">600</property>
|
||||||
|
<property name="modal">True</property>
|
||||||
|
<property name="hide-on-close">True</property>
|
||||||
<child>
|
<child>
|
||||||
<object class="GtkBox" id="test_widget">
|
<object class="GtkBox" id="test_widget">
|
||||||
<property name="hexpand">True</property>
|
<property name="hexpand">True</property>
|
||||||
<property name="vexpand">True</property>
|
<property name="vexpand">True</property>
|
||||||
<property name="orientation">vertical</property>
|
<property name="orientation">vertical</property>
|
||||||
|
<child>
|
||||||
|
<object class="AdwHeaderBar">
|
||||||
|
<property name="title-widget">
|
||||||
|
<object class="AdwWindowTitle">
|
||||||
|
<property name="title" translatable="yes">Test Mouse & Touchpad</property>
|
||||||
|
</object>
|
||||||
|
</property>
|
||||||
|
</object>
|
||||||
|
</child>
|
||||||
<child>
|
<child>
|
||||||
<object class="GtkScrolledWindow" id="scrolledwindow">
|
<object class="GtkScrolledWindow" id="scrolledwindow">
|
||||||
<property name="hexpand">True</property>
|
<property name="hexpand">True</property>
|
||||||
|
|
Loading…
Add table
Reference in a new issue