- show details plugin on --hide-splash so people can see why the splash got

hidden.
This commit is contained in:
Ray Strode 2008-11-07 00:48:56 +00:00
parent 3d3b244448
commit fa37a14ba8
2 changed files with 73 additions and 2 deletions

View File

@ -0,0 +1,64 @@
diff -up plymouth-0.6.0/src/main.c.fix-switchroot-failed plymouth-0.6.0/src/main.c
--- plymouth-0.6.0/src/main.c.fix-switchroot-failed 2008-11-06 10:43:41.000000000 -0500
+++ plymouth-0.6.0/src/main.c 2008-11-06 18:12:51.000000000 -0500
@@ -77,6 +77,7 @@ static ply_window_t *create_window (stat
const char *tty_name);
static bool attach_to_running_session (state_t *state);
+static void on_escape_pressed (state_t *state);
static void
on_session_output (state_t *state,
@@ -171,8 +172,11 @@ on_newroot (state_t *state,
chdir(root_dir);
chroot(".");
chdir("/");
- ply_progress_load_cache (state->progress);
- ply_boot_splash_root_mounted (state->boot_splash);
+ if (state->boot_splash != NULL)
+ {
+ ply_progress_load_cache (state->progress);
+ ply_boot_splash_root_mounted (state->boot_splash);
+ }
}
static void
@@ -356,6 +360,8 @@ on_hide_splash (state_t *state)
{
ply_trace ("hiding boot splash");
+ state->showing_details = false;
+ on_escape_pressed (state);
if (state->boot_splash != NULL)
ply_boot_splash_hide (state->boot_splash);
@@ -384,11 +390,12 @@ on_quit (state_t *state,
if (state->boot_splash != NULL)
{
if (!retain_splash)
- on_hide_splash (state);
- else
- quit_splash (state);
- ply_boot_splash_free (state->boot_splash);
- state->boot_splash = NULL;
+ {
+ if (state->boot_splash != NULL)
+ ply_boot_splash_hide (state->boot_splash);
+ }
+
+ quit_splash (state);
}
ply_trace ("exiting event loop");
ply_event_loop_exit (state->loop, 0);
diff -up plymouth-0.6.0/src/plugins/splash/details/plugin.c.fix-switchroot-failed plymouth-0.6.0/src/plugins/splash/details/plugin.c
--- plymouth-0.6.0/src/plugins/splash/details/plugin.c.fix-switchroot-failed 2008-11-06 18:25:43.000000000 -0500
+++ plymouth-0.6.0/src/plugins/splash/details/plugin.c 2008-11-06 18:25:47.000000000 -0500
@@ -231,8 +231,6 @@ static void
uninitialize_window (ply_window_t *window,
ply_boot_splash_plugin_t *plugin)
{
- ply_window_clear_screen (window);
-
ply_window_set_keyboard_input_handler (window, NULL, NULL);
ply_window_set_backspace_handler (window, NULL, NULL);
ply_window_set_enter_handler (window, NULL, NULL);

View File

@ -5,12 +5,14 @@
Summary: Plymouth Graphical Boot Animation and Logger
Name: plymouth
Version: 0.6.0
Release: 0.2008.11.06.1%{?dist}
Release: 0.2008.11.06.2%{?dist}
License: GPLv2+
Group: System Environment/Base
Source0: http://freedesktop.org/software/plymouth/releases/%{name}-%{version}.tar.bz2
Source1: boot-duration
Patch0: plymouth-allow-passing-plugin.patch
Patch1: plymouth-0.6.0-fix-switchroot-failed.patch
URL: http://freedesktop.org/software/plymouth/releases
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
@ -152,7 +154,8 @@ where the graphical plugin's dependencies are undesirable.
%prep
%setup -q
%patch0 -p1
%patch0 -p1 -b .allow-passing-plugin
%patch1 -p1 -b .fix-switchroot-failed
%build
%configure --enable-tracing --disable-tests --without-boot-entry \
@ -305,6 +308,10 @@ fi
%defattr(-, root, root)
%changelog
* Thu Nov 6 2008 Ray Strode <rstrode@redhat.com> 0.6.0-0.2008.11.06.2
- show details plugin on --hide-splash so people can see why the splash
got hidden.
* Thu Nov 6 2008 Ray Strode <rstrode@redhat.com> 0.6.0-0.2008.11.06.1
- Don't exit on plymouth --show-splash after sulogin
- Properly retake console after that --show-splash