window: Connect signals in swapped form
This commit is contained in:
parent
a80fc89f48
commit
bb9fe942d1
2 changed files with 32 additions and 48 deletions
|
@ -143,8 +143,7 @@ show_sidebar (CcWindow *self)
|
|||
}
|
||||
|
||||
static void
|
||||
on_sidebar_activated_cb (CcPanel *panel,
|
||||
CcWindow *self)
|
||||
on_sidebar_activated_cb (CcWindow *self)
|
||||
{
|
||||
show_panel (self);
|
||||
}
|
||||
|
@ -204,7 +203,7 @@ activate_panel (CcWindow *self,
|
|||
/* Ensure we show the panel when when the leaflet is folded and a sidebar
|
||||
* widget's row is activated.
|
||||
*/
|
||||
g_signal_connect_object (self->current_panel, "sidebar-activated", G_CALLBACK (on_sidebar_activated_cb), self, 0);
|
||||
g_signal_connect_object (self->current_panel, "sidebar-activated", G_CALLBACK (on_sidebar_activated_cb), self, G_CONNECT_SWAPPED);
|
||||
|
||||
/* Finish profiling */
|
||||
g_timer_stop (timer);
|
||||
|
@ -310,10 +309,10 @@ update_list_title (CcWindow *self)
|
|||
}
|
||||
|
||||
static void
|
||||
on_row_changed_cb (GtkTreeModel *model,
|
||||
on_row_changed_cb (CcWindow *self,
|
||||
GtkTreePath *path,
|
||||
GtkTreeIter *iter,
|
||||
CcWindow *self)
|
||||
GtkTreeModel *model)
|
||||
{
|
||||
g_autofree gchar *id = NULL;
|
||||
CcPanelVisibility visibility;
|
||||
|
@ -380,7 +379,7 @@ setup_model (CcWindow *shell)
|
|||
}
|
||||
|
||||
/* React to visibility changes */
|
||||
g_signal_connect_object (model, "row-changed", G_CALLBACK (on_row_changed_cb), shell, 0);
|
||||
g_signal_connect_object (model, "row-changed", G_CALLBACK (on_row_changed_cb), shell, G_CONNECT_SWAPPED);
|
||||
}
|
||||
|
||||
static void
|
||||
|
@ -534,19 +533,15 @@ update_fold_state (CcWindow *shell)
|
|||
}
|
||||
|
||||
static void
|
||||
notify_header_visible_child_cb (HdyLeaflet *leaflet,
|
||||
GParamSpec *pspec,
|
||||
CcWindow *shell)
|
||||
notify_header_visible_child_cb (CcWindow *self)
|
||||
{
|
||||
update_fold_state (shell);
|
||||
update_fold_state (self);
|
||||
}
|
||||
|
||||
static void
|
||||
notify_fold_cb (HdyLeaflet *leaflet,
|
||||
GParamSpec *pspec,
|
||||
CcWindow *shell)
|
||||
notify_fold_cb (CcWindow *self)
|
||||
{
|
||||
update_fold_state (shell);
|
||||
update_fold_state (self);
|
||||
}
|
||||
|
||||
static void
|
||||
|
@ -565,9 +560,8 @@ on_main_leaflet_fold_changed_cb (CcWindow *self)
|
|||
}
|
||||
|
||||
static void
|
||||
show_panel_cb (CcPanelList *panel_list,
|
||||
const gchar *panel_id,
|
||||
CcWindow *self)
|
||||
show_panel_cb (CcWindow *self,
|
||||
const gchar *panel_id)
|
||||
{
|
||||
if (!panel_id)
|
||||
return;
|
||||
|
@ -576,8 +570,7 @@ show_panel_cb (CcPanelList *panel_list,
|
|||
}
|
||||
|
||||
static void
|
||||
search_entry_activate_cb (GtkEntry *entry,
|
||||
CcWindow *self)
|
||||
search_entry_activate_cb (CcWindow *self)
|
||||
{
|
||||
gboolean changed;
|
||||
|
||||
|
@ -587,15 +580,13 @@ search_entry_activate_cb (GtkEntry *entry,
|
|||
}
|
||||
|
||||
static void
|
||||
back_button_clicked_cb (GtkButton *button,
|
||||
CcWindow *self)
|
||||
back_button_clicked_cb (CcWindow *self)
|
||||
{
|
||||
show_sidebar (self);
|
||||
}
|
||||
|
||||
static void
|
||||
previous_button_clicked_cb (GtkButton *button,
|
||||
CcWindow *shell)
|
||||
previous_button_clicked_cb (CcWindow *shell)
|
||||
{
|
||||
g_debug ("Num previous panels? %d", g_queue_get_length (shell->previous_panels));
|
||||
|
||||
|
@ -609,9 +600,7 @@ previous_button_clicked_cb (GtkButton *button,
|
|||
}
|
||||
|
||||
static void
|
||||
gdk_window_set_cb (GObject *object,
|
||||
GParamSpec *pspec,
|
||||
CcWindow *self)
|
||||
gdk_window_set_cb (CcWindow *self)
|
||||
{
|
||||
GdkWindow *window;
|
||||
g_autofree gchar *str = NULL;
|
||||
|
@ -629,9 +618,7 @@ gdk_window_set_cb (GObject *object,
|
|||
}
|
||||
|
||||
static gboolean
|
||||
window_map_event_cb (GtkWidget *widget,
|
||||
GdkEvent *event,
|
||||
CcWindow *self)
|
||||
window_map_event_cb (CcWindow *self)
|
||||
{
|
||||
/* If focus ends up in a category icon view one of the items is
|
||||
* immediately selected which looks odd when we are starting up, so
|
||||
|
@ -641,9 +628,8 @@ window_map_event_cb (GtkWidget *widget,
|
|||
}
|
||||
|
||||
static gboolean
|
||||
window_key_press_event_cb (GtkWidget *win,
|
||||
GdkEventKey *event,
|
||||
CcWindow *self)
|
||||
window_key_press_event_cb (CcWindow *self,
|
||||
GdkEventKey *event)
|
||||
{
|
||||
GdkModifierType state;
|
||||
CcPanelListView view;
|
||||
|
@ -653,11 +639,11 @@ window_key_press_event_cb (GtkWidget *win,
|
|||
|
||||
retval = GDK_EVENT_PROPAGATE;
|
||||
state = event->state;
|
||||
keymap = gdk_keymap_get_for_display (gtk_widget_get_display (win));
|
||||
keymap = gdk_keymap_get_for_display (gtk_widget_get_display (GTK_WIDGET (self)));
|
||||
gdk_keymap_add_virtual_modifiers (keymap, &state);
|
||||
|
||||
state = state & gtk_accelerator_get_default_mod_mask ();
|
||||
is_rtl = gtk_widget_get_direction (win) == GTK_TEXT_DIR_RTL;
|
||||
is_rtl = gtk_widget_get_direction (GTK_WIDGET (self)) == GTK_TEXT_DIR_RTL;
|
||||
view = cc_panel_list_get_view (self->panel_list);
|
||||
|
||||
/* The search only happens when we're in the MAIN view */
|
||||
|
@ -710,14 +696,12 @@ window_key_press_event_cb (GtkWidget *win,
|
|||
}
|
||||
|
||||
static void
|
||||
on_development_warning_dialog_responded_cb (GtkWidget *dialog,
|
||||
gint response,
|
||||
CcWindow *self)
|
||||
on_development_warning_dialog_responded_cb (CcWindow *self)
|
||||
{
|
||||
g_debug ("Disabling development build warning dialog");
|
||||
g_settings_set_boolean (self->settings, "show-development-warning", FALSE);
|
||||
|
||||
gtk_widget_hide (dialog);
|
||||
gtk_widget_hide (GTK_WIDGET (self->development_warning_dialog));
|
||||
}
|
||||
|
||||
/* CcShell implementation */
|
||||
|
|
|
@ -6,9 +6,9 @@
|
|||
<property name="window_position">center</property>
|
||||
<property name="default-width">980</property>
|
||||
<property name="default-height">640</property>
|
||||
<signal name="notify::window" handler="gdk_window_set_cb" object="CcWindow" swapped="no" />
|
||||
<signal name="map-event" handler="window_map_event_cb" object="CcWindow" swapped="no" />
|
||||
<signal name="key-press-event" handler="window_key_press_event_cb" object="CcWindow" swapped="no" after="yes" />
|
||||
<signal name="notify::window" handler="gdk_window_set_cb" object="CcWindow" swapped="yes" />
|
||||
<signal name="map-event" handler="window_map_event_cb" object="CcWindow" swapped="yes" />
|
||||
<signal name="key-press-event" handler="window_key_press_event_cb" object="CcWindow" swapped="yes" after="yes" />
|
||||
<child>
|
||||
<object class="HdyLeaflet" id="main_leaflet">
|
||||
<property name="visible">True</property>
|
||||
|
@ -38,7 +38,7 @@
|
|||
<property name="primary_icon_name">edit-find-symbolic</property>
|
||||
<property name="primary_icon_activatable">False</property>
|
||||
<property name="primary_icon_sensitive">False</property>
|
||||
<signal name="activate" handler="search_entry_activate_cb" object="CcWindow" swapped="no" />
|
||||
<signal name="activate" handler="search_entry_activate_cb" object="CcWindow" swapped="yes" />
|
||||
<signal name="notify::text" handler="update_list_title" object="CcWindow" swapped="yes" />
|
||||
</object>
|
||||
</child>
|
||||
|
@ -65,7 +65,7 @@
|
|||
<property name="can_focus">True</property>
|
||||
<property name="search-mode" bind-source="search_bar" bind-property="search-mode-enabled" bind-flags="bidirectional" />
|
||||
<property name="search-query" bind-source="search_entry" bind-property="text" bind-flags="default" />
|
||||
<signal name="show-panel" handler="show_panel_cb" object="CcWindow" swapped="no" />
|
||||
<signal name="show-panel" handler="show_panel_cb" object="CcWindow" swapped="yes" />
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
|
@ -115,8 +115,8 @@
|
|||
<property name="mode-transition-duration" bind-source="main_leaflet" bind-property="mode-transition-duration" bind-flags="bidirectional|sync-create"/>
|
||||
<property name="child-transition-type" bind-source="main_leaflet" bind-property="child-transition-type" bind-flags="bidirectional|sync-create"/>
|
||||
<property name="child-transition-duration" bind-source="main_leaflet" bind-property="child-transition-duration" bind-flags="bidirectional|sync-create"/>
|
||||
<signal name="notify::visible-child" handler="notify_header_visible_child_cb" swapped="no"/>
|
||||
<signal name="notify::fold" handler="notify_fold_cb" object="CcWindow" after="yes" swapped="no"/>
|
||||
<signal name="notify::visible-child" handler="notify_header_visible_child_cb" swapped="yes"/>
|
||||
<signal name="notify::fold" handler="notify_fold_cb" object="CcWindow" after="yes" swapped="yes"/>
|
||||
<child>
|
||||
<object class="GtkHeaderBar" id="header">
|
||||
<property name="visible">True</property>
|
||||
|
@ -127,7 +127,7 @@
|
|||
<object class="GtkButton" id="previous_button">
|
||||
<property name="can_focus">True</property>
|
||||
<property name="receives_default">True</property>
|
||||
<signal name="clicked" handler="previous_button_clicked_cb" object="CcWindow" swapped="no" />
|
||||
<signal name="clicked" handler="previous_button_clicked_cb" object="CcWindow" swapped="yes" />
|
||||
<child>
|
||||
<object class="GtkImage">
|
||||
<property name="visible">True</property>
|
||||
|
@ -223,7 +223,7 @@
|
|||
<property name="receives_default">False</property>
|
||||
<property name="valign">center</property>
|
||||
<property name="use-underline">True</property>
|
||||
<signal name="clicked" handler="back_button_clicked_cb" object="CcWindow" swapped="no" />
|
||||
<signal name="clicked" handler="back_button_clicked_cb" object="CcWindow" swapped="yes" />
|
||||
<style>
|
||||
<class name="image-button"/>
|
||||
</style>
|
||||
|
@ -318,7 +318,7 @@
|
|||
<property name="buttons">ok</property>
|
||||
<property name="text" translatable="yes">Warning: Development Version</property>
|
||||
<property name="secondary-text" translatable="yes">This version of Settings should only be used for development purposes. You may experience incorrect system behavior, data loss, and other unexpected issues. </property>
|
||||
<signal name="response" handler="on_development_warning_dialog_responded_cb" object="CcWindow" swapped="no" />
|
||||
<signal name="response" handler="on_development_warning_dialog_responded_cb" object="CcWindow" swapped="yes" />
|
||||
</object>
|
||||
|
||||
<menu id="primary_menu">
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue