Hello community,

here is the log from the commit of package slick-greeter for openSUSE:Factory 
checked in at 2017-06-09 15:58:40
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/slick-greeter (Old)
 and      /work/SRC/openSUSE:Factory/.slick-greeter.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "slick-greeter"

Fri Jun  9 15:58:40 2017 rev:2 rq:502495 version:1.0.6

Changes:
--------
--- /work/SRC/openSUSE:Factory/slick-greeter/slick-greeter.changes      
2017-05-31 12:17:23.468313348 +0200
+++ /work/SRC/openSUSE:Factory/.slick-greeter.new/slick-greeter.changes 
2017-06-09 15:58:41.840745290 +0200
@@ -1,0 +2,10 @@
+Fri Jun  9 07:16:28 UTC 2017 - sor.ale...@meowr.ru
+
+- Update to version 1.0.6 (changes since 1.0.4):
+  * backgrounds: Fix determination of what to display as a
+    background.
+  * Fix prompt display in GTK+ 3.20 or newer.
+  * Background: If no user background is set/used, fallback to the
+    system background.
+
+-------------------------------------------------------------------
@@ -4 +14 @@
-- Update to version 1.4.2:
+- Update to version 1.0.4:

Old:
----
  slick-greeter-1.0.4.tar.gz

New:
----
  slick-greeter-1.0.6.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ slick-greeter.spec ++++++
--- /var/tmp/diff_new_pack.ThlGWL/_old  2017-06-09 15:58:42.872599654 +0200
+++ /var/tmp/diff_new_pack.ThlGWL/_new  2017-06-09 15:58:42.876599090 +0200
@@ -18,7 +18,7 @@
 
 %define _name   lightdm-slick-greeter
 Name:           slick-greeter
-Version:        1.0.4
+Version:        1.0.6
 Release:        0
 Summary:        The slick-looking login screen application
 License:        GPL-3.0 and CC-BY-SA-3.0

++++++ slick-greeter-1.0.4.tar.gz -> slick-greeter-1.0.6.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/slick-greeter-1.0.4/README.md 
new/slick-greeter-1.0.6/README.md
--- old/slick-greeter-1.0.4/README.md   2017-05-23 15:33:36.000000000 +0200
+++ new/slick-greeter-1.0.6/README.md   2017-05-30 15:59:53.000000000 +0200
@@ -1,6 +1,8 @@
 
 A slick-looking LightDM greeter
 
