[nautilus/wip/antoniof/use-gtk-widget-dispose-template] WIP general: Use gtk_widget_dispose_template




commit b0aa092db794f939690a49fe7d5d2693e20fb3c7
Author: António Fernandes <antoniof gnome org>
Date:   Sat Sep 3 20:15:41 2022 +0100

    WIP general: Use gtk_widget_dispose_template
    
    Resolves https://gitlab.gnome.org/GNOME/nautilus/-/issues/2418

 src/gtk/nautilusgtkplacesview.c     |  2 ++
 src/gtk/nautilusgtkplacesviewrow.c  | 11 +++++++++++
 src/gtk/nautilusgtksidebarrow.c     | 11 +++++++++++
 src/nautilus-app-chooser.c          | 11 +++++++++++
 src/nautilus-batch-rename-dialog.c  | 11 +++++++++++
 src/nautilus-column-chooser.c       | 11 +++++++++++
 src/nautilus-file-conflict-dialog.c | 11 +++++++++++
 src/nautilus-files-view.c           |  2 ++
 src/nautilus-grid-cell.c            | 11 +++++++++++
 src/nautilus-history-controls.c     |  2 ++
 src/nautilus-name-cell.c            | 11 +++++++++++
 src/nautilus-progress-indicator.c   | 11 +++++++++++
 src/nautilus-progress-info-widget.c |  2 ++
 src/nautilus-properties-window.c    |  2 ++
 src/nautilus-search-popover.c       | 10 ++++++++++
 src/nautilus-toolbar.c              |  2 ++
 src/nautilus-view-controls.c        | 11 +++++++++++
 src/nautilus-window.c               |  2 ++
 18 files changed, 134 insertions(+)
---
diff --git a/src/gtk/nautilusgtkplacesview.c b/src/gtk/nautilusgtkplacesview.c
index 0d062c9ee..f8708c043 100644
--- a/src/gtk/nautilusgtkplacesview.c
+++ b/src/gtk/nautilusgtkplacesview.c
@@ -435,6 +435,8 @@ nautilus_gtk_places_view_dispose (GObject *object)
   g_cancellable_cancel (view->networks_fetching_cancellable);
   g_clear_pointer (&view->popup_menu, gtk_widget_unparent);
 
+  gtk_widget_dispose_template (GTK_WIDGET (view), NAUTILUS_TYPE_GTK_PLACES_VIEW);
+
   G_OBJECT_CLASS (nautilus_gtk_places_view_parent_class)->dispose (object);
 }
 
diff --git a/src/gtk/nautilusgtkplacesviewrow.c b/src/gtk/nautilusgtkplacesviewrow.c
index 64d889659..84b9e146c 100644
--- a/src/gtk/nautilusgtkplacesviewrow.c
+++ b/src/gtk/nautilusgtkplacesviewrow.c
@@ -200,6 +200,16 @@ measure_available_space (NautilusGtkPlacesViewRow *row)
     }
 }
 
+static void
+nautilus_gtk_places_view_row_dispose (GObject *object)
+{
+  NautilusGtkPlacesViewRow *self = NAUTILUS_GTK_PLACES_VIEW_ROW (object);
+
+  gtk_widget_dispose_template (GTK_WIDGET (self), NAUTILUS_TYPE_GTK_PLACES_VIEW_ROW);
+
+  G_OBJECT_CLASS (nautilus_gtk_places_view_row_parent_class)->dispose (object);
+}
+
 static void
 nautilus_gtk_places_view_row_finalize (GObject *object)
 {
@@ -334,6 +344,7 @@ nautilus_gtk_places_view_row_class_init (NautilusGtkPlacesViewRowClass *klass)
   GObjectClass *object_class = G_OBJECT_CLASS (klass);
   GtkWidgetClass *widget_class = GTK_WIDGET_CLASS (klass);
 
+  object_class->dispose = nautilus_gtk_places_view_row_dispose;
   object_class->finalize = nautilus_gtk_places_view_row_finalize;
   object_class->get_property = nautilus_gtk_places_view_row_get_property;
   object_class->set_property = nautilus_gtk_places_view_row_set_property;
diff --git a/src/gtk/nautilusgtksidebarrow.c b/src/gtk/nautilusgtksidebarrow.c
index 9b6ebafee..d6ea6c0e7 100644
--- a/src/gtk/nautilusgtksidebarrow.c
+++ b/src/gtk/nautilusgtksidebarrow.c
@@ -445,6 +445,16 @@ nautilus_gtk_sidebar_row_set_end_icon (NautilusGtkSidebarRow *self,
     }
 }
 
