Blame SOURCES/0022-cheese-window-Make-mode-toggle-and-effects-button-in.patch

ecdf9b
From 6bd6f3b72eef27eee71b67755ad98490e20df6ee Mon Sep 17 00:00:00 2001
ecdf9b
From: Hans de Goede <hdegoede@redhat.com>
ecdf9b
Date: Tue, 11 Jun 2013 13:09:39 +0200
ecdf9b
Subject: [PATCH 22/50] cheese-window: Make mode-toggle and effects button
ecdf9b
 inactive when recording
ecdf9b
ecdf9b
While at it also fixup the indentation of enable_mode_change / disable, to
ecdf9b
be 2 spaces like most other code in cheese-window.vala.
ecdf9b
ecdf9b
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
ecdf9b
---
ecdf9b
 src/cheese-window.vala | 43 ++++++++++++++++++++++++++++---------------
ecdf9b
 1 file changed, 28 insertions(+), 15 deletions(-)
ecdf9b
ecdf9b
diff --git a/src/cheese-window.vala b/src/cheese-window.vala
ecdf9b
index 9ebb5e1..2e4e5a8 100644
ecdf9b
--- a/src/cheese-window.vala
ecdf9b
+++ b/src/cheese-window.vala
ecdf9b
@@ -527,23 +527,37 @@ public class Cheese.MainWindow : Gtk.ApplicationWindow
ecdf9b
         set_fullscreen_mode (fullscreen);
ecdf9b
     }
ecdf9b
 
ecdf9b
-    /**
ecdf9b
-     * Make the media capture mode actions sensitive.
ecdf9b
-     */
ecdf9b
-    private void enable_mode_change ()
ecdf9b
-    {
ecdf9b
-        // FIXME: Set the mode action to be sensitive
ecdf9b
-        // FIXME: Set the effects action to be sensitive.
ecdf9b
-    }
ecdf9b
+  /**
ecdf9b
+   * Make the media capture mode actions sensitive.
ecdf9b
+   */
ecdf9b
+  private void enable_mode_change ()
ecdf9b
+  {
ecdf9b
+    var mode = this.application.lookup_action ("mode") as SimpleAction;
ecdf9b
+    mode.set_enabled (true);    
ecdf9b
 
ecdf9b
-    /**
ecdf9b
-     * Make the media capture mode actions insensitive.
ecdf9b
-     */
ecdf9b
-    private void disable_mode_change ()
ecdf9b
+    var effects = this.application.lookup_action ("effects") as SimpleAction;
ecdf9b
+    effects.set_enabled (true);    
ecdf9b
+  }
ecdf9b
+
ecdf9b
+  /**
ecdf9b
+   * Make the media capture mode actions insensitive.
ecdf9b
+   */
ecdf9b
+  private void disable_mode_change ()
ecdf9b
+  {
ecdf9b
+    var mode = this.application.lookup_action ("mode") as SimpleAction;
ecdf9b
+    mode.set_enabled (false);    
ecdf9b
+
ecdf9b
+    /* Allow changing the effects while recording a video */
ecdf9b
+    if (current_mode != MediaMode.VIDEO)
ecdf9b
     {
ecdf9b
-        // FIXME: Set the mode action to be sensitive
ecdf9b
-        // FIXME: Set the effects action to be insensitive.
ecdf9b
+      var effects = this.application.lookup_action ("effects") as SimpleAction;
ecdf9b
+      effects.set_enabled (false);    
ecdf9b
+      if (is_effects_selector_active)
ecdf9b
+      {
ecdf9b
+        effects_toggle_button.set_active (false);
ecdf9b
+      }
ecdf9b
     }
ecdf9b
+  }
ecdf9b
 
ecdf9b
   /**
ecdf9b
    * Set the capture resolution, based on the current capture mode.
ecdf9b
@@ -966,7 +980,6 @@ public class Cheese.MainWindow : Gtk.ApplicationWindow
ecdf9b
     {
ecdf9b
       is_bursting = true;
ecdf9b
       this.disable_mode_change ();
ecdf9b
-      // FIXME: Set the effects action to be inactive.
ecdf9b
       take_action_button_label.label  = "" + _("Stop _Taking Pictures") + "";
ecdf9b
       take_action_button.tooltip_text = _("Stop taking pictures");
ecdf9b
       burst_take_photo ();
ecdf9b
-- 
ecdf9b
1.8.2.1
ecdf9b