[metacity] theme-viewer: don't allow to set all frame flags
- From: Alberts Muktupāvels <muktupavels src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [metacity] theme-viewer: don't allow to set all frame flags
- Date: Mon, 15 Feb 2016 20:42:22 +0000 (UTC)
commit ec9a9bc40e04b52562d81eed1864dcf41304fffa
Author: Alberts Muktupāvels <alberts muktupavels gmail com>
Date: Mon Feb 15 22:25:28 2016 +0200
theme-viewer: don't allow to set all frame flags
theme-viewer/theme-viewer-window.c | 34 ++++++++++++++++++++++++++++++++++
1 files changed, 34 insertions(+), 0 deletions(-)
---
diff --git a/theme-viewer/theme-viewer-window.c b/theme-viewer/theme-viewer-window.c
index f4f2ed6..c37ed77 100644
--- a/theme-viewer/theme-viewer-window.c
+++ b/theme-viewer/theme-viewer-window.c
@@ -72,6 +72,38 @@ struct _ThemeViewerWindow
G_DEFINE_TYPE (ThemeViewerWindow, theme_viewer_window, GTK_TYPE_WINDOW)
+static void
+update_frame_flags_sensitivity (ThemeViewerWindow *window)
+{
+ gtk_widget_set_sensitive (window->has_focus, TRUE);
+ gtk_widget_set_sensitive (window->shaded, TRUE);
+ gtk_widget_set_sensitive (window->maximized, TRUE);
+ gtk_widget_set_sensitive (window->fullscreen, TRUE);
+ gtk_widget_set_sensitive (window->tiled, TRUE);
+
+ if (window->frame_flags & META_FRAME_SHADED)
+ gtk_widget_set_sensitive (window->fullscreen, FALSE);
+
+ if (window->frame_flags & META_FRAME_MAXIMIZED)
+ {
+ gtk_widget_set_sensitive (window->fullscreen, FALSE);
+ gtk_widget_set_sensitive (window->tiled, FALSE);
+ }
+
+ if (window->frame_flags & META_FRAME_FULLSCREEN)
+ {
+ gtk_widget_set_sensitive (window->shaded, FALSE);
+ gtk_widget_set_sensitive (window->maximized, FALSE);
+ gtk_widget_set_sensitive (window->tiled, FALSE);
+ }
+
+ if (window->frame_flags & META_FRAME_TILED_LEFT)
+ {
+ gtk_widget_set_sensitive (window->maximized, FALSE);
+ gtk_widget_set_sensitive (window->fullscreen, FALSE);
+ }
+}
+
static GdkPixbuf *
get_icon (gint size)
{
@@ -285,6 +317,8 @@ update_frame_flags (ThemeViewerWindow *window)
update_title_layout (window);
update_frame_borders (window);
+
+ update_frame_flags_sensitivity (window);
}
static void
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]