From f8c5751174c90654ae009bcd023b1fda12efec7f Mon Sep 17 00:00:00 2001 From: Hari Rana Date: Fri, 11 Oct 2024 23:49:10 -0400 Subject: [PATCH] calendar-row: Rename calendar-combo-row-item to calendar-row Currently, the quick add popover implements its own row widget for each calendar, which duplicates tons of unnecessary code. This commit streamlines the calendar-combo-row-item row widget to make it reusable elsewhere. Part-of: --- po/POTFILES.in | 2 +- src/gui/common/common.gresource.xml | 2 +- src/gui/common/gcal-calendar-combo-row.c | 4 +- ...mbo-row-item.blp => gcal-calendar-row.blp} | 6 +- ...r-combo-row-item.c => gcal-calendar-row.c} | 64 +++++++++---------- ...r-combo-row-item.h => gcal-calendar-row.h} | 6 +- src/gui/common/meson.build | 4 +- src/gui/gcal-quick-add-popover.blp | 4 +- 8 files changed, 46 insertions(+), 46 deletions(-) rename src/gui/common/{gcal-calendar-combo-row-item.blp => gcal-calendar-row.blp} (84%) rename src/gui/common/{gcal-calendar-combo-row-item.c => gcal-calendar-row.c} (68%) rename src/gui/common/{gcal-calendar-combo-row-item.h => gcal-calendar-row.h} (74%) diff --git a/po/POTFILES.in b/po/POTFILES.in index c3728a5b..055f43a5 100644 --- a/po/POTFILES.in +++ b/po/POTFILES.in @@ -12,8 +12,8 @@ src/gui/calendar-management/gcal-edit-calendar-page.blp src/gui/calendar-management/gcal-edit-calendar-page.c src/gui/calendar-management/gcal-new-calendar-page.blp src/gui/calendar-management/gcal-new-calendar-page.c -src/gui/common/gcal-calendar-combo-row-item.c src/gui/common/gcal-calendar-combo-row.blp +src/gui/common/gcal-calendar-row.c src/gui/common/gcal-date-chooser.c src/gui/event-editor/gcal-alarm-row.blp src/gui/event-editor/gcal-alarm-row.c diff --git a/src/gui/common/common.gresource.xml b/src/gui/common/common.gresource.xml index bb82289e..4156d211 100644 --- a/src/gui/common/common.gresource.xml +++ b/src/gui/common/common.gresource.xml @@ -1,7 +1,7 @@ - gcal-calendar-combo-row-item.ui + gcal-calendar-row.ui gcal-calendar-combo-row.ui gcal-date-chooser.ui gcal-date-chooser-day.ui diff --git a/src/gui/common/gcal-calendar-combo-row.c b/src/gui/common/gcal-calendar-combo-row.c index 0383eafb..32808e47 100644 --- a/src/gui/common/gcal-calendar-combo-row.c +++ b/src/gui/common/gcal-calendar-combo-row.c @@ -19,7 +19,7 @@ #define G_LOG_DOMAIN "GcalCalendarComboRow" #include "gcal-calendar-combo-row.h" -#include "gcal-calendar-combo-row-item.h" +#include "gcal-calendar-row.h" #include #include @@ -95,7 +95,7 @@ calendar_item_bind_cb (GtkSignalListItemFactory *factory, box = g_object_get_data (G_OBJECT (item), "box"); checkmark = g_object_get_data (G_OBJECT (item), "checkmark"); - calendar_row = gcal_calendar_combo_row_item_new (data); + calendar_row = gcal_calendar_row_new (data); gtk_box_insert_child_after (GTK_BOX (box), calendar_row, NULL); diff --git a/src/gui/common/gcal-calendar-combo-row-item.blp b/src/gui/common/gcal-calendar-row.blp similarity index 84% rename from src/gui/common/gcal-calendar-combo-row-item.blp rename to src/gui/common/gcal-calendar-row.blp index c0c2997b..f42f4474 100644 --- a/src/gui/common/gcal-calendar-combo-row-item.blp +++ b/src/gui/common/gcal-calendar-row.blp @@ -1,8 +1,8 @@ using Gtk 4.0; using Adw 1; -template $GcalCalendarComboRowItem: Adw.PreferencesRow { - Box { +template $GcalCalendarRow: Adw.PreferencesRow { + child: Box { orientation: horizontal; spacing: 6; @@ -23,5 +23,5 @@ template $GcalCalendarComboRowItem: Adw.PreferencesRow { hexpand: true; icon-name: "eye-not-looking-symbolic"; } - } + }; } diff --git a/src/gui/common/gcal-calendar-combo-row-item.c b/src/gui/common/gcal-calendar-row.c similarity index 68% rename from src/gui/common/gcal-calendar-combo-row-item.c rename to src/gui/common/gcal-calendar-row.c index a3d0fa52..2997d39d 100644 --- a/src/gui/common/gcal-calendar-combo-row-item.c +++ b/src/gui/common/gcal-calendar-row.c @@ -1,4 +1,4 @@ -/* gcal-calendar-combo-row-item.c +/* gcal-calendar-row.c * * Copyright 2024 Diego Iván M.E * @@ -18,25 +18,25 @@ * SPDX-License-Identifier: GPL-3.0-or-later */ -#define G_LOG_DOMAIN "GcalCalendarComboRowItem" +#define G_LOG_DOMAIN "GcalCalendarRow" #include "config.h" -#include "gcal-calendar-combo-row-item.h" +#include "gcal-calendar-row.h" #include "gcal-debug.h" #include "gcal-utils.h" #include -struct _GcalCalendarComboRowItem +struct _GcalCalendarRow { - AdwActionRow parent; + AdwPreferencesRow parent; GtkImage *color_image; GtkImage *visibility_image; GcalCalendar *calendar; }; -G_DEFINE_TYPE (GcalCalendarComboRowItem, gcal_calendar_combo_row_item, ADW_TYPE_PREFERENCES_ROW) +G_DEFINE_TYPE (GcalCalendarRow, gcal_calendar_row, ADW_TYPE_PREFERENCES_ROW) enum { @@ -59,7 +59,7 @@ paintable_from_gdk_rgb (GBinding *binding, } static void -updated_visibility_cb (GcalCalendarComboRowItem *self) +updated_visibility_cb (GcalCalendarRow *self) { g_autofree gchar *accessible_description = NULL; @@ -75,8 +75,8 @@ updated_visibility_cb (GcalCalendarComboRowItem *self) } static void -set_calendar (GcalCalendarComboRowItem *self, - GcalCalendar *calendar) +set_calendar (GcalCalendarRow *self, + GcalCalendar *calendar) { g_return_if_fail (GCAL_IS_CALENDAR (calendar)); g_set_object (&self->calendar, calendar); @@ -102,22 +102,22 @@ set_calendar (GcalCalendarComboRowItem *self, */ static void -gcal_calendar_combo_row_item_finalize (GObject *object) +gcal_calendar_row_finalize (GObject *object) { - GcalCalendarComboRowItem *self = (GcalCalendarComboRowItem *)object; + GcalCalendarRow *self = (GcalCalendarRow *)object; g_clear_object (&self->calendar); - G_OBJECT_CLASS (gcal_calendar_combo_row_item_parent_class)->finalize (object); + G_OBJECT_CLASS (gcal_calendar_row_parent_class)->finalize (object); } static void -gcal_calendar_combo_row_item_get_property (GObject *object, - guint prop_id, - GValue *value, - GParamSpec *pspec) +gcal_calendar_row_get_property (GObject *object, + guint prop_id, + GValue *value, + GParamSpec *pspec) { - GcalCalendarComboRowItem *self = GCAL_CALENDAR_COMBO_ROW_ITEM (object); + GcalCalendarRow *self = GCAL_CALENDAR_ROW (object); switch (prop_id) { @@ -131,12 +131,12 @@ gcal_calendar_combo_row_item_get_property (GObject *object, } static void -gcal_calendar_combo_row_item_set_property (GObject *object, - guint prop_id, - const GValue *value, - GParamSpec *pspec) +gcal_calendar_row_set_property (GObject *object, + guint prop_id, + const GValue *value, + GParamSpec *pspec) { - GcalCalendarComboRowItem *self = GCAL_CALENDAR_COMBO_ROW_ITEM (object); + GcalCalendarRow *self = GCAL_CALENDAR_ROW (object); switch (prop_id) { @@ -151,14 +151,14 @@ gcal_calendar_combo_row_item_set_property (GObject *object, } static void -gcal_calendar_combo_row_item_class_init (GcalCalendarComboRowItemClass *klass) +gcal_calendar_row_class_init (GcalCalendarRowClass *klass) { GObjectClass *object_class = G_OBJECT_CLASS (klass); GtkWidgetClass *widget_class = GTK_WIDGET_CLASS (klass); - object_class->finalize = gcal_calendar_combo_row_item_finalize; - object_class->get_property = gcal_calendar_combo_row_item_get_property; - object_class->set_property = gcal_calendar_combo_row_item_set_property; + object_class->finalize = gcal_calendar_row_finalize; + object_class->get_property = gcal_calendar_row_get_property; + object_class->set_property = gcal_calendar_row_set_property; properties[PROP_CALENDAR] = g_param_spec_object ("calendar", "Calendar", @@ -168,22 +168,22 @@ gcal_calendar_combo_row_item_class_init (GcalCalendarComboRowItemClass *klass) g_object_class_install_properties (object_class, N_PROPS, properties); - gtk_widget_class_set_template_from_resource (widget_class, "/org/gnome/calendar/ui/common/gcal-calendar-combo-row-item.ui"); + gtk_widget_class_set_template_from_resource (widget_class, "/org/gnome/calendar/ui/common/gcal-calendar-row.ui"); - gtk_widget_class_bind_template_child (widget_class, GcalCalendarComboRowItem, color_image); - gtk_widget_class_bind_template_child (widget_class, GcalCalendarComboRowItem, visibility_image); + gtk_widget_class_bind_template_child (widget_class, GcalCalendarRow, color_image); + gtk_widget_class_bind_template_child (widget_class, GcalCalendarRow, visibility_image); } static void -gcal_calendar_combo_row_item_init (GcalCalendarComboRowItem *self) +gcal_calendar_row_init (GcalCalendarRow *self) { gtk_widget_init_template (GTK_WIDGET (self)); } GtkWidget* -gcal_calendar_combo_row_item_new (GcalCalendar *calendar) +gcal_calendar_row_new (GcalCalendar *calendar) { - return g_object_new (GCAL_TYPE_CALENDAR_COMBO_ROW_ITEM, + return g_object_new (GCAL_TYPE_CALENDAR_ROW, "calendar", calendar, NULL); } diff --git a/src/gui/common/gcal-calendar-combo-row-item.h b/src/gui/common/gcal-calendar-row.h similarity index 74% rename from src/gui/common/gcal-calendar-combo-row-item.h rename to src/gui/common/gcal-calendar-row.h index bf7ccf1e..0d727a9d 100644 --- a/src/gui/common/gcal-calendar-combo-row-item.h +++ b/src/gui/common/gcal-calendar-row.h @@ -24,10 +24,10 @@ #include "gcal-calendar.h" G_BEGIN_DECLS -#define GCAL_TYPE_CALENDAR_COMBO_ROW_ITEM (gcal_calendar_combo_row_item_get_type()) +#define GCAL_TYPE_CALENDAR_ROW (gcal_calendar_row_get_type()) -G_DECLARE_FINAL_TYPE (GcalCalendarComboRowItem, gcal_calendar_combo_row_item, GCAL, CALENDAR_COMBO_ROW_ITEM, AdwPreferencesRow) +G_DECLARE_FINAL_TYPE (GcalCalendarRow, gcal_calendar_row, GCAL, CALENDAR_ROW, AdwPreferencesRow) -GtkWidget* gcal_calendar_combo_row_item_new (GcalCalendar *calendar); +GtkWidget* gcal_calendar_row_new (GcalCalendar *calendar); G_END_DECLS diff --git a/src/gui/common/meson.build b/src/gui/common/meson.build index 9a8ba3ec..5c7c8b5c 100644 --- a/src/gui/common/meson.build +++ b/src/gui/common/meson.build @@ -3,8 +3,8 @@ calendar_incs += include_directories('.') blueprints = custom_target( 'blueprints', input: files( - 'gcal-calendar-combo-row-item.blp', 'gcal-calendar-combo-row.blp', + 'gcal-calendar-row.blp', 'gcal-date-chooser-day.blp', 'gcal-date-chooser.blp', ), @@ -26,7 +26,7 @@ built_sources += gnome.compile_resources( ) sources += files( - 'gcal-calendar-combo-row-item.c', + 'gcal-calendar-row.c', 'gcal-calendar-combo-row.c', 'gcal-date-chooser.c', 'gcal-date-chooser-day.c', diff --git a/src/gui/gcal-quick-add-popover.blp b/src/gui/gcal-quick-add-popover.blp index 1cb26e8d..1ef6ba8d 100644 --- a/src/gui/gcal-quick-add-popover.blp +++ b/src/gui/gcal-quick-add-popover.blp @@ -9,7 +9,7 @@ template $GcalQuickAddPopover: Popover { "quick-add-popover", ] - Box { + child: Box { orientation: vertical; margin-top: 12; margin-bottom: 12; @@ -103,5 +103,5 @@ template $GcalQuickAddPopover: Popover { ] } } - } + }; }