From 1c7bf4c44b2747389434b50155f0383f8152f0c4 Mon Sep 17 00:00:00 2001 From: Ray Strode Date: Jun 25 2008 19:57:22 +0000 Subject: - Make "Password: " show up correctly in text plugin --- diff --git a/make-ask-for-password-work.patch b/make-ask-for-password-work.patch new file mode 100644 index 0000000..6d85717 --- /dev/null +++ b/make-ask-for-password-work.patch @@ -0,0 +1,61 @@ +commit a33a76fc145c35e2407a90ab7f4efbf5f99ddd01 +Author: Ray Strode +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; + } + diff --git a/plymouth.spec b/plymouth.spec index 9b323dd..ad07ec5 100644 --- a/plymouth.spec +++ b/plymouth.spec @@ -1,7 +1,7 @@ Summary: Plymouth Graphical Boot Animation and Logger Name: plymouth Version: 0.4.0 -Release: 3%{?dist} +Release: 4%{?dist} License: GPLv2+ Group: System Environment/Base Source0: http://freedesktop.org/software/plymouth/releases/%{name}-%{version}.tar.bz2 @@ -16,6 +16,7 @@ Requires: elfutils Patch0: fix-harmless-spew.patch Patch1: make-reset-work.patch +Patch2: make-ask-for-password-work.patch %description Plymouth provides an attractive graphical boot animation in @@ -68,6 +69,7 @@ spins in the shape of an infinity sign. %setup -q %patch0 -p1 -b .fix-harmless-spew %patch1 -p1 -b .make-reset-work +%patch2 -p1 -b .make-ask-for-password-work %build %configure --enable-tracing --disable-tests --without-boot-entry \ @@ -168,6 +170,9 @@ fi %{_libdir}/plymouth/spinfinity.so %changelog +* Wed Jun 25 2008 Ray Strode - 0.4.0-4 +- Make "Password: " show up correctly in text plugin + * Wed Jun 25 2008 Ray Strode - 0.4.0-3 - Require elfutils (bug 452797)