diff options
author | Ray Strode <rstrode@redhat.com> | 2008-06-25 17:48:32 -0400 |
---|---|---|
committer | Ray Strode <rstrode@redhat.com> | 2008-06-25 17:48:32 -0400 |
commit | ba2cd476b9b3d885f912d407c2740ca641b8a1c4 (patch) | |
tree | 0c9b7a7fb2db53bab16eaabdaaa0933aa9b14bc0 | |
parent | 19c8002f9c2f256033b00b094f3ae1ec1deb526d (diff) | |
download | plymouth-ba2cd476b9b3d885f912d407c2740ca641b8a1c4.tar.gz plymouth-ba2cd476b9b3d885f912d407c2740ca641b8a1c4.tar.xz plymouth-ba2cd476b9b3d885f912d407c2740ca641b8a1c4.zip |
Change text pulser to use space instead of line drawing characters to prevent
scramblage at font change
-rw-r--r-- | src/libplybootsplash/ply-text-pulser.c | 56 |
1 files changed, 5 insertions, 51 deletions
diff --git a/src/libplybootsplash/ply-text-pulser.c b/src/libplybootsplash/ply-text-pulser.c index 3872d60..d11b1db 100644 --- a/src/libplybootsplash/ply-text-pulser.c +++ b/src/libplybootsplash/ply-text-pulser.c @@ -53,10 +53,6 @@ #define FRAMES_PER_SECOND 10 #endif -#ifndef INDICATOR_STRING -#define INDICATOR_STRING "██████" -#endif - #define NUMBER_OF_INDICATOR_COLUMNS 6 struct _ply_text_pulser @@ -100,66 +96,24 @@ ply_text_pulser_free (ply_text_pulser_t *pulser) } static void -draw_frame (ply_text_pulser_t *pulser, - int column, - int row) -{ - int i; - - ply_window_set_text_cursor_position (pulser->window, - column, row); - /* Top of frame - */ - write (STDOUT_FILENO, "┌", strlen ("┌")); - for (i = 0; i < pulser->number_of_columns - 2; i++) - write (STDOUT_FILENO, "─", strlen ("─")); - write (STDOUT_FILENO, "┐", strlen ("┐")); - - ply_window_set_text_cursor_position (pulser->window, - column, row + 1); - /* Middle - */ - write (STDOUT_FILENO, "│", strlen ("│")); - - ply_window_set_text_cursor_position (pulser->window, - column + pulser->number_of_columns - 1, - row + 1); - write (STDOUT_FILENO, "│", strlen ("│")); - - ply_window_set_text_cursor_position (pulser->window, - column, row + 2); - /* Bottom of frame - */ - write (STDOUT_FILENO, "└", strlen ("└")); - - for (i = 0; i < pulser->number_of_columns - 2; i++) - write (STDOUT_FILENO, "─", strlen ("─")); - write (STDOUT_FILENO, "┘", strlen ("┘")); -} - -static void -draw_indicator (ply_text_pulser_t *pulser) -{ - write (STDOUT_FILENO, INDICATOR_STRING, strlen (INDICATOR_STRING)); -} - -static void animate_at_time (ply_text_pulser_t *pulser, double time) { ply_window_set_mode (pulser->window, PLY_WINDOW_MODE_TEXT); - draw_frame (pulser, pulser->column, pulser->row); - ply_window_set_text_cursor_position (pulser->window, pulser->column + pulser->spinner_position, pulser->row + 1); + ply_window_set_background_color (pulser->window, PLY_WINDOW_COLOR_DEFAULT); write (STDOUT_FILENO, " ", strlen (" ")); pulser->spinner_position = ((pulser->number_of_columns - 2) - NUMBER_OF_INDICATOR_COLUMNS - 1) * (.5 * sin (time) + .5) + 2; ply_window_set_text_cursor_position (pulser->window, pulser->column + pulser->spinner_position, pulser->row + 1); - draw_indicator (pulser); + + ply_window_set_background_color (pulser->window, PLY_WINDOW_COLOR_WHITE); + write (STDOUT_FILENO, " ", strlen (" ")); + ply_window_set_background_color (pulser->window, PLY_WINDOW_COLOR_DEFAULT); } static void |