[Xfce4-commits] <terminal:master> Fix broken background image when compositing is disabled (bug #5645).

Nick Schermer noreply at xfce.org
Tue Oct 6 15:50:02 CEST 2009


Updating branch refs/heads/master
         to e8244292fa3d24314f54883fa1b97c3e2e85cd43 (commit)
       from 13986de3ae7033affaf977ec3c1ae55c467606e5 (commit)

commit e8244292fa3d24314f54883fa1b97c3e2e85cd43
Author: Nick Schermer <nick at xfce.org>
Date:   Tue Oct 6 15:48:41 2009 +0200

    Fix broken background image when compositing is disabled (bug #5645).

 Terminal.glade             |    4 ++--
 terminal/terminal-screen.c |   28 +++++++++-------------------
 2 files changed, 11 insertions(+), 21 deletions(-)

diff --git a/Terminal.glade b/Terminal.glade
index 8704b8a..0091a0c 100644
--- a/Terminal.glade
+++ b/Terminal.glade
@@ -1978,10 +1978,10 @@ when double clicking:</property>
     </data>
   </object>
   <object class="GtkAdjustment" id="background-darkness">
-    <property name="lower">0.050000000000000003</property>
+    <property name="lower">0</property>
     <property name="upper">1</property>
     <property name="step_increment">0.01</property>
-    <property name="page_increment">0.10000000000000001</property>
+    <property name="page_increment">0.1</property>
   </object>
   <object class="GtkSizeGroup" id="sizegroup1">
     <widgets>
diff --git a/terminal/terminal-screen.c b/terminal/terminal-screen.c
index 1a07c0e..446b44f 100644
--- a/terminal/terminal-screen.c
+++ b/terminal/terminal-screen.c
@@ -994,7 +994,8 @@ terminal_screen_timer_background (gpointer user_data)
   TerminalBackground   background_mode;
   GdkPixbuf           *image;
   gdouble              background_darkness;
-  gboolean             transparent = FALSE;
+  gdouble              saturation = 1.0;
+  guint16              opacity = 0xffff;
 
   terminal_return_val_if_fail (TERMINAL_IS_SCREEN (screen), FALSE);
   terminal_return_val_if_fail (VTE_IS_TERMINAL (screen->terminal), FALSE);
@@ -1003,7 +1004,6 @@ terminal_screen_timer_background (gpointer user_data)
 
   g_object_get (G_OBJECT (screen->preferences), "background-mode", &background_mode, NULL);
 
-
   if (G_UNLIKELY (background_mode == TERMINAL_BACKGROUND_IMAGE))
     {
       loader = terminal_image_loader_get ();
@@ -1026,25 +1026,15 @@ terminal_screen_timer_background (gpointer user_data)
     {
       g_object_get (G_OBJECT (screen->preferences), "background-darkness", &background_darkness, NULL);
 
-      if (gtk_widget_is_composited (GTK_WIDGET (screen)))
-        {
-          vte_terminal_set_opacity (VTE_TERMINAL (screen->terminal), 0xffff * background_darkness);
-          vte_terminal_set_background_saturation (VTE_TERMINAL (screen->terminal), 1.0);
-        }
-      else
-        {
-          vte_terminal_set_background_saturation (VTE_TERMINAL (screen->terminal), 1.0 - background_darkness);
-          vte_terminal_set_opacity (VTE_TERMINAL (screen->terminal), 0xffff);
-          transparent = TRUE;
-        }
-    }
-  else
-    {
-      vte_terminal_set_background_saturation (VTE_TERMINAL (screen->terminal), 1.0);
-      vte_terminal_set_opacity (VTE_TERMINAL (screen->terminal), 0xffff);
+      saturation = 1.0 - background_darkness;
+      opacity = 0xffff * background_darkness;
     }
 
-  vte_terminal_set_background_transparent (VTE_TERMINAL (screen->terminal), transparent);
+  vte_terminal_set_background_saturation (VTE_TERMINAL (screen->terminal), saturation);
+  vte_terminal_set_opacity (VTE_TERMINAL (screen->terminal), opacity);
+  vte_terminal_set_background_transparent (VTE_TERMINAL (screen->terminal),
+                                           background_mode == TERMINAL_BACKGROUND_TRANSPARENT
+                                           && !gtk_widget_is_composited (GTK_WIDGET (screen)));
 
   screen->last_size_change = time (NULL);
 



More information about the Xfce4-commits mailing list