mirror of
https://gitlab.freedesktop.org/plymouth/plymouth.git
synced 2026-05-07 04:58:00 +02:00
Merge branch 'text-n-details-splash-fixes' into 'master'
Text and details splash fixes See merge request plymouth/plymouth!137
This commit is contained in:
commit
fbe2b79da5
7 changed files with 24 additions and 8 deletions
|
|
@ -43,7 +43,7 @@
|
|||
#include "ply-utils.h"
|
||||
|
||||
#ifndef CLEAR_SCREEN_SEQUENCE
|
||||
#define CLEAR_SCREEN_SEQUENCE "\033[2J"
|
||||
#define CLEAR_SCREEN_SEQUENCE "\033[2J\033[3J"
|
||||
#endif
|
||||
|
||||
#ifndef CLEAR_LINE_SEQUENCE
|
||||
|
|
@ -150,7 +150,7 @@ ply_text_display_set_cursor_position (ply_text_display_t *display,
|
|||
void
|
||||
ply_text_display_clear_screen (ply_text_display_t *display)
|
||||
{
|
||||
if (ply_is_tracing ())
|
||||
if (ply_is_tracing_to_terminal ())
|
||||
return;
|
||||
|
||||
ply_terminal_write (display->terminal,
|
||||
|
|
|
|||
|
|
@ -61,6 +61,7 @@ typedef struct
|
|||
struct _ply_logger
|
||||
{
|
||||
int output_fd;
|
||||
bool output_fd_is_terminal;
|
||||
char *filename;
|
||||
|
||||
char *buffer;
|
||||
|
|
@ -229,6 +230,7 @@ ply_logger_new (void)
|
|||
logger = calloc (1, sizeof(ply_logger_t));
|
||||
|
||||
logger->output_fd = -1;
|
||||
logger->output_fd_is_terminal = false;
|
||||
logger->filename = NULL;
|
||||
logger->is_enabled = true;
|
||||
logger->tracing_is_enabled = false;
|
||||
|
|
@ -363,6 +365,7 @@ ply_logger_set_output_fd (ply_logger_t *logger,
|
|||
assert (logger != NULL);
|
||||
|
||||
logger->output_fd = fd;
|
||||
logger->output_fd_is_terminal = isatty(fd);
|
||||
}
|
||||
|
||||
int
|
||||
|
|
@ -580,6 +583,15 @@ ply_logger_is_tracing_enabled (ply_logger_t *logger)
|
|||
|
||||
return logger->tracing_is_enabled != false;
|
||||
}
|
||||
|
||||
bool
|
||||
ply_logger_is_tracing_to_terminal (ply_logger_t *logger)
|
||||
{
|
||||
assert (logger != NULL);
|
||||
|
||||
return logger->tracing_is_enabled && logger->output_fd_is_terminal;
|
||||
}
|
||||
|
||||
#endif /* PLY_ENABLE_TRACING */
|
||||
|
||||
/* vim: set ts=4 sw=4 expandtab autoindent cindent cino={.5s,(0: */
|
||||
|
|
|
|||
|
|
@ -81,6 +81,7 @@ ply_logger_t *ply_logger_get_error_default (void);
|
|||
#ifdef PLY_ENABLE_TRACING
|
||||
void ply_logger_toggle_tracing (ply_logger_t *logger);
|
||||
bool ply_logger_is_tracing_enabled (ply_logger_t *logger);
|
||||
bool ply_logger_is_tracing_to_terminal (ply_logger_t *logger);
|
||||
|
||||
#define ply_logger_trace(logger, format, args ...) \
|
||||
do \
|
||||
|
|
@ -113,6 +114,7 @@ bool ply_logger_is_tracing_enabled (ply_logger_t *logger);
|
|||
#define ply_logger_trace(logger, format, args ...)
|
||||
#define ply_logger_toggle_tracing(logger)
|
||||
#define ply_logger_is_tracing_enabled(logger) (false)
|
||||
#define ply_logger_is_tracing_to_terminal(logger) (false)
|
||||
#endif /* PLY_ENABLE_TRACING */
|
||||
|
||||
/* convenience macros
|
||||
|
|
@ -140,6 +142,8 @@ bool ply_logger_is_tracing_enabled (ply_logger_t *logger);
|
|||
ply_logger_toggle_tracing (ply_logger_get_error_default ())
|
||||
#define ply_is_tracing() \
|
||||
ply_logger_is_tracing_enabled (ply_logger_get_error_default ())
|
||||
#define ply_is_tracing_to_terminal() \
|
||||
ply_logger_is_tracing_to_terminal (ply_logger_get_error_default ())
|
||||
#define ply_trace(format, args ...) \
|
||||
ply_logger_trace (ply_logger_get_error_default (), format, ## args)
|
||||
|
||||
|
|
|
|||
|
|
@ -1976,7 +1976,7 @@ initialize_environment (state_t *state)
|
|||
state->entry_buffer = ply_buffer_new ();
|
||||
state->messages = ply_list_new ();
|
||||
|
||||
if (!ply_is_tracing ())
|
||||
if (!ply_is_tracing_to_terminal ())
|
||||
redirect_standard_io_to_dev_null ();
|
||||
|
||||
ply_trace ("Making sure " PLYMOUTH_RUNTIME_DIR " exists");
|
||||
|
|
|
|||
|
|
@ -237,8 +237,10 @@ add_text_display (ply_boot_splash_plugin_t *plugin,
|
|||
view = view_new (plugin, display);
|
||||
|
||||
terminal = ply_text_display_get_terminal (view->display);
|
||||
if (ply_terminal_open (terminal))
|
||||
if (ply_terminal_open (terminal)) {
|
||||
ply_text_display_clear_screen (view->display);
|
||||
ply_terminal_activate_vt (terminal);
|
||||
}
|
||||
|
||||
ply_list_append_data (plugin->views, view);
|
||||
|
||||
|
|
|
|||
|
|
@ -233,11 +233,10 @@ view_hide (view_t *view)
|
|||
|
||||
terminal = ply_text_display_get_terminal (view->display);
|
||||
|
||||
ply_terminal_reset_colors (terminal);
|
||||
ply_text_display_set_background_color (view->display, PLY_TERMINAL_COLOR_DEFAULT);
|
||||
ply_text_display_clear_screen (view->display);
|
||||
ply_text_display_show_cursor (view->display);
|
||||
|
||||
ply_terminal_reset_colors (terminal);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -239,11 +239,10 @@ view_hide (view_t *view)
|
|||
|
||||
terminal = ply_text_display_get_terminal (view->display);
|
||||
|
||||
ply_terminal_reset_colors (terminal);
|
||||
ply_text_display_set_background_color (view->display, PLY_TERMINAL_COLOR_DEFAULT);
|
||||
ply_text_display_clear_screen (view->display);
|
||||
ply_text_display_show_cursor (view->display);
|
||||
|
||||
ply_terminal_reset_colors (terminal);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue