From 1f34dd67dd7eddf3c897e385bf252075f71a8581 Mon Sep 17 00:00:00 2001 From: Robert Ancell Date: Mon, 12 Aug 2019 16:18:46 +1200 Subject: [PATCH] info: Split removable-media into its own panel --- panels/info/info.gresource.xml | 1 - panels/info/meson.build | 44 +++----- panels/meson.build | 1 + .../cc-removable-media-panel.c} | 105 +++++++++--------- .../cc-removable-media-panel.h} | 10 +- .../cc-removable-media-panel.ui} | 2 +- .../gnome-removable-media-panel.desktop.in.in | 0 panels/removable-media/meson.build | 46 ++++++++ .../removable-media.gresource.xml | 6 + po/POTFILES.in | 6 +- shell/cc-panel-loader.c | 4 +- 11 files changed, 134 insertions(+), 91 deletions(-) rename panels/{info/cc-info-removable-media-panel.c => removable-media/cc-removable-media-panel.c} (82%) rename panels/{info/cc-info-removable-media-panel.h => removable-media/cc-removable-media-panel.h} (71%) rename panels/{info/cc-info-removable-media-panel.ui => removable-media/cc-removable-media-panel.ui} (99%) rename panels/{info => removable-media}/gnome-removable-media-panel.desktop.in.in (100%) create mode 100644 panels/removable-media/meson.build create mode 100644 panels/removable-media/removable-media.gresource.xml diff --git a/panels/info/info.gresource.xml b/panels/info/info.gresource.xml index 98af3f6ed..ac9d4d2a9 100644 --- a/panels/info/info.gresource.xml +++ b/panels/info/info.gresource.xml @@ -2,7 +2,6 @@ cc-info-overview-panel.ui - cc-info-removable-media-panel.ui GnomeLogoVerticalMedium.svg diff --git a/panels/info/meson.build b/panels/info/meson.build index 74e9937b0..2e54c9079 100644 --- a/panels/info/meson.build +++ b/panels/info/meson.build @@ -1,29 +1,24 @@ -panel_names = [ - 'info-overview', - 'removable-media' -] +desktop = 'gnome-@0@-panel.desktop'.format('info-overview') -panels_list += panel_names +panels_list += 'info-overview' -foreach name: panel_names - desktop = 'gnome-' + name + '-panel.desktop' +desktop = 'gnome-info-overview-panel.desktop' - desktop_in = configure_file( - input: desktop + '.in.in', - output: desktop + '.in', - configuration: desktop_conf - ) +desktop_in = configure_file( + input: desktop + '.in.in', + output: desktop + '.in', + configuration: desktop_conf +) - i18n.merge_file( - desktop, - type: 'desktop', - input: desktop_in, - output: desktop, - po_dir: po_dir, - install: true, - install_dir: control_center_desktopdir - ) -endforeach +i18n.merge_file( + desktop, + type: 'desktop', + input: desktop_in, + output: desktop, + po_dir: po_dir, + install: true, + install_dir: control_center_desktopdir +) cflags += [ '-DBINDIR="@0@"'.format(control_center_bindir), @@ -33,14 +28,12 @@ cflags += [ sources = files( 'cc-info-overview-panel.c', - 'cc-info-removable-media-panel.c', 'info-cleanup.c' ) resource_data = files( 'GnomeLogoVerticalMedium.svg', - 'cc-info-overview-panel.ui', - 'cc-info-removable-media-panel.ui' + 'cc-info-overview-panel.ui' ) sources += gnome.compile_resources( @@ -52,7 +45,6 @@ sources += gnome.compile_resources( ) deps = common_deps + [ - polkit_gobject_dep, dependency('udisks2', version: '>= 2.1.8'), dependency('libgtop-2.0') ] diff --git a/panels/meson.build b/panels/meson.build index 98ea94b9e..3e7b9696d 100644 --- a/panels/meson.build +++ b/panels/meson.build @@ -16,6 +16,7 @@ panels = [ 'printers', 'privacy', 'region', + 'removable-media', 'search', 'sharing', 'sound', diff --git a/panels/info/cc-info-removable-media-panel.c b/panels/removable-media/cc-removable-media-panel.c similarity index 82% rename from panels/info/cc-info-removable-media-panel.c rename to panels/removable-media/cc-removable-media-panel.c index 0ea0f5869..43185b1a2 100644 --- a/panels/info/cc-info-removable-media-panel.c +++ b/panels/removable-media/cc-removable-media-panel.c @@ -21,8 +21,7 @@ #include -#include "cc-info-resources.h" -#include "info-cleanup.h" +#include "cc-removable-media-resources.h" #include #include @@ -42,7 +41,7 @@ #include #endif -#include "cc-info-removable-media-panel.h" +#include "cc-removable-media-panel.h" /* Autorun options */ @@ -57,7 +56,7 @@ #define MEDIA_HANDLING_SCHEMA "org.gnome.desktop.media-handling" -struct _CcInfoRemovableMediaPanel +struct _CcRemovableMediaPanel { CcPanel parent_instance; @@ -82,7 +81,7 @@ struct _CcInfoRemovableMediaPanel }; -G_DEFINE_TYPE (CcInfoRemovableMediaPanel, cc_info_removable_media_panel, CC_TYPE_PANEL) +G_DEFINE_TYPE (CcRemovableMediaPanel, cc_removable_media_panel, CC_TYPE_PANEL) static void ellipsize_cell_layout (GtkCellLayout *cell_layout) @@ -158,11 +157,11 @@ media_panel_g_strv_find (char **strv, } static void -autorun_get_preferences (CcInfoRemovableMediaPanel *self, - const char *x_content_type, - gboolean *pref_start_app, - gboolean *pref_ignore, - gboolean *pref_open_folder) +autorun_get_preferences (CcRemovableMediaPanel *self, + const char *x_content_type, + gboolean *pref_start_app, + gboolean *pref_ignore, + gboolean *pref_open_folder) { g_auto(GStrv) x_content_start_app = NULL; g_auto(GStrv) x_content_ignore = NULL; @@ -193,11 +192,11 @@ autorun_get_preferences (CcInfoRemovableMediaPanel *self, } static void -autorun_set_preferences (CcInfoRemovableMediaPanel *self, - const char *x_content_type, - gboolean pref_start_app, - gboolean pref_ignore, - gboolean pref_open_folder) +autorun_set_preferences (CcRemovableMediaPanel *self, + const char *x_content_type, + gboolean pref_start_app, + gboolean pref_ignore, + gboolean pref_open_folder) { g_auto(GStrv) x_content_start_app = NULL; g_auto(GStrv) x_content_ignore = NULL; @@ -240,7 +239,7 @@ custom_item_activated_cb (GtkAppChooserButton *button, const gchar *item, gpointer user_data) { - CcInfoRemovableMediaPanel *self = user_data; + CcRemovableMediaPanel *self = user_data; g_autofree gchar *content_type = NULL; content_type = gtk_app_chooser_get_content_type (GTK_APP_CHOOSER (button)); @@ -261,7 +260,7 @@ static void combo_box_changed_cb (GtkComboBox *combo_box, gpointer user_data) { - CcInfoRemovableMediaPanel *self = user_data; + CcRemovableMediaPanel *self = user_data; g_autoptr(GAppInfo) info = NULL; g_autofree gchar *content_type = NULL; @@ -277,9 +276,9 @@ combo_box_changed_cb (GtkComboBox *combo_box, } static void -prepare_combo_box (CcInfoRemovableMediaPanel *self, - GtkWidget *combo_box, - const gchar *heading) +prepare_combo_box (CcRemovableMediaPanel *self, + GtkWidget *combo_box, + const gchar *heading) { GtkAppChooserButton *app_chooser = GTK_APP_CHOOSER_BUTTON (combo_box); gboolean pref_ask; @@ -335,8 +334,8 @@ prepare_combo_box (CcInfoRemovableMediaPanel *self, } static void -other_type_combo_box_changed (GtkComboBox *combo_box, - CcInfoRemovableMediaPanel *self) +other_type_combo_box_changed (GtkComboBox *combo_box, + CcRemovableMediaPanel *self) { GtkTreeIter iter; GtkTreeModel *model; @@ -375,9 +374,9 @@ other_type_combo_box_changed (GtkComboBox *combo_box, } static void -on_extra_options_dialog_response (GtkWidget *dialog, - int response, - CcInfoRemovableMediaPanel *self) +on_extra_options_dialog_response (GtkWidget *dialog, + int response, + CcRemovableMediaPanel *self) { gtk_widget_hide (dialog); @@ -388,8 +387,8 @@ on_extra_options_dialog_response (GtkWidget *dialog, } static void -on_extra_options_button_clicked (GtkWidget *button, - CcInfoRemovableMediaPanel *self) +on_extra_options_button_clicked (GtkWidget *button, + CcRemovableMediaPanel *self) { GtkWidget *combo_box; @@ -412,11 +411,11 @@ on_extra_options_button_clicked (GtkWidget *button, gtk_window_present (GTK_WINDOW (self->media_dialog)); } -#define OFFSET(x) (G_STRUCT_OFFSET (CcInfoRemovableMediaPanel, x)) +#define OFFSET(x) (G_STRUCT_OFFSET (CcRemovableMediaPanel, x)) #define WIDGET_FROM_OFFSET(x) (G_STRUCT_MEMBER (GtkWidget*, self, x)) static void -info_panel_setup_media (CcInfoRemovableMediaPanel *self) +info_panel_setup_media (CcRemovableMediaPanel *self) { guint n; GList *l, *content_types; @@ -558,56 +557,56 @@ info_panel_setup_media (CcInfoRemovableMediaPanel *self) static void -cc_info_removable_media_panel_finalize (GObject *object) +cc_removable_media_panel_finalize (GObject *object) { - CcInfoRemovableMediaPanel *self = CC_INFO_REMOVABLE_MEDIA_PANEL (object); + CcRemovableMediaPanel *self = CC_REMOVABLE_MEDIA_PANEL (object); g_clear_object (&self->media_settings); - G_OBJECT_CLASS (cc_info_removable_media_panel_parent_class)->finalize (object); + G_OBJECT_CLASS (cc_removable_media_panel_parent_class)->finalize (object); } static void -cc_info_removable_media_panel_dispose (GObject *object) +cc_removable_media_panel_dispose (GObject *object) { - CcInfoRemovableMediaPanel *self = CC_INFO_REMOVABLE_MEDIA_PANEL (object); + CcRemovableMediaPanel *self = CC_REMOVABLE_MEDIA_PANEL (object); g_clear_pointer (&self->media_dialog, gtk_widget_destroy); - G_OBJECT_CLASS (cc_info_removable_media_panel_parent_class)->dispose (object); + G_OBJECT_CLASS (cc_removable_media_panel_parent_class)->dispose (object); } static void -cc_info_removable_media_panel_class_init (CcInfoRemovableMediaPanelClass *klass) +cc_removable_media_panel_class_init (CcRemovableMediaPanelClass *klass) { GObjectClass *object_class = G_OBJECT_CLASS (klass); GtkWidgetClass *widget_class = GTK_WIDGET_CLASS (klass); - object_class->finalize = cc_info_removable_media_panel_finalize; - object_class->dispose = cc_info_removable_media_panel_dispose; + object_class->finalize = cc_removable_media_panel_finalize; + object_class->dispose = cc_removable_media_panel_dispose; - gtk_widget_class_set_template_from_resource (widget_class, "/org/gnome/control-center/info/cc-info-removable-media-panel.ui"); + gtk_widget_class_set_template_from_resource (widget_class, "/org/gnome/control-center/removable-media/cc-removable-media-panel.ui"); - gtk_widget_class_bind_template_child (widget_class, CcInfoRemovableMediaPanel, media_handling_vbox); - gtk_widget_class_bind_template_child (widget_class, CcInfoRemovableMediaPanel, media_autorun_never_checkbutton); - gtk_widget_class_bind_template_child (widget_class, CcInfoRemovableMediaPanel, extra_options_button); + gtk_widget_class_bind_template_child (widget_class, CcRemovableMediaPanel, media_handling_vbox); + gtk_widget_class_bind_template_child (widget_class, CcRemovableMediaPanel, media_autorun_never_checkbutton); + gtk_widget_class_bind_template_child (widget_class, CcRemovableMediaPanel, extra_options_button); - gtk_widget_class_bind_template_child (widget_class, CcInfoRemovableMediaPanel, media_audio_cdda_combobox); - gtk_widget_class_bind_template_child (widget_class, CcInfoRemovableMediaPanel, media_video_dvd_combobox); - gtk_widget_class_bind_template_child (widget_class, CcInfoRemovableMediaPanel, media_music_player_combobox); - gtk_widget_class_bind_template_child (widget_class, CcInfoRemovableMediaPanel, media_dcf_combobox); - gtk_widget_class_bind_template_child (widget_class, CcInfoRemovableMediaPanel, media_software_combobox); + gtk_widget_class_bind_template_child (widget_class, CcRemovableMediaPanel, media_audio_cdda_combobox); + gtk_widget_class_bind_template_child (widget_class, CcRemovableMediaPanel, media_video_dvd_combobox); + gtk_widget_class_bind_template_child (widget_class, CcRemovableMediaPanel, media_music_player_combobox); + gtk_widget_class_bind_template_child (widget_class, CcRemovableMediaPanel, media_dcf_combobox); + gtk_widget_class_bind_template_child (widget_class, CcRemovableMediaPanel, media_software_combobox); - gtk_widget_class_bind_template_child (widget_class, CcInfoRemovableMediaPanel, media_dialog); - gtk_widget_class_bind_template_child (widget_class, CcInfoRemovableMediaPanel, media_other_type_combobox); - gtk_widget_class_bind_template_child (widget_class, CcInfoRemovableMediaPanel, media_other_action_label); - gtk_widget_class_bind_template_child (widget_class, CcInfoRemovableMediaPanel, media_other_action_container); + gtk_widget_class_bind_template_child (widget_class, CcRemovableMediaPanel, media_dialog); + gtk_widget_class_bind_template_child (widget_class, CcRemovableMediaPanel, media_other_type_combobox); + gtk_widget_class_bind_template_child (widget_class, CcRemovableMediaPanel, media_other_action_label); + gtk_widget_class_bind_template_child (widget_class, CcRemovableMediaPanel, media_other_action_container); } static void -cc_info_removable_media_panel_init (CcInfoRemovableMediaPanel *self) +cc_removable_media_panel_init (CcRemovableMediaPanel *self) { - g_resources_register (cc_info_get_resource ()); + g_resources_register (cc_removable_media_get_resource ()); gtk_widget_init_template (GTK_WIDGET (self)); self->media_settings = g_settings_new (MEDIA_HANDLING_SCHEMA); diff --git a/panels/info/cc-info-removable-media-panel.h b/panels/removable-media/cc-removable-media-panel.h similarity index 71% rename from panels/info/cc-info-removable-media-panel.h rename to panels/removable-media/cc-removable-media-panel.h index c77d96367..f373b9217 100644 --- a/panels/info/cc-info-removable-media-panel.h +++ b/panels/removable-media/cc-removable-media-panel.h @@ -17,17 +17,17 @@ * */ -#ifndef CC_INFO_REMOVABLE_MEDIA_PANEL_H -#define CC_INFO_REMOVABLE_MEDIA_PANEL_H +#ifndef CC_REMOVABLE_MEDIA_PANEL_H +#define CC_REMOVABLE_MEDIA_PANEL_H #include G_BEGIN_DECLS -#define CC_TYPE_INFO_REMOVABLE_MEDIA_PANEL (cc_info_removable_media_panel_get_type ()) -G_DECLARE_FINAL_TYPE (CcInfoRemovableMediaPanel, cc_info_removable_media_panel, CC, INFO_REMOVABLE_MEDIA_PANEL, CcPanel) +#define CC_TYPE_REMOVABLE_MEDIA_PANEL (cc_removable_media_panel_get_type ()) +G_DECLARE_FINAL_TYPE (CcRemovableMediaPanel, cc_removable_media_panel, CC, REMOVABLE_MEDIA_PANEL, CcPanel) G_END_DECLS -#endif /* CC_INFO_REMOVABLE_MEDIA_PANEL_H */ +#endif /* CC_REMOVABLE_MEDIA_PANEL_H */ diff --git a/panels/info/cc-info-removable-media-panel.ui b/panels/removable-media/cc-removable-media-panel.ui similarity index 99% rename from panels/info/cc-info-removable-media-panel.ui rename to panels/removable-media/cc-removable-media-panel.ui index c0b93bfaa..8687af1cf 100644 --- a/panels/info/cc-info-removable-media-panel.ui +++ b/panels/removable-media/cc-removable-media-panel.ui @@ -1,7 +1,7 @@ -