b5c970e13e
The bug that made the cups client in the panel crash is now fixed and the panel is finally usable
87 lines
2.9 KiB
Diff
87 lines
2.9 KiB
Diff
From 2f6f14c45ed891ee215f408ce428aab6508b9b3e Mon Sep 17 00:00:00 2001
|
|
From: =?UTF-8?q?Guido=20G=C3=BCnther?= <agx@sigxcpu.org>
|
|
Date: Tue, 24 Aug 2021 18:23:51 +0200
|
|
Subject: [PATCH 1/8] shell: Mirror the main leaflet's 'folded' property
|
|
|
|
This makes it simpler for panels to check whether g-c-c
|
|
is in folded state.
|
|
---
|
|
shell/cc-window.c | 27 ++++++++++++++++++++++++++-
|
|
1 file changed, 26 insertions(+), 1 deletion(-)
|
|
|
|
diff --git a/shell/cc-window.c b/shell/cc-window.c
|
|
index de4eccc04..c9a7bf0b0 100644
|
|
--- a/shell/cc-window.c
|
|
+++ b/shell/cc-window.c
|
|
@@ -81,6 +81,8 @@ struct _CcWindow
|
|
CcPanel *active_panel;
|
|
GSettings *settings;
|
|
|
|
+ gboolean folded;
|
|
+
|
|
CcPanelListView previous_list_view;
|
|
};
|
|
|
|
@@ -93,7 +95,8 @@ enum
|
|
{
|
|
PROP_0,
|
|
PROP_ACTIVE_PANEL,
|
|
- PROP_MODEL
|
|
+ PROP_MODEL,
|
|
+ PROP_FOLDED,
|
|
};
|
|
|
|
/* Auxiliary methods */
|
|
@@ -766,6 +769,10 @@ cc_window_get_property (GObject *object,
|
|
g_value_set_object (value, self->store);
|
|
break;
|
|
|
|
+ case PROP_FOLDED:
|
|
+ g_value_set_boolean (value, self->folded);
|
|
+ break;
|
|
+
|
|
default:
|
|
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
|
|
}
|
|
@@ -790,6 +797,10 @@ cc_window_set_property (GObject *object,
|
|
self->store = g_value_dup_object (value);
|
|
break;
|
|
|
|
+ case PROP_FOLDED:
|
|
+ self->folded = g_value_get_boolean (value);
|
|
+ break;
|
|
+
|
|
default:
|
|
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
|
|
}
|
|
@@ -876,6 +887,14 @@ cc_window_class_init (CcWindowClass *klass)
|
|
CC_TYPE_SHELL_MODEL,
|
|
G_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY | G_PARAM_STATIC_STRINGS));
|
|
|
|
+ g_object_class_install_property (object_class,
|
|
+ PROP_FOLDED,
|
|
+ g_param_spec_boolean ("folded",
|
|
+ "Folded",
|
|
+ "Whether the window is foled",
|
|
+ FALSE,
|
|
+ G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
|
|
+
|
|
gtk_widget_class_set_template_from_resource (widget_class, "/org/gnome/ControlCenter/gtk/cc-window.ui");
|
|
|
|
gtk_widget_class_bind_template_child (widget_class, CcWindow, back_revealer);
|
|
@@ -921,6 +940,12 @@ cc_window_init (CcWindow *self)
|
|
self->previous_panels = g_queue_new ();
|
|
self->previous_list_view = cc_panel_list_get_view (self->panel_list);
|
|
|
|
+ g_object_bind_property (self->main_leaflet,
|
|
+ "folded",
|
|
+ self,
|
|
+ "folded",
|
|
+ G_BINDING_SYNC_CREATE);
|
|
+
|
|
/* Add a custom CSS class on development builds */
|
|
if (in_flatpak_sandbox ())
|
|
gtk_style_context_add_class (gtk_widget_get_style_context (GTK_WIDGET (self)), "devel");
|
|
--
|
|
2.25.1
|
|
|