+static void
+nautilus_gtk_sidebar_row_dispose (GObject *object)
+{
+  NautilusGtkSidebarRow *self = NAUTILUS_GTK_SIDEBAR_ROW (object);
+
+  gtk_widget_dispose_template (GTK_WIDGET (self), NAUTILUS_TYPE_GTK_SIDEBAR_ROW);
+
+  G_OBJECT_CLASS (nautilus_gtk_sidebar_row_parent_class)->dispose (object);
+}
+
 static void
 nautilus_gtk_sidebar_row_finalize (GObject *object)
 {
@@ -490,6 +500,7 @@ nautilus_gtk_sidebar_row_class_init (NautilusGtkSidebarRowClass *klass)
   object_class->get_property = nautilus_gtk_sidebar_row_get_property;
   object_class->set_property = nautilus_gtk_sidebar_row_set_property;
   object_class->finalize = nautilus_gtk_sidebar_row_finalize;
+  object_class->dispose = nautilus_gtk_sidebar_row_dispose;
 
   properties [PROP_SIDEBAR] =
     g_param_spec_object ("sidebar",
diff --git a/src/nautilus-app-chooser.c b/src/nautilus-app-chooser.c
index e15abc3ae..b2365b603 100644
--- a/src/nautilus-app-chooser.c
+++ b/src/nautilus-app-chooser.c
@@ -231,6 +231,16 @@ nautilus_app_chooser_constructed (GObject *object)
     }
 }
 
+static void
+nautilus_app_chooser_dispose (GObject *object)
+{
+    NautilusAppChooser *self = (NautilusAppChooser *) object;
+
+    gtk_widget_dispose_template (GTK_WIDGET (self), NAUTILUS_TYPE_APP_CHOOSER);
+
+    G_OBJECT_CLASS (nautilus_app_chooser_parent_class)->dispose (object);
+}
+
 static void
 nautilus_app_chooser_finalize (GObject *object)
 {
@@ -248,6 +258,7 @@ nautilus_app_chooser_class_init (NautilusAppChooserClass *klass)
     GObjectClass *object_class = G_OBJECT_CLASS (klass);
     GtkWidgetClass *widget_class = GTK_WIDGET_CLASS (klass);
 
+    object_class->dispose = nautilus_app_chooser_dispose;
     object_class->finalize = nautilus_app_chooser_finalize;
     object_class->constructed = nautilus_app_chooser_constructed;
     object_class->set_property = nautilus_app_chooser_set_property;
diff --git a/src/nautilus-batch-rename-dialog.c b/src/nautilus-batch-rename-dialog.c
index 14f142be5..0e79ef576 100644
--- a/src/nautilus-batch-rename-dialog.c
+++ b/src/nautilus-batch-rename-dialog.c
@@ -1755,6 +1755,16 @@ file_names_widget_entry_on_changed (NautilusBatchRenameDialog *self)
     update_display_text (self);
 }
 
