]> git.ipfire.org Git - thirdparty/plymouth.git/commitdiff
[fade-throbber] Move logo opacity value to individual views
authorCharlie Brej <cbrej@cs.man.ac.uk>
Sat, 21 Nov 2009 12:35:09 +0000 (12:35 +0000)
committerCharlie Brej <cbrej@cs.man.ac.uk>
Sat, 21 Nov 2009 12:35:09 +0000 (12:35 +0000)
When the logo opacity was plugin wide, one view would change its logo, and the
others would not bother. This prevented the logo form showing up on the second
screen.

src/plugins/splash/fade-throbber/plugin.c

index d89a562fd9bdc9418b044f5967b9bf0aa4eff11d..cf9e6a10140fb5e08c63e863f1c3d189aa0dceef 100644 (file)
@@ -83,6 +83,7 @@ typedef struct
   ply_entry_t *entry;
   ply_label_t *label;
   ply_rectangle_t lock_area;
+  double logo_opacity;
 } view_t;
 
 struct _ply_boot_splash_plugin
@@ -94,7 +95,6 @@ struct _ply_boot_splash_plugin
   ply_image_t *lock_image;
   char *image_dir;
   ply_list_t *views;
-  double logo_opacity;
 
   ply_boot_splash_display_type_t state;
 
@@ -475,10 +475,10 @@ view_animate_at_time (view_t  *view,
   if (plugin->mode == PLY_BOOT_SPLASH_MODE_SHUTDOWN)
     logo_opacity = 1.0;
 
-  if (fabs (logo_opacity - plugin->logo_opacity) <= DBL_MIN)
+  if (fabs (logo_opacity - view->logo_opacity) <= DBL_MIN)
     return;
 
-  plugin->logo_opacity = logo_opacity;
+  view->logo_opacity = logo_opacity;
 
   ply_pixel_display_draw_area (view->display,
                                logo_x, logo_y,
@@ -712,7 +712,7 @@ draw_normal_view (view_t             *view,
   ply_pixel_buffer_fill_with_argb32_data_at_opacity (pixel_buffer,
                                                      &logo_area, 0, 0,
                                                      logo_data,
-                                                     plugin->logo_opacity);
+                                                     view->logo_opacity);
 }
 
 static void