1
0
forked from rpms/plymouth

- Make "Password: " show up correctly in text plugin

This commit is contained in:
Ray Strode 2008-06-25 19:57:22 +00:00
parent ec4aeec827
commit 1c7bf4c44b
2 changed files with 67 additions and 1 deletions

View File

@ -0,0 +1,61 @@
commit a33a76fc145c35e2407a90ab7f4efbf5f99ddd01
Author: Ray Strode <rstrode@redhat.com>
Date: Wed Jun 25 15:54:07 2008 -0400
Properly stop animation when asking for password in text plugin
diff --git a/src/splash-plugins/text/plugin.c b/src/splash-plugins/text/plugin.c
index 82b17a0..ae8de18 100644
--- a/src/splash-plugins/text/plugin.c
+++ b/src/splash-plugins/text/plugin.c
@@ -105,6 +105,7 @@ start_animation (ply_boot_splash_plugin_t *plugin)
assert (plugin->loop != NULL);
ply_window_clear_screen (plugin->window);
+ ply_window_hide_text_cursor (plugin->window);
window_width = ply_window_get_number_of_text_columns (plugin->window);
window_height = ply_window_get_number_of_text_rows (plugin->window);
@@ -160,7 +161,8 @@ on_enter (ply_boot_splash_plugin_t *plugin,
ply_answer_with_string (plugin->pending_password_answer, line);
plugin->keyboard_input_is_hidden = false;
plugin->pending_password_answer = NULL;
- write (STDOUT_FILENO, CLEAR_LINE_SEQUENCE, strlen (CLEAR_LINE_SEQUENCE));
+
+ start_animation (plugin);
}
}
@@ -189,9 +191,6 @@ show_splash_screen (ply_boot_splash_plugin_t *plugin,
plugin->window = window;
- ply_window_clear_screen (plugin->window);
- ply_window_hide_text_cursor (plugin->window);
-
start_animation (plugin);
return true;
@@ -240,9 +239,21 @@ void
ask_for_password (ply_boot_splash_plugin_t *plugin,
ply_answer_t *answer)
{
+ int window_width, window_height;
+
plugin->pending_password_answer = answer;
- write (STDOUT_FILENO, "\nPassword: ", strlen ("\nPassword: "));
+ stop_animation (plugin);
+ ply_window_clear_screen (plugin->window);
+
+ window_width = ply_window_get_number_of_text_columns (plugin->window);
+ window_height = ply_window_get_number_of_text_rows (plugin->window);
+
+ ply_window_set_text_cursor_position (plugin->window,
+ window_width / 2 - strlen ("Password: "),
+ window_height / 2);
+ write (STDOUT_FILENO, "Password: ", strlen ("Password: "));
+ ply_window_show_text_cursor (plugin->window);
plugin->keyboard_input_is_hidden = true;
}

View File

@ -1,7 +1,7 @@
Summary: Plymouth Graphical Boot Animation and Logger Summary: Plymouth Graphical Boot Animation and Logger
Name: plymouth Name: plymouth
Version: 0.4.0 Version: 0.4.0
Release: 3%{?dist} Release: 4%{?dist}
License: GPLv2+ License: GPLv2+
Group: System Environment/Base Group: System Environment/Base
Source0: http://freedesktop.org/software/plymouth/releases/%{name}-%{version}.tar.bz2 Source0: http://freedesktop.org/software/plymouth/releases/%{name}-%{version}.tar.bz2
@ -16,6 +16,7 @@ Requires: elfutils
Patch0: fix-harmless-spew.patch Patch0: fix-harmless-spew.patch
Patch1: make-reset-work.patch Patch1: make-reset-work.patch
Patch2: make-ask-for-password-work.patch
%description %description
Plymouth provides an attractive graphical boot animation in Plymouth provides an attractive graphical boot animation in
@ -68,6 +69,7 @@ spins in the shape of an infinity sign.
%setup -q %setup -q
%patch0 -p1 -b .fix-harmless-spew %patch0 -p1 -b .fix-harmless-spew
%patch1 -p1 -b .make-reset-work %patch1 -p1 -b .make-reset-work
%patch2 -p1 -b .make-ask-for-password-work
%build %build
%configure --enable-tracing --disable-tests --without-boot-entry \ %configure --enable-tracing --disable-tests --without-boot-entry \
@ -168,6 +170,9 @@ fi
%{_libdir}/plymouth/spinfinity.so %{_libdir}/plymouth/spinfinity.so
%changelog %changelog
* Wed Jun 25 2008 Ray Strode <rstrode@redhat.com> - 0.4.0-4
- Make "Password: " show up correctly in text plugin
* Wed Jun 25 2008 Ray Strode <rstrode@redhat.com> - 0.4.0-3 * Wed Jun 25 2008 Ray Strode <rstrode@redhat.com> - 0.4.0-3
- Require elfutils (bug 452797) - Require elfutils (bug 452797)