Commit graph

2749 commits

Author SHA1 Message Date
Ray Strode
2693bf9ec0 ply-input-device: Handle SYN events
If the kernel falls behind a stream of input events, we currently
drop them on the floor.

It seems unlikely that this could ever happen theorhetically since we only
process keyboard events (versus, say, a high frequency stream of pointer
events, or a complex stylus device with inter-related events coming in,
in batches). Nonetheless, there is a report that suggests key events
may be getting dropped.

This commit adds support for handling the backlogged event case, and
hopefully address the bug report.
2023-12-04 23:11:05 +00:00
Ray Strode
ceb5576650 Merge branch 'config-h-fix' into 'main'
Include config.h automatically

See merge request plymouth/plymouth!254
2023-12-04 19:06:19 +00:00
Ray Strode
54fb7e1d56 Include config.h automatically
There are a few files missing #include <config.h>.

That is bad since it means those files don't get debug tracing.

This commit eliminates the pitfall by making sure the file is
included implicitly
2023-12-04 14:04:01 -05:00
Ray Strode
1b43dd504f Merge branch 'make-random-numbers-random' into 'main'
ply-utils: Add function for getting random number

See merge request plymouth/plymouth!251
2023-12-04 13:02:00 +00:00
Ray Strode
c86563b0c0 two-step: Use new ply_get_random_number function 2023-12-04 07:49:31 -05:00
Ray Strode
54b390e35c space-flares: Use new ply_get_random_number function 2023-12-04 07:49:31 -05:00
Ray Strode
75d371edef script: Use new ply_get_random_number function 2023-12-04 07:49:31 -05:00
Ray Strode
0628f3b6e2 fade-throbber: Use new ply_get_random_number function 2023-12-04 05:48:06 -05:00
Ray Strode
67204063f9 ply-utils: Add function for getting random number
rand() and srand() are we use now and it's not working out too well
because we're seeding correctly in a number of places.

This commit adds one function to do it better.

Problem spotted by @emperor06
2023-12-04 05:48:06 -05:00
Ray Strode
2c4578a1d8 Merge branch 'fixplythrobbercrash' into 'main'
ply-throbber: Only set the loop when there is none. Be more flexable if...

See merge request plymouth/plymouth!252
2023-12-04 03:01:11 +00:00
nerdopolis
78cdadc260 ply-throbber: fully stop the throbber ply_throbber_start () is called after the throbber is stopped with an end animation 2023-12-04 02:59:53 +00:00
Ray Strode
f51aea2ad1 Merge branch 'betterxkblogging' into 'main'
ply-device-manager: Better logging of what vconsole variables are read

See merge request plymouth/plymouth!248
2023-12-04 00:37:33 +00:00
nerdopolis
309398a56b ply-device-manager: Better logging of what vconsole variables are read 2023-12-04 00:36:09 +00:00
Ray Strode
add6f415d5 Merge branch 'dynamickeymapicon' into 'main'
ply-keymap-icon: Create dynamic text for the keymap name if it is not in the pre-rendered file

See merge request plymouth/plymouth!250
2023-12-04 00:24:34 +00:00
nerdopolis
9dd2116255 ply-keymap-icon: Create dynamic text for the keymap name if it is not in the pre-rendered file 2023-12-03 18:46:37 -05:00
Ray Strode
44a2c8e452 Merge branch 'parsekmsg' into 'main'
Support for displaying logs from /dev/kmsg and the console on the screen, instead of relying on the text on the VT

See merge request plymouth/plymouth!224
2023-12-02 23:33:26 +00:00
n3rdopolis
d3d0c9d650 space-flares: Get the messages from the console and ply-kmsg-reader, and use ply-terminal-emulator and ply-console-viewer to the display messages 2023-12-02 18:19:33 -05:00
n3rdopolis
d80237fad5 fade-throbber: Get the messages from the console and ply-kmsg-reader, and use ply-terminal-emulator and ply-console-viewer to the display messages 2023-12-02 18:19:33 -05:00
n3rdopolis
32b2bffd9d two-step: Get the messages from the console and ply-kmsg-reader, and use ply-terminal-emulator and ply-console-viewer to the display messages 2023-12-02 18:19:33 -05:00
n3rdopolis
f995183bd8 libply-splash-graphics: Introduce new ply-console-viewer control 2023-12-02 18:19:33 -05:00
n3rdopolis
21cdb5541a main: start ply-kmsg-reader, and fix handling ESC key when there are no VTs 2023-12-02 18:19:33 -05:00
n3rdopolis
a3cd4f9c08 Introduce ply-kmsg-reader to read kernel log messages from /dev/kmsg 2023-12-02 18:19:33 -05:00
Ray Strode
20b019a489 ply-utils: Add function for getting current kmsg log levels
We need to know two things:

1. What log level threshold to follow when showing kernel messages to
   the console

2. What log level to use if a message comes in without a log level

This commit adds a new function `ply_get_kmsg_log_levels` that
returns those two values.
2023-12-02 18:19:33 -05:00
Ray Strode
8fd5f9f249 label-freetype: Add basic support for rich text
Now that the ply-label interface supports rich text, we need to
implement it in the plugins.