+static void
+nautilus_batch_rename_dialog_dispose (GObject *object)
+{
+    NautilusBatchRenameDialog *dialog = NAUTILUS_BATCH_RENAME_DIALOG (object);
+
+    gtk_widget_dispose_template (GTK_WIDGET (dialog), NAUTILUS_TYPE_BATCH_RENAME_DIALOG);
+
+    G_OBJECT_CLASS (nautilus_batch_rename_dialog_parent_class)->dispose (object);
+}
+
 static void
 nautilus_batch_rename_dialog_finalize (GObject *object)
 {
@@ -1822,6 +1832,7 @@ nautilus_batch_rename_dialog_class_init (NautilusBatchRenameDialogClass *klass)
     oclass = G_OBJECT_CLASS (klass);
 
     oclass->finalize = nautilus_batch_rename_dialog_finalize;
+    oclass->dispose = nautilus_batch_rename_dialog_dispose;
 
     gtk_widget_class_set_template_from_resource (widget_class, 
"/org/gnome/nautilus/ui/nautilus-batch-rename-dialog.ui");
 
diff --git a/src/nautilus-column-chooser.c b/src/nautilus-column-chooser.c
index 23aa5af5c..3dc6413d9 100644
--- a/src/nautilus-column-chooser.c
+++ b/src/nautilus-column-chooser.c
@@ -524,6 +524,16 @@ nautilus_column_chooser_get_settings (NautilusColumnChooser   *chooser,
     *column_order = get_column_names (chooser, FALSE);
 }
 
+static void
+nautilus_column_chooser_dispose (GObject *object)
+{
+    NautilusColumnChooser *self = NAUTILUS_COLUMN_CHOOSER (object);
+
+    gtk_widget_dispose_template (GTK_WIDGET (self), NAUTILUS_TYPE_COLUMN_CHOOSER);
+
+    G_OBJECT_CLASS (nautilus_column_chooser_parent_class)->dispose (object);
+}
+
 static void
 nautilus_column_chooser_class_init (NautilusColumnChooserClass *chooser_class)
 {
@@ -535,6 +545,7 @@ nautilus_column_chooser_class_init (NautilusColumnChooserClass *chooser_class)
 
     oclass->set_property = nautilus_column_chooser_set_property;
     oclass->constructed = nautilus_column_chooser_constructed;
+    oclass->dispose = nautilus_column_chooser_dispose;
 
     gtk_widget_class_set_template_from_resource (widget_class, 
"/org/gnome/nautilus/ui/nautilus-column-chooser.ui");
     gtk_widget_class_bind_template_child (widget_class, NautilusColumnChooser, view);
diff --git a/src/nautilus-file-conflict-dialog.c b/src/nautilus-file-conflict-dialog.c
index f7c3cc702..b957d64c5 100644
--- a/src/nautilus-file-conflict-dialog.c
+++ b/src/nautilus-file-conflict-dialog.c
@@ -222,6 +222,16 @@ nautilus_file_conflict_dialog_init (NautilusFileConflictDialog *fcd)
     gtk_widget_init_template (GTK_WIDGET (fcd));
 }
 
+static void
+nautilus_file_conflict_dialog_dispose (GObject *self)
+{
+    NautilusFileConflictDialog *dialog = NAUTILUS_FILE_CONFLICT_DIALOG (self);
+
+    gtk_widget_dispose_template (GTK_WIDGET (self), NAUTILUS_TYPE_FILE_CONFLICT_DIALOG);
+
+    G_OBJECT_CLASS (nautilus_file_conflict_dialog_parent_class)->dispose (self);
+}
+
 static void
 do_finalize (GObject *self)
 {
@@ -258,6 +268,7 @@ nautilus_file_conflict_dialog_class_init (NautilusFileConflictDialogClass *klass
     gtk_widget_class_bind_template_callback (widget_class, reset_button_clicked_cb);
 
     G_OBJECT_CLASS (klass)->finalize = do_finalize;
+    G_OBJECT_CLASS (klass)->dispose = nautilus_file_conflict_dialog_dispose;
 }
 
 static gboolean
diff --git a/src/nautilus-files-view.c b/src/nautilus-files-view.c
index f19fab712..62a0b6beb 100644
--- a/src/nautilus-files-view.c
+++ b/src/nautilus-files-view.c
@@ -3356,6 +3356,8 @@ nautilus_files_view_dispose (GObject *object)
     g_clear_object (&priv->search_query);
     g_clear_object (&priv->location);
 
+    gtk_widget_dispose_template (GTK_WIDGET (view), NAUTILUS_TYPE_FILES_VIEW);
+
     G_OBJECT_CLASS (nautilus_files_view_parent_class)->dispose (object);
 }
 
diff --git a/src/nautilus-grid-cell.c b/src/nautilus-grid-cell.c
index bf19a36a1..0b2855ee8 100644
--- a/src/nautilus-grid-cell.c
+++ b/src/nautilus-grid-cell.c
@@ -167,6 +167,16 @@ on_item_is_cut_changed (NautilusGridCell *self)
     }
 }
 