+![Slick Greeter](https://www.linuxmint.com/tmp/blog/3254/thumb_slick.png)
+
 # Configuration
 
 - The default configuration is stored in dconf under the schema 
x.dm.slick-greeter.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/slick-greeter-1.0.4/configure.ac 
new/slick-greeter-1.0.6/configure.ac
--- old/slick-greeter-1.0.4/configure.ac        2017-05-23 15:33:36.000000000 
+0200
+++ new/slick-greeter-1.0.6/configure.ac        2017-05-30 15:59:53.000000000 
+0200
@@ -2,7 +2,7 @@
 
 dnl Process this file with autoconf to produce a configure script.
 
-AC_INIT(slick-greeter, 1.0.4)
+AC_INIT(slick-greeter, 1.0.6)
 AC_CONFIG_MACRO_DIR(m4)
 AM_INIT_AUTOMAKE([1.11 no-dist-gzip dist-xz foreign subdir-objects])
 AM_PROG_CC_C_O
@@ -39,6 +39,16 @@
 AC_SUBST(GETTEXT_PACKAGE)
 
 dnl ###########################################################################
+dnl Check for GTK version - 3.20
+dnl ###########################################################################
+
+PKG_CHECK_MODULES(GTK_3_20_0, gtk+-3.0 >= 3.20.0 , gtk_check_pass=yes, 
gtk_check_pass=no)
+if test x$gtk_check_pass = xyes ; then
+  AM_VALAFLAGS="$AM_VALAFLAGS -D HAVE_GTK_3_20_0"
+  AC_SUBST([AM_VALAFLAGS])
+fi
+
+dnl ###########################################################################
 dnl Files to generate
 dnl ###########################################################################
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/slick-greeter-1.0.4/data/x.dm.slick-greeter.gschema.xml 
new/slick-greeter-1.0.6/data/x.dm.slick-greeter.gschema.xml
--- old/slick-greeter-1.0.4/data/x.dm.slick-greeter.gschema.xml 2017-05-23 
15:33:36.000000000 +0200
+++ new/slick-greeter-1.0.6/data/x.dm.slick-greeter.gschema.xml 2017-05-30 
15:59:53.000000000 +0200
@@ -3,7 +3,7 @@
   <schema id="x.dm.slick-greeter" path="/x/dm/slick-greeter/">
     <key name="background" type="s">
       <default>''</default>
-      <summary>Background file to use, either an image path or a color (e.g. 
#772953)</summary>
+      <summary>Background file to use</summary>
     </key>
     <key name="background-color" type="s">
       <default>'#000000'</default>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/slick-greeter-1.0.4/debian/changelog 
new/slick-greeter-1.0.6/debian/changelog
--- old/slick-greeter-1.0.4/debian/changelog    2017-05-23 15:33:36.000000000 
+0200
+++ new/slick-greeter-1.0.6/debian/changelog    2017-05-30 15:59:53.000000000 
+0200
@@ -1,3 +1,21 @@
+slick-greeter (1.0.6) sonya; urgency=medium
+
+  [ Michael Webster ]
+  * Fix prompt display in gtk3 > 3.20
+
+  [ Clement Lefebvre ]
+  * Background: If no user background is set/used, fallback to system 
background.
+  * Update README.md
+
+ -- Clement Lefebvre <r...@linuxmint.com>  Tue, 30 May 2017 14:59:12 +0100
+
+slick-greeter (1.0.5) sonya; urgency=medium
+
+  [ Michael Webster ]
+  * backgrounds: Fix determination of what to display as a background, broken 
as a result of d2a7122d731c0f19f502a9efba1feee651bcfa7c
+
+ -- Clement Lefebvre <r...@linuxmint.com>  Thu, 25 May 2017 15:07:22 +0100
+
 slick-greeter (1.0.4) sonya; urgency=medium
 
   [ leigh123linux ]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/slick-greeter-1.0.4/src/Makefile.am 
new/slick-greeter-1.0.6/src/Makefile.am
--- old/slick-greeter-1.0.4/src/Makefile.am     2017-05-23 15:33:36.000000000 
+0200
+++ new/slick-greeter-1.0.6/src/Makefile.am     2017-05-30 15:59:53.000000000 
+0200
@@ -48,6 +48,7 @@
 logo_generator_CFLAGS = $(slick_greeter_CFLAGS)
 
 slick_greeter_VALAFLAGS = \
+       $(AM_VALAFLAGS) \
        --debug \
        --pkg posix \
        --pkg gtk+-3.0 \
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/slick-greeter-1.0.4/src/background.vala 
new/slick-greeter-1.0.6/src/background.vala
--- old/slick-greeter-1.0.4/src/background.vala 2017-05-23 15:33:36.000000000 
+0200
+++ new/slick-greeter-1.0.6/src/background.vala 2017-05-30 15:59:53.000000000 
+0200
@@ -394,8 +394,74 @@
         GRID,
     }
 
-    public string default_background { get; set; default = 
UGSettings.get_string (UGSettings.KEY_BACKGROUND_COLOR); }
-    public string? current_background { get; set; default = null; }
+    /* Fallback color - shown upon first startup, until an async background 
loader finishes,
+     * or until a user background or default background is loaded.
+     */
+    private bool draw_user_backgrounds = UGSettings.get_boolean 
(UGSettings.KEY_DRAW_USER_BACKGROUNDS);
+
+    private string _fallback_color = null;
+    public string fallback_color {
+        get {
+            if (_fallback_color == null)
+            {
+                var settings_color = UGSettings.get_string 
(UGSettings.KEY_BACKGROUND_COLOR);
+                var color = Gdk.RGBA ();
+
+                if (settings_color == "" || !color.parse (settings_color))
+                {
+                    settings_color = "#000000";
+                }
+
+                _fallback_color = settings_color;
+            }
+
+            return _fallback_color;
+        }
+    }
+
+    private string _system_background;
+    public string? system_background {
+        get {
+            if (_system_background == null)
+            {
+                var system_bg = UGSettings.get_string 
(UGSettings.KEY_BACKGROUND);
+
+                if (system_bg == "")
+                {
+                    system_bg = fallback_color;
+                }
+
+                _system_background = system_bg;
+            }
+
+            return _system_background;
+        }
+    }
+
+    /* Current background - whatever the background object is or should be 
showing right now.
+     * This could be a simple color or a file name - the BackgroundLoader 
takes care of deciding
+     * how to deal with it, we just ensure whatever we're sending is valid.
+     */
+
+    private string _current_background;
+    public string? current_background {
+        get { return _current_background; }
+
+        set {
+            if (value == null || value == "")
+            {
+                _current_background = system_background;
+            } else
+            {
+                _current_background = value;
+            }
+
+            reload ();
+        }
+
+        default = fallback_color;
+    }
+
     public bool draw_grid { get; set; default = true; }
     public double alpha { get; private set; default = 1.0; }
     public Gdk.RGBA average_color { get { return current.average_color; } }
@@ -426,8 +492,6 @@
 
         resize_mode = Gtk.ResizeMode.QUEUE;
         draw_grid = UGSettings.get_boolean (UGSettings.KEY_DRAW_GRID);
-        set_logo (UGSettings.get_string (UGSettings.KEY_LOGO), 
UGSettings.get_string (UGSettings.KEY_BACKGROUND_LOGO));
-
         loaders = new HashTable<string?, BackgroundLoader> (str_hash, 
str_equal);
 
         show ();
@@ -438,9 +502,9 @@
         this.target_surface = target_surface;
 
         timer = new AnimateTimer (AnimateTimer.ease_in_out, 700);
-        timer.animate.connect (animate_cb);
 
-        notify["current-background"].connect (() => { reload (); });
+        set_logo (UGSettings.get_string (UGSettings.KEY_LOGO), 
UGSettings.get_string (UGSettings.KEY_BACKGROUND_LOGO));
+        timer.animate.connect (animate_cb);
     }
 
     public void set_logo (string version_logo, string background_logo)
