diff options
Diffstat (limited to 'src/libplybootsplash')
-rw-r--r-- | src/libplybootsplash/ply-boot-splash.c | 10 | ||||
-rw-r--r-- | src/libplybootsplash/ply-console.c | 12 | ||||
-rw-r--r-- | src/libplybootsplash/ply-console.h | 4 | ||||
-rw-r--r-- | src/libplybootsplash/ply-renderer.c | 5 |
4 files changed, 17 insertions, 14 deletions
diff --git a/src/libplybootsplash/ply-boot-splash.c b/src/libplybootsplash/ply-boot-splash.c index 72ee7f02..5ba1bc1d 100644 --- a/src/libplybootsplash/ply-boot-splash.c +++ b/src/libplybootsplash/ply-boot-splash.c | |||
@@ -169,8 +169,14 @@ on_keyboard_input (ply_boot_splash_t *splash, | |||
169 | case KEY_CTRL_T: | 169 | case KEY_CTRL_T: |
170 | ply_trace ("toggle text mode!"); | 170 | ply_trace ("toggle text mode!"); |
171 | splash->should_force_text_mode = !splash->should_force_text_mode; | 171 | splash->should_force_text_mode = !splash->should_force_text_mode; |
172 | ply_console_force_text_mode (splash->console, | 172 | |
173 | splash->should_force_text_mode); | 173 | if (splash->should_force_text_mode) |
174 | { | ||
175 | ply_console_set_mode (splash->console, PLY_CONSOLE_MODE_TEXT); | ||
176 | ply_console_ignore_mode_changes (splash->console, true); | ||
177 | } | ||
178 | else | ||
179 | ply_console_ignore_mode_changes (splash->console, false); | ||
174 | ply_trace ("text mode toggled!"); | 180 | ply_trace ("text mode toggled!"); |
175 | return; | 181 | return; |
176 | 182 | ||
diff --git a/src/libplybootsplash/ply-console.c b/src/libplybootsplash/ply-console.c index 7fb92980..fb5a86db 100644 --- a/src/libplybootsplash/ply-console.c +++ b/src/libplybootsplash/ply-console.c | |||
@@ -68,7 +68,7 @@ struct _ply_console | |||
68 | 68 | ||
69 | uint32_t is_open : 1; | 69 | uint32_t is_open : 1; |
70 | uint32_t is_watching_for_vt_changes : 1; | 70 | uint32_t is_watching_for_vt_changes : 1; |
71 | uint32_t should_force_text_mode : 1; | 71 | uint32_t should_ignore_mode_changes : 1; |
72 | }; | 72 | }; |
73 | 73 | ||
74 | static bool ply_console_open_device (ply_console_t *console); | 74 | static bool ply_console_open_device (ply_console_t *console); |
@@ -106,8 +106,8 @@ ply_console_set_mode (ply_console_t *console, | |||
106 | assert (console != NULL); | 106 | assert (console != NULL); |
107 | assert (mode == PLY_CONSOLE_MODE_TEXT || mode == PLY_CONSOLE_MODE_GRAPHICS); | 107 | assert (mode == PLY_CONSOLE_MODE_TEXT || mode == PLY_CONSOLE_MODE_GRAPHICS); |
108 | 108 | ||
109 | if (console->should_force_text_mode) | 109 | if (console->should_ignore_mode_changes) |
110 | mode = PLY_CONSOLE_MODE_TEXT; | 110 | return; |
111 | 111 | ||
112 | switch (mode) | 112 | switch (mode) |
113 | { | 113 | { |
@@ -124,10 +124,10 @@ ply_console_set_mode (ply_console_t *console, | |||
124 | } | 124 | } |
125 | 125 | ||
126 | void | 126 | void |
127 | ply_console_force_text_mode (ply_console_t *console, | 127 | ply_console_ignore_mode_changes (ply_console_t *console, |
128 | bool should_force) | 128 | bool should_ignore) |
129 | { | 129 | { |
130 | console->should_force_text_mode = should_force; | 130 | console->should_ignore_mode_changes = should_ignore; |
131 | } | 131 | } |
132 | 132 | ||
133 | static void | 133 | static void |
diff --git a/src/libplybootsplash/ply-console.h b/src/libplybootsplash/ply-console.h index 36263bbc..4b45c86e 100644 --- a/src/libplybootsplash/ply-console.h +++ b/src/libplybootsplash/ply-console.h | |||
@@ -49,8 +49,8 @@ void ply_console_close (ply_console_t *console); | |||
49 | void ply_console_set_mode (ply_console_t *console, | 49 | void ply_console_set_mode (ply_console_t *console, |
50 | ply_console_mode_t mode); | 50 | ply_console_mode_t mode); |
51 | 51 | ||
52 | void ply_console_force_text_mode (ply_console_t *console, | 52 | void ply_console_ignore_mode_changes (ply_console_t *console, |
53 | bool should_force); | 53 | bool should_ignore); |
54 | 54 | ||
55 | int ply_console_get_fd (ply_console_t *console); | 55 | int ply_console_get_fd (ply_console_t *console); |
56 | int ply_console_get_active_vt (ply_console_t *console); | 56 | int ply_console_get_active_vt (ply_console_t *console); |
diff --git a/src/libplybootsplash/ply-renderer.c b/src/libplybootsplash/ply-renderer.c index 5410feb8..08a246ba 100644 --- a/src/libplybootsplash/ply-renderer.c +++ b/src/libplybootsplash/ply-renderer.c | |||
@@ -220,6 +220,7 @@ ply_renderer_open (ply_renderer_t *renderer) | |||
220 | */ | 220 | */ |
221 | const char *known_plugins[] = | 221 | const char *known_plugins[] = |
222 | { | 222 | { |
223 | PLYMOUTH_PLUGIN_PATH "renderers/x11.so", | ||
223 | PLYMOUTH_PLUGIN_PATH "renderers/drm.so", | 224 | PLYMOUTH_PLUGIN_PATH "renderers/drm.so", |
224 | PLYMOUTH_PLUGIN_PATH "renderers/frame-buffer.so", | 225 | PLYMOUTH_PLUGIN_PATH "renderers/frame-buffer.so", |
225 | NULL | 226 | NULL |
@@ -299,10 +300,6 @@ ply_renderer_flush_head (ply_renderer_t *renderer, | |||
299 | assert (renderer->plugin_interface != NULL); | 300 | assert (renderer->plugin_interface != NULL); |
300 | assert (head != NULL); | 301 | assert (head != NULL); |
301 | 302 | ||
302 | if (ply_console_get_active_vt (renderer->console) != | ||
303 | ply_terminal_get_vt_number (renderer->terminal)) | ||
304 | return; | ||
305 | |||
306 | renderer->plugin_interface->flush_head (renderer->backend, head); | 303 | renderer->plugin_interface->flush_head (renderer->backend, head); |
307 | } | 304 | } |
308 | 305 | ||