From de9e31c028e8c2799b15d0db9aca02dbcc1c75d9 Mon Sep 17 00:00:00 2001 From: Matthias Clasen Date: Thu, 14 Mar 2019 01:20:43 -0400 Subject: Add a default implementation of strength This is too simple to be useful, but its a start. --- gtk/gtkpasswordentry.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/gtk/gtkpasswordentry.c b/gtk/gtkpasswordentry.c index 433eeb4c9f..bfb025fc33 100644 --- a/gtk/gtkpasswordentry.c +++ b/gtk/gtkpasswordentry.c @@ -558,10 +558,17 @@ update_strength (GObject *object, { GtkPasswordEntryPrivate *priv = gtk_password_entry_get_instance_private (entry); - int strength = 0; + int strength = -1; g_signal_emit (entry, signals[GET_STRENGTH], 0, &strength); + if (strength == -1) + { + const char *text = gtk_editable_get_text (GTK_EDITABLE (priv->entry)); + + strength = CLAMP (0, 100, 10 * g_utf8_strlen (text, -1)); + } + gtk_level_bar_set_value (GTK_LEVEL_BAR (priv->strength_widget), strength); } -- cgit v1.2.1