[gnome-todo] window: Remove fullscreen action
- From: Georges Basile Stavracas Neto <gbsneto src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-todo] window: Remove fullscreen action
- Date: Mon, 5 Apr 2021 15:22:49 +0000 (UTC)
commit 189009d2efd521e9917016c9a38f41410a62971d
Author: Georges Basile Stavracas Neto <georges stavracas gmail com>
Date: Sun Apr 4 22:17:13 2021 -0300
window: Remove fullscreen action
Let's be honest, this was a bad idea from the beginning. Sadly, there was
nobody to stop me from adding this.
src/gui/gtd-window.c | 90 ---------------------------------------------------
src/gui/gtd-window.ui | 30 -----------------
2 files changed, 120 deletions(-)
---
diff --git a/src/gui/gtd-window.c b/src/gui/gtd-window.c
index bc87bd8f..73010b74 100644
--- a/src/gui/gtd-window.c
+++ b/src/gui/gtd-window.c
@@ -60,15 +60,12 @@ struct _GtdWindow
AdwHeaderBar *headerbar;
GtkBox *headerbar_box;
- GtkRevealer *headerbar_overlay_revealer;
GtkStack *stack;
GtkBox *workspace_box_end;
GtkBox *workspace_box_start;
GtkListBox *workspaces_listbox;
GtdMenuButton *workspaces_menu_button;
- GtkEventController *overlay_motion_controller;
-
GtdNotificationWidget *notification_widget;
GPtrArray *workspace_header_widgets;
@@ -247,18 +244,6 @@ remove_all_workspace_header_widgets (GtdWindow *self)
* Callbacks
*/
-static gboolean
-toggle_headerbar_overlay_cb (gpointer user_data)
-{
- GtdWindow *self = GTD_WINDOW (user_data);
-
- gtk_revealer_set_reveal_child (self->headerbar_overlay_revealer,
- !gtk_revealer_get_reveal_child (self->headerbar_overlay_revealer));
-
- self->toggle_headerbar_revealer_id = 0;
-
- return G_SOURCE_REMOVE;
-}
static void
on_action_activate_workspace_activated_cb (GSimpleAction *simple,
@@ -278,77 +263,6 @@ on_action_activate_workspace_activated_cb (GSimpleAction *simple,
gtk_stack_set_visible_child_name (self->stack, workspace_id);
}
-static void
-on_action_toggle_fullscreen_state_changed_cb (GSimpleAction *simple,
- GVariant *state,
- gpointer user_data)
-{
- GtdWindow *self;
- gboolean fullscreen;
-
- self = GTD_WINDOW (user_data);
- fullscreen = g_variant_get_boolean (state);
-
- g_clear_handle_id (&self->toggle_headerbar_revealer_id, g_source_remove);
-
- adw_header_bar_set_show_end_title_buttons (self->headerbar, !fullscreen);
-
- g_object_ref (self->headerbar);
- if (fullscreen)
- {
- gtk_event_controller_set_propagation_phase (self->overlay_motion_controller, GTK_PHASE_BUBBLE);
- gtk_box_remove (self->headerbar_box, GTK_WIDGET (self->headerbar));
- gtk_revealer_set_child (self->headerbar_overlay_revealer, GTK_WIDGET (self->headerbar));
- gtk_revealer_set_reveal_child (self->headerbar_overlay_revealer, TRUE);
- gtk_window_fullscreen (GTK_WINDOW (self));
-
- self->toggle_headerbar_revealer_id = g_timeout_add_seconds (2, toggle_headerbar_overlay_cb, self);
- }
- else
- {
- gtk_event_controller_set_propagation_phase (self->overlay_motion_controller, GTK_PHASE_NONE);
- gtk_revealer_set_child (self->headerbar_overlay_revealer, NULL);
- gtk_revealer_set_reveal_child (self->headerbar_overlay_revealer, FALSE);
- gtk_box_append (self->headerbar_box, GTK_WIDGET (self->headerbar));
- gtk_window_unfullscreen (GTK_WINDOW (self));
- }
- g_object_unref (self->headerbar);
-
- g_simple_action_set_state (simple, state);
-}
-
-static void
-on_overlay_motion_controller_motion_cb (GtkEventControllerMotion *controller,
- gdouble x,
- gdouble y,
- GtdWindow *self)
-{
- const gint y_threashold = 5;
- GtkWidget *hovered_widget;
-
- hovered_widget = gtk_widget_pick (GTK_WIDGET (self), x, y, GTK_PICK_DEFAULT);
-
- /* Show headerbar when hovering it */
- if (hovered_widget &&
- gtk_widget_is_ancestor (hovered_widget, GTK_WIDGET (self->headerbar_overlay_revealer)))
- {
- gtk_revealer_set_reveal_child (self->headerbar_overlay_revealer, TRUE);
- g_clear_handle_id (&self->toggle_headerbar_revealer_id, g_source_remove);
- return;
- }
-
- if (y <= y_threashold)
- {
- gtk_revealer_set_reveal_child (self->headerbar_overlay_revealer, TRUE);
- g_clear_handle_id (&self->toggle_headerbar_revealer_id, g_source_remove);
- }
- else if (self->toggle_headerbar_revealer_id == 0 &&
- gtk_revealer_get_reveal_child (self->headerbar_overlay_revealer))
- {
- self->toggle_headerbar_revealer_id = g_timeout_add (500, toggle_headerbar_overlay_cb, self);
- }
-}
-
static gint
compare_workspaced_func (gconstpointer a,
gconstpointer b,
@@ -646,16 +560,13 @@ gtd_window_class_init (GtdWindowClass *klass)
gtk_widget_class_bind_template_child (widget_class, GtdWindow, headerbar);
gtk_widget_class_bind_template_child (widget_class, GtdWindow, headerbar_box);
- gtk_widget_class_bind_template_child (widget_class, GtdWindow, headerbar_overlay_revealer);
gtk_widget_class_bind_template_child (widget_class, GtdWindow, notification_widget);
- gtk_widget_class_bind_template_child (widget_class, GtdWindow, overlay_motion_controller);
gtk_widget_class_bind_template_child (widget_class, GtdWindow, stack);
gtk_widget_class_bind_template_child (widget_class, GtdWindow, workspace_box_end);
gtk_widget_class_bind_template_child (widget_class, GtdWindow, workspace_box_start);
gtk_widget_class_bind_template_child (widget_class, GtdWindow, workspaces_menu_button);
gtk_widget_class_bind_template_child (widget_class, GtdWindow, workspaces_listbox);
- gtk_widget_class_bind_template_callback (widget_class, on_overlay_motion_controller_motion_cb);
gtk_widget_class_bind_template_callback (widget_class, on_stack_visible_child_cb);
gtk_widget_class_bind_template_callback (widget_class, on_workspaces_listbox_row_activated_cb);
}
@@ -665,7 +576,6 @@ gtd_window_init (GtdWindow *self)
{
static const GActionEntry entries[] = {
{ "activate-workspace", on_action_activate_workspace_activated_cb, "(sv)" },
- { "toggle-fullscreen", NULL, NULL, "false", on_action_toggle_fullscreen_state_changed_cb },
};
g_action_map_add_action_entries (G_ACTION_MAP (self),
diff --git a/src/gui/gtd-window.ui b/src/gui/gtd-window.ui
index 9d6f345a..9ff84e69 100644
--- a/src/gui/gtd-window.ui
+++ b/src/gui/gtd-window.ui
@@ -9,12 +9,6 @@
<object class="GtkShortcutController">
<property name="name">Main Window Shortcuts</property>
<property name="scope">global</property>
- <child>
- <object class="GtkShortcut">
- <property name="trigger">F11</property>
- <property name="action">action(win.toggle-fullscreen)</property>
- </object>
- </child>
</object>
</child>
@@ -70,14 +64,6 @@
</object>
</child>
- <!-- Fullscreen Button -->
- <child type="end">
- <object class="GtkToggleButton">
- <property name="action-name">win.toggle-fullscreen</property>
- <property name="icon-name">view-fullscreen-symbolic</property>
- </object>
- </child>
-
<child type="end">
<object class="GtkBox" id="workspace_box_end">
<property name="spacing">6</property>
@@ -98,22 +84,6 @@
</object>
</child>
- <child type="overlay">
- <object class="GtkRevealer" id="headerbar_overlay_revealer">
- <property name="transition-type">slide-down</property>
- <property name="transition-duration">750</property>
- <property name="can_focus">False</property>
- <property name="valign">start</property>
- </object>
- </child>
-
- <child>
- <object class="GtkEventControllerMotion" id="overlay_motion_controller">
- <property name="propagation-phase">none</property>
- <signal name="motion" handler="on_overlay_motion_controller_motion_cb"
object="GtdWindow" swapped="no" />
- </object>
- </child>
-
<!-- Main Stack -->
<child>
<object class="GtkStack" id="stack">
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]