+static void
+nautilus_grid_cell_dispose (GObject *object)
+{
+    NautilusGridCell *self = (NautilusGridCell *) object;
+
+    gtk_widget_dispose_template (GTK_WIDGET (self), NAUTILUS_TYPE_GRID_CELL);
+
+    G_OBJECT_CLASS (nautilus_grid_cell_parent_class)->dispose (object);
+}
+
 static void
 finalize (GObject *object)
 {
@@ -183,6 +193,7 @@ nautilus_grid_cell_class_init (NautilusGridCellClass *klass)
     GtkWidgetClass *widget_class = GTK_WIDGET_CLASS (klass);
 
     object_class->finalize = finalize;
+    object_class->dispose = nautilus_grid_cell_dispose;
 
     gtk_widget_class_set_template_from_resource (widget_class, 
"/org/gnome/nautilus/ui/nautilus-grid-cell.ui");
 
diff --git a/src/nautilus-history-controls.c b/src/nautilus-history-controls.c
index 8b14cd63c..7e8995072 100644
--- a/src/nautilus-history-controls.c
+++ b/src/nautilus-history-controls.c
@@ -209,6 +209,8 @@ nautilus_history_controls_dispose (GObject *object)
     g_clear_pointer (&self->back_menu, gtk_widget_unparent);
     g_clear_pointer (&self->forward_menu, gtk_widget_unparent);
 
+    gtk_widget_dispose_template (GTK_WIDGET (self), NAUTILUS_TYPE_HISTORY_CONTROLS);
+
     G_OBJECT_CLASS (nautilus_history_controls_parent_class)->dispose (object);
 }
 
diff --git a/src/nautilus-name-cell.c b/src/nautilus-name-cell.c
index a58415f9e..62650307d 100644
--- a/src/nautilus-name-cell.c
+++ b/src/nautilus-name-cell.c
@@ -275,6 +275,16 @@ nautilus_name_cell_init (NautilusNameCell *self)
                             G_BINDING_SYNC_CREATE);
 }
 
+static void
+nautilus_name_cell_dispose (GObject *object)
+{
+    NautilusNameCell *self = (NautilusNameCell *) object;
+
+    gtk_widget_dispose_template (GTK_WIDGET (self), NAUTILUS_TYPE_NAME_CELL);
+
+    G_OBJECT_CLASS (nautilus_name_cell_parent_class)->dispose (object);
+}
+
 static void
 nautilus_name_cell_finalize (GObject *object)
 {
@@ -292,6 +302,7 @@ nautilus_name_cell_class_init (NautilusNameCellClass *klass)
     GtkWidgetClass *widget_class = GTK_WIDGET_CLASS (klass);
 
     object_class->finalize = nautilus_name_cell_finalize;
+    object_class->dispose = nautilus_name_cell_dispose;
 
     gtk_widget_class_set_template_from_resource (widget_class, 
"/org/gnome/nautilus/ui/nautilus-name-cell.ui");
 
diff --git a/src/nautilus-progress-indicator.c b/src/nautilus-progress-indicator.c
index ce857047c..738c0b5f4 100644
--- a/src/nautilus-progress-indicator.c
+++ b/src/nautilus-progress-indicator.c
@@ -499,6 +499,16 @@ nautilus_progress_indicator_constructed (GObject *object)
                               (GCallback) gtk_widget_grab_focus, self);
 }
 
+static void
+nautilus_progress_indicator_dispose (GObject *obj)
+{
+    NautilusProgressIndicator *self = NAUTILUS_PROGRESS_INDICATOR (obj);
+
+    gtk_widget_dispose_template (GTK_WIDGET (self), NAUTILUS_TYPE_PROGRESS_INDICATOR);
+
+    G_OBJECT_CLASS (nautilus_progress_indicator_parent_class)->dispose (obj);
+}
+
 static void
 nautilus_progress_indicator_finalize (GObject *obj)
 {
@@ -523,6 +533,7 @@ nautilus_progress_indicator_class_init (NautilusProgressIndicatorClass *klass)
     GtkWidgetClass *widget_class = GTK_WIDGET_CLASS (klass);
 
     object_class->constructed = nautilus_progress_indicator_constructed;
+    object_class->dispose = nautilus_progress_indicator_dispose;
     object_class->finalize = nautilus_progress_indicator_finalize;
 
     gtk_widget_class_set_template_from_resource (widget_class,
diff --git a/src/nautilus-progress-info-widget.c b/src/nautilus-progress-info-widget.c
index b5be930c9..31cd3bd3c 100644
--- a/src/nautilus-progress-info-widget.c
+++ b/src/nautilus-progress-info-widget.c
@@ -112,6 +112,8 @@ nautilus_progress_info_widget_dispose (GObject *obj)
     }
     g_clear_object (&self->priv->info);
 
+    gtk_widget_dispose_template (GTK_WIDGET (self), NAUTILUS_TYPE_PROGRESS_INFO_WIDGET);
+
     G_OBJECT_CLASS (nautilus_progress_info_widget_parent_class)->dispose (obj);
 }
 