@@ -489,12 +553,17 @@
 
     public override void size_allocate (Gtk.Allocation allocation)
     {
+        if (!get_realized ())
+        {
+            return;
+        }
+
         var resized = allocation.height != get_allocated_height () || 
allocation.width != get_allocated_width ();
 
         base.size_allocate (allocation);
 
         /* Regenerate backgrounds */
-        if (timer != null && resized)
+        if (resized)
         {
             debug ("Regenerating backgrounds");
             loaders.remove_all ();
@@ -629,7 +698,7 @@
     private BackgroundLoader load_background (string? filename)
     {
         if (filename == null)
-            filename = default_background;
+            filename = fallback_color;
 
         var b = loaders.lookup (filename);
         if (b == null)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/slick-greeter-1.0.4/src/greeter-list.vala 
new/slick-greeter-1.0.6/src/greeter-list.vala
--- old/slick-greeter-1.0.4/src/greeter-list.vala       2017-05-23 
15:33:36.000000000 +0200
+++ new/slick-greeter-1.0.6/src/greeter-list.vala       2017-05-30 
15:59:53.000000000 +0200
@@ -623,6 +623,10 @@
         focus_prompt ();
         entry_displayed_done ();
         mode = Mode.ENTRY;
+
+#if HAVE_GTK_3_20_0
+        queue_allocate ();
+#endif
     }
 
     protected void select_entry (PromptBox entry, double direction, bool 
do_scroll = true)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/slick-greeter-1.0.4/src/prompt-box.vala 
new/slick-greeter-1.0.6/src/prompt-box.vala
--- old/slick-greeter-1.0.4/src/prompt-box.vala 2017-05-23 15:33:36.000000000 
+0200
+++ new/slick-greeter-1.0.6/src/prompt-box.vala 2017-05-30 15:59:53.000000000 
+0200
@@ -263,6 +263,28 @@
         last_row = start_row;
     }
 
+#if HAVE_GTK_3_20_0
+    private int round_to_grid (int size)
+    {
+        var num_grids = size / grid_size;
+        var remainder = size % grid_size;
+        if (remainder > 0)
+            num_grids += 1;
+        num_grids = int.max (num_grids, 3);
+        return num_grids * grid_size;
+    }
+
+    public override void get_preferred_height (out int min, out int nat)
+    {
+        base.get_preferred_height (out min, out nat);
+        min = round_to_grid (min + GreeterList.BORDER * 2) - 
GreeterList.BORDER * 2;
+        nat = round_to_grid (nat + GreeterList.BORDER * 2) - 
GreeterList.BORDER * 2;
+
+        if (position <= -1 || position >= 1)
+            min = nat = grid_size;
+    }
+#endif
+
     public void set_zone (Gtk.Widget zone)
     {
         this.zone = zone;
@@ -319,7 +341,23 @@
     public void clear ()
     {
         prompt_visibility = PromptVisibility.HIDDEN;
-        foreach_prompt_widget ((w) => { w.destroy (); });
+
+        /* Hold a ref while removing the prompt widgets -
+         * if we just do w.destroy() we get this warning:
+         * CRITICAL: pango_layout_get_cursor_pos: assertion 'index >= 0 && 
index <= layout->length' failed
+         * by GtkWidget's screen-changed signal being called on
+         * widget when we destroy it.
+         */
+        foreach_prompt_widget ((w) => {
+#if HAVE_GTK_3_20_0
+            w.ref ();
+            w.get_parent().remove(w);
+            w.unref ();
+#else
+            w.destroy ();
+#endif
+        });
+
         reset_last_row ();
         has_errors = false;
     }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/slick-greeter-1.0.4/src/user-list.vala 
new/slick-greeter-1.0.6/src/user-list.vala
--- old/slick-greeter-1.0.4/src/user-list.vala  2017-05-23 15:33:36.000000000 
+0200
+++ new/slick-greeter-1.0.6/src/user-list.vala  2017-05-30 15:59:53.000000000 
+0200
@@ -601,7 +601,9 @@
                 change_background_timeout = Idle.add 
(change_background_timeout_cb);
         }
         else
+        {
             change_background_timeout_cb ();
+        }
     }
 
     protected static int user_list_compare_entry (PromptBox a, PromptBox b)


Reply via email to