window: Simplify window menu
We could have relied on the popover menu automatic menu handling capabilities from the very beginning.
This commit is contained in:
@@ -10,7 +10,7 @@
|
|||||||
<child>
|
<child>
|
||||||
<object class="GtkModelButton">
|
<object class="GtkModelButton">
|
||||||
<property name="text" translatable="yes">_Weather</property>
|
<property name="text" translatable="yes">_Weather</property>
|
||||||
<property name="menu-name">main-menu</property>
|
<property name="menu-name">main</property>
|
||||||
<property name="inverted">True</property>
|
<property name="inverted">True</property>
|
||||||
<property name="centered">True</property>
|
<property name="centered">True</property>
|
||||||
<property name="visible">True</property>
|
<property name="visible">True</property>
|
||||||
|
|||||||
+24
-35
@@ -370,55 +370,44 @@
|
|||||||
<signal name="response" handler="edit_dialog_closed" object="GcalWindow" swapped="no"/>
|
<signal name="response" handler="edit_dialog_closed" object="GcalWindow" swapped="no"/>
|
||||||
<signal name="delete-event" handler="gtk_widget_hide_on_delete" object="GcalWindow" swapped="no"/>
|
<signal name="delete-event" handler="gtk_widget_hide_on_delete" object="GcalWindow" swapped="no"/>
|
||||||
</object>
|
</object>
|
||||||
|
|
||||||
<object class="GtkPopoverMenu" id="win_menu">
|
<object class="GtkPopoverMenu" id="win_menu">
|
||||||
<signal name="notify::visible" handler="on_popover_menu_visible_cb" object="GcalWindow" swapped="no" />
|
|
||||||
<child>
|
<child>
|
||||||
<object class="GtkStack" id="win_menu_stack">
|
<object class="GtkBox">
|
||||||
<property name="visible">True</property>
|
<property name="visible">True</property>
|
||||||
<property name="can_focus">False</property>
|
<property name="margin">12</property>
|
||||||
<property name="homogeneous">False</property>
|
<property name="orientation">vertical</property>
|
||||||
<property name="transition_type">slide-left-right</property>
|
|
||||||
<property name="interpolate-size">True</property>
|
<!-- Synchronize -->
|
||||||
<child>
|
<child>
|
||||||
|
<object class="GtkModelButton">
|
||||||
<!-- New Event -->
|
|
||||||
<object class="GtkBox">
|
|
||||||
<property name="margin">12</property>
|
|
||||||
<property name="visible">True</property>
|
<property name="visible">True</property>
|
||||||
<property name="orientation">vertical</property>
|
<property name="action-name">app.sync</property>
|
||||||
|
<property name="text" translatable="yes">_Synchronize</property>
|
||||||
<!-- Synchronize -->
|
|
||||||
<child>
|
|
||||||
<object class="GtkModelButton">
|
|
||||||
<property name="text" translatable="yes">_Synchronize</property>
|
|
||||||
<property name="action-name">app.sync</property>
|
|
||||||
<property name="visible">True</property>
|
|
||||||
</object>
|
|
||||||
</child>
|
|
||||||
<child>
|
|
||||||
<object class="GtkModelButton" id="win-menu-open-weather">
|
|
||||||
<property name="text" translatable="yes">_Weather</property>
|
|
||||||
<property name="menu-name">weather-menu</property>
|
|
||||||
<property name="visible">True</property>
|
|
||||||
</object>
|
|
||||||
</child>
|
|
||||||
</object>
|
</object>
|
||||||
<packing>
|
|
||||||
<property name="name">main-menu</property>
|
|
||||||
</packing>
|
|
||||||
</child>
|
</child>
|
||||||
|
|
||||||
<!-- Weather -->
|
<!-- Weather -->
|
||||||
<child>
|
<child>
|
||||||
<object class="GcalWeatherSettings" id="weather_settings">
|
<object class="GtkModelButton">
|
||||||
<property name="visible">True</property>
|
<property name="visible">True</property>
|
||||||
<property name="can_focus">False</property>
|
<property name="menu-name">weather</property>
|
||||||
|
<property name="text" translatable="yes">_Weather</property>
|
||||||
</object>
|
</object>
|
||||||
<packing>
|
|
||||||
<property name="name">weather-menu</property>
|
|
||||||
</packing>
|
|
||||||
</child>
|
</child>
|
||||||
</object>
|
</object>
|
||||||
</child>
|
</child>
|
||||||
|
|
||||||
|
<!-- Weather submenu -->
|
||||||
|
<child>
|
||||||
|
<object class="GcalWeatherSettings" id="weather_settings">
|
||||||
|
<property name="visible">True</property>
|
||||||
|
<property name="can_focus">False</property>
|
||||||
|
</object>
|
||||||
|
<packing>
|
||||||
|
<property name="submenu">weather</property>
|
||||||
|
</packing>
|
||||||
|
</child>
|
||||||
|
|
||||||
</object>
|
</object>
|
||||||
</interface>
|
</interface>
|
||||||
|
|||||||
@@ -126,7 +126,6 @@ struct _GcalWindow
|
|||||||
GtkWidget *today_button;
|
GtkWidget *today_button;
|
||||||
GtkWidget *forward_button;
|
GtkWidget *forward_button;
|
||||||
GtkWidget *views_switcher;
|
GtkWidget *views_switcher;
|
||||||
GtkWidget *win_menu_stack;
|
|
||||||
|
|
||||||
/* new event popover widgets */
|
/* new event popover widgets */
|
||||||
GtkWidget *quick_add_popover;
|
GtkWidget *quick_add_popover;
|
||||||
@@ -929,14 +928,6 @@ window_state_changed (GtkWidget *widget,
|
|||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
|
||||||
on_popover_menu_visible_cb (GtkWidget *widget,
|
|
||||||
GParamSpec *pspec,
|
|
||||||
GcalWindow *self)
|
|
||||||
{
|
|
||||||
gtk_stack_set_visible_child_name (GTK_STACK (self->win_menu_stack), "main-menu");
|
|
||||||
}
|
|
||||||
|
|
||||||
static void
|
static void
|
||||||
edit_event (GcalQuickAddPopover *popover,
|
edit_event (GcalQuickAddPopover *popover,
|
||||||
GcalEvent *event,
|
GcalEvent *event,
|
||||||
@@ -1479,7 +1470,6 @@ gcal_window_class_init (GcalWindowClass *klass)
|
|||||||
gtk_widget_class_bind_template_child (widget_class, GcalWindow, views_overlay);
|
gtk_widget_class_bind_template_child (widget_class, GcalWindow, views_overlay);
|
||||||
gtk_widget_class_bind_template_child (widget_class, GcalWindow, views_stack);
|
gtk_widget_class_bind_template_child (widget_class, GcalWindow, views_stack);
|
||||||
gtk_widget_class_bind_template_child (widget_class, GcalWindow, views_switcher);
|
gtk_widget_class_bind_template_child (widget_class, GcalWindow, views_switcher);
|
||||||
gtk_widget_class_bind_template_child (widget_class, GcalWindow, win_menu_stack);
|
|
||||||
gtk_widget_class_bind_template_child (widget_class, GcalWindow, weather_settings);
|
gtk_widget_class_bind_template_child (widget_class, GcalWindow, weather_settings);
|
||||||
gtk_widget_class_bind_template_child (widget_class, GcalWindow, week_view);
|
gtk_widget_class_bind_template_child (widget_class, GcalWindow, week_view);
|
||||||
gtk_widget_class_bind_template_child (widget_class, GcalWindow, year_view);
|
gtk_widget_class_bind_template_child (widget_class, GcalWindow, year_view);
|
||||||
@@ -1497,8 +1487,6 @@ gcal_window_class_init (GcalWindowClass *klass)
|
|||||||
gtk_widget_class_bind_template_callback (widget_class, view_changed);
|
gtk_widget_class_bind_template_callback (widget_class, view_changed);
|
||||||
gtk_widget_class_bind_template_callback (widget_class, date_updated);
|
gtk_widget_class_bind_template_callback (widget_class, date_updated);
|
||||||
|
|
||||||
gtk_widget_class_bind_template_callback (widget_class, on_popover_menu_visible_cb);
|
|
||||||
|
|
||||||
/* Event removal related */
|
/* Event removal related */
|
||||||
gtk_widget_class_bind_template_callback (widget_class, hide_notification);
|
gtk_widget_class_bind_template_callback (widget_class, hide_notification);
|
||||||
gtk_widget_class_bind_template_callback (widget_class, remove_event);
|
gtk_widget_class_bind_template_callback (widget_class, remove_event);
|
||||||
|
|||||||
Reference in New Issue
Block a user