calendar-management: Make it an AdwDialog

So it can behave like a bottom sheet when collapsed.
This commit is contained in:
Georges Basile Stavracas Neto
2024-01-27 12:32:12 -03:00
parent b42f3d46d4
commit 72d3caaf94
5 changed files with 11 additions and 15 deletions
@@ -53,7 +53,7 @@ typedef enum
struct _GcalCalendarManagementDialog struct _GcalCalendarManagementDialog
{ {
AdwWindow parent; AdwDialog parent;
AdwNavigationView *navigation_view; AdwNavigationView *navigation_view;
@@ -73,7 +73,7 @@ static void on_page_switched_cb (GcalCalendarMa
GcalCalendar *calendar, GcalCalendar *calendar,
GcalCalendarManagementDialog *self); GcalCalendarManagementDialog *self);
G_DEFINE_TYPE (GcalCalendarManagementDialog, gcal_calendar_management_dialog, ADW_TYPE_WINDOW) G_DEFINE_TYPE (GcalCalendarManagementDialog, gcal_calendar_management_dialog, ADW_TYPE_DIALOG)
enum enum
{ {
@@ -34,6 +34,6 @@ G_BEGIN_DECLS
G_DECLARE_FINAL_TYPE (GcalCalendarManagementDialog, G_DECLARE_FINAL_TYPE (GcalCalendarManagementDialog,
gcal_calendar_management_dialog, gcal_calendar_management_dialog,
GCAL, CALENDAR_MANAGEMENT_DIALOG, GCAL, CALENDAR_MANAGEMENT_DIALOG,
AdwWindow) AdwDialog)
G_END_DECLS G_END_DECLS
@@ -1,13 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<interface> <interface>
<template class="GcalCalendarManagementDialog" parent="AdwWindow"> <template class="GcalCalendarManagementDialog" parent="AdwDialog">
<property name="title" translatable="yes">Calendar Settings</property> <property name="title" translatable="yes">Calendar Settings</property>
<property name="width-request">360</property> <property name="width-request">360</property>
<property name="default-width">500</property> <property name="content-width">500</property>
<property name="default-height">600</property> <property name="content-height">600</property>
<property name="modal">True</property>
<property name="destroy_with_parent">True</property>
<property name="hide-on-close">True</property>
<child> <child>
<object class="AdwNavigationView" id="navigation_view"> <object class="AdwNavigationView" id="navigation_view">
<signal name="popped" handler="on_navigation_view_popped_cb" object="GcalCalendarManagementDialog" swapped="no" /> <signal name="popped" handler="on_navigation_view_popped_cb" object="GcalCalendarManagementDialog" swapped="no" />
+2 -2
View File
@@ -343,9 +343,9 @@ on_show_calendars_action_activated (GSimpleAction *action,
GVariant *param, GVariant *param,
gpointer user_data) gpointer user_data)
{ {
GcalWindow *window = GCAL_WINDOW (user_data); GcalWindow *self = GCAL_WINDOW (user_data);
gtk_widget_set_visible (window->calendar_management_dialog, TRUE); adw_dialog_present (ADW_DIALOG (self->calendar_management_dialog), GTK_WIDGET (self));
} }
static void static void
+3 -4
View File
@@ -308,10 +308,9 @@
<signal name="edit-event" handler="edit_event" object="GcalWindow" swapped="no"/> <signal name="edit-event" handler="edit_event" object="GcalWindow" swapped="no"/>
<signal name="closed" handler="close_new_event_widget" object="GcalWindow" swapped="no"/> <signal name="closed" handler="close_new_event_widget" object="GcalWindow" swapped="no"/>
</object> </object>
<object class="GcalCalendarManagementDialog" id="calendar_management_dialog">
<property name="visible">False</property> <object class="GcalCalendarManagementDialog" id="calendar_management_dialog" />
<property name="transient_for">GcalWindow</property>
</object>
<object class="GcalEventEditorDialog" id="event_editor"> <object class="GcalEventEditorDialog" id="event_editor">
<property name="visible">False</property> <property name="visible">False</property>
<property name="transient_for">GcalWindow</property> <property name="transient_for">GcalWindow</property>