mirror of
https://github.com/weechat/weechat.git
synced 2026-07-07 10:13:12 +02:00
core: register built-in "light" theme
Add a small core-theme-builtin.c module containing the core
contribution to the "light" theme: 33 overrides for
"weechat.bar.{status,title}.color_*" and "weechat.color.*" tuned for
light-background terminals.
theme_builtin_init() builds a hashtable from the static entry table and
calls theme_register("light", overrides), then frees the temporary
hashtable. It is called once from weechat_init right after theme_init.
Calling it twice is a no-op (the registry merges identical keys).
Default option values are NOT changed. Existing configs render exactly
as before; users opt in with "/theme apply light".
Add TEST(CoreTheme, BuiltinInit) covering:
- the "light" theme is absent before theme_builtin_init();
- it is present after, with >= 30 overrides;
- three spot-checked values match the source table;
- calling theme_builtin_init() a second time does not change the
override count.
Plugins contribute their own "light" overrides via weechat_theme_register
in subsequent commits.
This commit is contained in:
@@ -55,4 +55,7 @@ extern void theme_free (struct t_theme *theme);
|
||||
extern void theme_init (void);
|
||||
extern void theme_end (void);
|
||||
|
||||
/* implemented in core-theme-builtin.c */
|
||||
extern void theme_builtin_init (void);
|
||||
|
||||
#endif /* WEECHAT_THEME_H */
|
||||
|
||||
Reference in New Issue
Block a user