This commit changes the freetype plugin to process
rich text in a rudimentary way that picks up colors, but not other
style attributes.

Based on initial work from nerdopolis
2023-12-02 18:19:33 -05:00
Ray Strode
e190f3b952 label-freetype: Handle utf-8 characters better
The plugin currently assumes all characters are 7 byte ascii.

This commit just adds a mbrtowc call around the text to
handle UTF-8 text somewhat better.
2023-12-02 18:15:38 -05:00
n3rdopolis
cc5e07c6d0 label-freetype: Support monospaced fonts 2023-12-02 18:14:42 -05:00
nerdopolis
8af62d1284 label-freetype: Allow the label size to be set and calculated even when hidden 2023-12-02 18:14:42 -05:00
nerdopolis
42f6b8513e label-pango: Add support for set_rich_text
Now that the ply-label interface supports rich text, we need to
implement it in the plugins.

This commit implements it for the pango plugin.
2023-12-02 18:14:42 -05:00
nerdopolis
06cd316a34 label-pango: Replace characters not supported by fonts with a replacement character
Using a replacement character prevents hexboxes from appearing, which can mess up alignment of monospace fonts
2023-12-02 18:14:42 -05:00
Ray Strode
d4560c71e7 ply-label: Set font before sizing label
This commit makes sure the right font is loaded before sizing the
label, so the size comes out correctly.
2023-12-02 18:14:42 -05:00
n3rdopolis
328a61cf51 ply-label: Add ply_label_set_hex_color () based off of ply_pixel_buffer_fill_with_hex_color for configuration of label text colors 2023-12-02 18:14:42 -05:00
nerdopolis
e0a8a9973b ply-label: Introduce set_rich_text_for_control () for allowing text properties like color to be set within labels 2023-12-02 18:14:42 -05:00
Ray Strode
8d9e3c0350 rich-text: Add iterator API
This commit adds a small wrapper around ply_rich_text_get_characters
to make it easier to iterate over every character in a loop.
2023-12-02 18:14:42 -05:00
Ray Strode
9637be7d88 ply-utils: Add a utf-8 string iterator API
This will make it easier to walk through a string and extract
each character.
2023-12-02 18:14:42 -05:00
nerdopolis
8729f840a4 Introduce ply-terminal-emulator to handle various console sequences from kernel logging facilities 2023-12-02 17:44:11 -05:00
n3rdopolis
53d6e5a844 libply-splash-core: Add class to handle rich text
In order to implement a terminal that supports colors and styles,
we need some way assign colors and styles to text.

This commit adds a new class ply_rich_text_t to handle that.

Code split out of ply-terminal-emulator.c by Ray Strode.
2023-12-02 17:44:10 -05:00
n3rdopolis
69e941e2d0 populate-initrd: Ensure a monospace font is in the initrd, along with fonts defined in the theme. 2023-12-02 17:44:08 -05:00
Ray Strode
f4834a4b0d check-format: Trim weird line that's getting added to output 2023-12-02 17:44:06 -05:00
Ray Strode
5a720533b8 Merge branch 'label-fixes' into 'main'
Label fixes

See merge request plymouth/plymouth!247
2023-11-30 18:53:39 +00:00
Ray Strode
42d07913a0 label-pango: Handle NULL text better 2023-11-30 13:44:41 -05:00
Ray Strode
e436b94df7 label: Fix uncrustify spacing error in label 2023-11-30 13:43:53 -05:00
Ray Strode
6c9c6c767c Merge branch 'features/system-reset-mode' into 'main'
Add system-reset splash mode

Closes #148

See merge request plymouth/plymouth!246
2023-11-24 20:11:37 +00:00
Victor Tran
6f9744cb32 Add system-reset splash mode 2023-11-24 20:11:36 +00:00
Ray Strode
68ad99794c Merge branch 'renametilebackground' into 'main'
two-step scaled background fixes

See merge request plymouth/plymouth!245
2023-11-23 01:16:13 +00:00
nerdopolis
0cf3ac51e5 spinfinity: Make the new ScaleBackgroundImage option more visible to theme editors 2023-11-22 13:59:41 -05:00
nerdopolis
fc25cfe93c two-step: Rename ScaleBackgroundWallpaper to ScaleBackgroundImage 2023-11-22 13:59:41 -05:00
nerdopolis
18af314509 two-step: Check for background.png before background-tile.png first, now that the background may not always be tiled 2023-11-22 13:59:36 -05:00
Ray Strode
5b5b133d5a Merge branch 'scaletwostepbackground' into 'main'
two-step: Support a ScaleBackgroundWallpaper to scale the background instead of tiling it

See merge request plymouth/plymouth!243
2023-11-22 15:23:05 +00:00
nerdopolis
ce869227f2 two-step: Support a ScaleBackgroundWallpaper to scale the background instead of tiling it 2023-11-21 22:20:12 -05:00
Ray Strode
4a6fcf0b52 Merge branch 'drm-guess-device-scale' into 'main'
drm: Guess device-scale when using simpledrm

See merge request plymouth/plymouth!242
2023-08-31 10:14:36 +00:00