diff --git a/src/nautilus-properties-window.c b/src/nautilus-properties-window.c
index 1d823edd7..af02fe3e6 100644
--- a/src/nautilus-properties-window.c
+++ b/src/nautilus-properties-window.c
@@ -4167,6 +4167,8 @@ real_dispose (GObject *object)
     g_clear_handle_id (&self->update_directory_contents_timeout_id, g_source_remove);
     g_clear_handle_id (&self->update_files_timeout_id, g_source_remove);
 
+    gtk_widget_dispose_template (GTK_WIDGET (self), NAUTILUS_TYPE_PROPERTIES_WINDOW);
+
     G_OBJECT_CLASS (nautilus_properties_window_parent_class)->dispose (object);
 }
 
diff --git a/src/nautilus-search-popover.c b/src/nautilus-search-popover.c
index 57561f541..503799a6c 100644
--- a/src/nautilus-search-popover.c
+++ b/src/nautilus-search-popover.c
@@ -818,6 +818,15 @@ nautilus_search_popover_set_property (GObject      *object,
     }
 }
 
+static void
+nautilus_search_popover_dispose (GObject *obj)
+{
+    NautilusSearchPopover *self = NAUTILUS_SEARCH_POPOVER (obj);
+
+    gtk_widget_dispose_template (GTK_WIDGET (self), NAUTILUS_TYPE_SEARCH_POPOVER);
+
+    G_OBJECT_CLASS (nautilus_search_popover_parent_class)->dispose (obj);
+}
 
 static void
 nautilus_search_popover_class_init (NautilusSearchPopoverClass *klass)
@@ -826,6 +835,7 @@ nautilus_search_popover_class_init (NautilusSearchPopoverClass *klass)
     GtkWidgetClass *widget_class = GTK_WIDGET_CLASS (klass);
     GObjectClass *object_class = G_OBJECT_CLASS (klass);
 
+    object_class->dispose = nautilus_search_popover_dispose;
     object_class->get_property = nautilus_search_popover_get_property;
     object_class->set_property = nautilus_search_popover_set_property;
 
diff --git a/src/nautilus-toolbar.c b/src/nautilus-toolbar.c
index aad0fd3d0..e9bc01354 100644
--- a/src/nautilus-toolbar.c
+++ b/src/nautilus-toolbar.c
@@ -412,6 +412,8 @@ nautilus_toolbar_dispose (GObject *object)
 
     g_clear_pointer (&self->search_binding, g_binding_unbind);
 
+    gtk_widget_dispose_template (GTK_WIDGET (self), NAUTILUS_TYPE_TOOLBAR);
+
     G_OBJECT_CLASS (nautilus_toolbar_parent_class)->dispose (object);
 }
 
diff --git a/src/nautilus-view-controls.c b/src/nautilus-view-controls.c
index bd8e6d761..25c07faf5 100644
--- a/src/nautilus-view-controls.c
+++ b/src/nautilus-view-controls.c
@@ -143,6 +143,16 @@ nautilus_view_controls_set_property (GObject      *object,
     }
 }
 
+static void
+nautilus_view_controls_dispose (GObject *obj)
+{
+    NautilusViewControls *self = NAUTILUS_VIEW_CONTROLS (obj);
+
+    gtk_widget_dispose_template (GTK_WIDGET (self), NAUTILUS_TYPE_VIEW_CONTROLS);
+
+    G_OBJECT_CLASS (nautilus_view_controls_parent_class)->dispose (obj);
+}
+
 static void
 nautilus_view_controls_finalize (GObject *obj)
 {
@@ -163,6 +173,7 @@ nautilus_view_controls_class_init (NautilusViewControlsClass *klass)
     GObjectClass *object_class = G_OBJECT_CLASS (klass);
     GtkWidgetClass *widget_class = GTK_WIDGET_CLASS (klass);
 
+    object_class->dispose = nautilus_view_controls_dispose;
     object_class->finalize = nautilus_view_controls_finalize;
     object_class->get_property = nautilus_view_controls_get_property;
     object_class->set_property = nautilus_view_controls_set_property;
diff --git a/src/nautilus-window.c b/src/nautilus-window.c
index 9cccc3c18..5d810b1f3 100644
--- a/src/nautilus-window.c
+++ b/src/nautilus-window.c
@@ -1613,6 +1613,8 @@ nautilus_window_dispose (GObject *object)
 
     nautilus_window_unexport_handle (window);
 
+    gtk_widget_dispose_template (GTK_WIDGET (window), NAUTILUS_TYPE_WINDOW);
+
     G_OBJECT_CLASS (nautilus_window_parent_class)->dispose (object);
 }
 


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]