diff options
Diffstat (limited to 'perl-install/interactive')
-rw-r--r-- | perl-install/interactive/gtk.pm | 41 |
1 files changed, 7 insertions, 34 deletions
diff --git a/perl-install/interactive/gtk.pm b/perl-install/interactive/gtk.pm index ecdccad69..a4f13a4b7 100644 --- a/perl-install/interactive/gtk.pm +++ b/perl-install/interactive/gtk.pm @@ -549,16 +549,13 @@ sub create_widget { } }; } else { - $w = Gtk2::Entry->new; - $w->signal_connect(changed => $onchange->(sub { - if ($e->{weakness_check}) { - require authentication; - my $password_weakness = authentication::compute_password_weakness($w->get_text); - $w->set_icon_from_pixbuf('GTK_ENTRY_ICON_SECONDARY', get_weakness_icon($password_weakness)); - $w->set_icon_tooltip_text('GTK_ENTRY_ICON_SECONDARY', get_weakness_tooltip($password_weakness)); - } - $w->get_text; - })); + if ($e->{weakness_check}) { + $w = gtknew('WeaknessCheckEntry'); + } + else { + $w = Gtk2::Entry->new; + } + $w->signal_connect(changed => $onchange->(sub { $w->get_text })); $w->signal_connect(focus_in_event => sub { $w->select_region(0, -1) }); $w->signal_connect(focus_out_event => sub { $w->select_region(0, 0) }); $set = sub { $w->set_text($_[0]) if $_[0] ne $w->get_text }; @@ -971,28 +968,4 @@ sub kill { @tempory::objects = (); } -sub get_weakness_icon { - my ($password_weakness) = @_; - my %weakness_icon = ( - 1 => gtknew('Pixbuf', file => 'security-low'), - 2 => gtknew('Pixbuf', file => 'security-low'), - 3 => gtknew('Pixbuf', file => 'security-medium'), - 4 => gtknew('Pixbuf', file => 'security-strong'), - 5 => gtknew('Pixbuf', file => 'security-strong')); - my $weakness_icon = $weakness_icon{$password_weakness} || return undef; - $weakness_icon; -} - -sub get_weakness_tooltip { - my ($password_weakness) = @_; - my %weakness_tooltip = ( - 1 => N("Password is trivial to guess"), - 2 => N("Password is trivial to guess"), - 3 => N("Password should resist to basic attacks"), - 4 => N("Password seems secure"), - 5 => N("Password seems secure")); - my $weakness_tooltip = $weakness_tooltip{$password_weakness} || return undef; - return $weakness_tooltip; -} - 1; |