[Xfce4-commits] <parole:bluesabre/gtk3> Use new logo, no resize events

Sean Davis noreply at xfce.org
Wed Aug 21 13:46:01 CEST 2013


Updating branch refs/heads/bluesabre/gtk3
         to 757525ea245d009e685218c2f80535f486fb942d (commit)
       from 080c45bce1b7666633f721c86934f3a28d01554c (commit)

commit 757525ea245d009e685218c2f80535f486fb942d
Author: Sean Davis <smd.seandavis at gmail.com>
Date:   Wed Aug 21 07:44:51 2013 -0400

    Use new logo, no resize events

 data/interfaces/parole.ui |   19 ++++---------------
 src/parole-player.c       |   45 +++------------------------------------------
 2 files changed, 7 insertions(+), 57 deletions(-)

diff --git a/data/interfaces/parole.ui b/data/interfaces/parole.ui
index d938c4d..b897553 100644
--- a/data/interfaces/parole.ui
+++ b/data/interfaces/parole.ui
@@ -546,6 +546,8 @@
                 </child>
                 <child>
                   <object class="GtkEventBox" id="content_area">
+                    <property name="width_request">128</property>
+                    <property name="height_request">128</property>
                     <property name="visible">True</property>
                     <property name="can_focus">False</property>
                     <signal name="button-press-event" handler="parole_player_gst_widget_button_press" swapped="no"/>
@@ -656,23 +658,10 @@
                           </packing>
                         </child>
                         <child>
-                          <object class="GtkScrolledWindow" id="logo_window">
+                          <object class="GtkImage" id="logo">
                             <property name="visible">True</property>
                             <property name="can_focus">False</property>
-                            <child>
-                              <object class="GtkViewport" id="viewport1">
-                                <property name="visible">True</property>
-                                <property name="can_focus">False</property>
-                                <property name="shadow_type">none</property>
-                                <child>
-                                  <object class="GtkImage" id="logo">
-                                    <property name="visible">True</property>
-                                    <property name="can_focus">False</property>
-                                    <property name="stock">gtk-missing-image</property>
-                                  </object>
-                                </child>
-                              </object>
-                            </child>
+                            <property name="stock">gtk-missing-image</property>
                           </object>
                           <packing>
                             <property name="expand">True</property>
diff --git a/src/parole-player.c b/src/parole-player.c
index d16997b..4853390 100644
--- a/src/parole-player.c
+++ b/src/parole-player.c
@@ -333,8 +333,6 @@ struct ParolePlayerPrivate
     GtkWidget		*fullscreen_image;
     GdkPixbuf       *logo;
     GtkWidget       *logo_image;
-    GtkWidget       *logo_window;
-    gboolean        scale_logo;
     
     GtkWidget		*hbox_infobar;
     GtkWidget		*infobar;
@@ -896,7 +894,7 @@ parole_player_show_audiobox (ParolePlayer *player)
 {
     /* Only show the audiobox if we're sure there's no video playing and 
        visualizations are disabled. */
-    gtk_widget_hide(player->priv->logo_window);
+    gtk_widget_hide(player->priv->logo_image);
     if (!gst_get_has_video ( PAROLE_GST(player->priv->gst) ) &&
         !gst_get_has_vis   ( PAROLE_GST(player->priv->gst) ) )
     {
@@ -1453,7 +1451,7 @@ parole_player_stopped (ParolePlayer *player)
 
 	gtk_widget_hide(player->priv->videobox);
 	gtk_widget_hide(player->priv->audiobox);
-	gtk_widget_show_all(player->priv->logo_window);
+	gtk_widget_show(player->priv->logo_image);
 	
 	gchar dur_text[128];
     get_time_string (dur_text, 0);
@@ -2776,43 +2774,11 @@ on_content_area_size_allocate (GtkWidget *widget, GtkAllocation *allocation, Par
 
     if ( gtk_widget_get_realized (widget) )
     {	
-	player->priv->scale_logo = TRUE;
 	
 	gtk_widget_queue_draw (widget);
 	}
 }
 
-static gboolean
-on_scrollbar_resize (GtkWidget *widget, GdkEventExpose *ev, ParolePlayer *player) {
-    player->priv->scale_logo = TRUE;
-    
-    gtk_widget_queue_draw (player->priv->logo_image);
-}
-
-static gboolean
-on_logo_draw (GtkWidget *widget, GdkEventExpose *ev, ParolePlayer *player) {
-    GtkAllocation *allocation = g_new0 (GtkAllocation, 1);
-    static GdkPixbuf *pix = NULL;
-    
-    gtk_widget_get_allocation(player->priv->logo_window, allocation);
-    
-    if (player->priv->scale_logo)
-    {
-	if (pix)
-	    g_object_unref (pix);
-	pix = gdk_pixbuf_scale_simple (player->priv->logo,
-				       allocation->width,
-				       allocation->height,
-				       GDK_INTERP_BILINEAR);
-    gtk_image_set_from_pixbuf(GTK_IMAGE(player->priv->logo_image), pix);
-	player->priv->scale_logo = FALSE;
-    }
-
-    g_free(allocation);
-    
-    return FALSE;
-}
-
 gboolean
 parole_player_configure_event_cb (GtkWidget *widget, GdkEventConfigure *ev, ParolePlayer *player)
 {
@@ -2827,8 +2793,6 @@ parole_player_configure_event_cb (GtkWidget *widget, GdkEventConfigure *ev, Paro
 		      NULL);
     }
     
-    player->priv->scale_logo = TRUE;
-    
     return FALSE;
 }
 
@@ -2973,7 +2937,6 @@ parole_player_init (ParolePlayer *player)
     g_setenv("PULSE_PROP_media.role", "video", TRUE);
     
     player->priv = PAROLE_PLAYER_GET_PRIVATE (player);
-    player->priv->scale_logo = TRUE;
 
     player->priv->client_id = NULL;
     player->priv->sm_client = NULL;
@@ -3142,11 +3105,9 @@ parole_player_init (ParolePlayer *player)
             G_CALLBACK (parole_player_gst_widget_motion_notify_event), player);
 		      
     /* Background Image */
-    player->priv->logo_window = GTK_WIDGET (gtk_builder_get_object (builder, "logo_window"));
-    g_signal_connect(player->priv->logo_window, "size-allocate", G_CALLBACK(on_scrollbar_resize), player);
     player->priv->logo = gdk_pixbuf_new_from_file (g_strdup_printf ("%s/parole.png", PIXMAPS_DIR), NULL);
     player->priv->logo_image = GTK_WIDGET (gtk_builder_get_object (builder, "logo"));
-    g_signal_connect(player->priv->logo_image, "draw", G_CALLBACK(on_logo_draw), player);
+    gtk_image_set_from_pixbuf(GTK_IMAGE(player->priv->logo_image), player->priv->logo);
     
     /* Video Box */
     player->priv->videobox = GTK_WIDGET (gtk_builder_get_object (builder, "video_output"));


More information about the Xfce4-commits mailing list