mirror of
https://github.com/labwc/labwc.git
synced 2026-02-05 04:06:33 -05:00
Refactor title height to use 'titlebar.height' from themerc
This commit is contained in:
parent
0acdf041b8
commit
47a80fc4f2
4 changed files with 18 additions and 8 deletions
|
|
@ -47,6 +47,10 @@ labwc-config(5).
|
|||
Vertical padding size, used for spacing out elements in the window decorations.
|
||||
Default is 3.
|
||||
|
||||
*titlebar.height*
|
||||
Window title bar height.
|
||||
Default equals the vertical font extents of the title plus 2x padding.height.
|
||||
|
||||
*menu.items.padding.x*
|
||||
Horizontal padding of menu text entries in pixels.
|
||||
Default is 7.
|
||||
|
|
@ -202,11 +206,6 @@ with the respective titlebar colors. For example: "close-active.png"
|
|||
|
||||
The handle is the window edge decoration at the bottom of the window.
|
||||
|
||||
# DERIVED DIMENSIONS
|
||||
|
||||
The window title bar height is equal to the vertical font extents of the title.
|
||||
Padding will be added to this later.
|
||||
|
||||
# SEE ALSO
|
||||
|
||||
labwc(1), labwc-config(5), labwc-actions(5)
|
||||
|
|
|
|||
|
|
@ -9,6 +9,10 @@
|
|||
border.width: 1
|
||||
padding.height: 3
|
||||
|
||||
# The following options has no default, but fallbacks back to
|
||||
# font-height + 2x padding.height if not set.
|
||||
# titlebar.height:
|
||||
|
||||
# window border
|
||||
window.active.border.color: #dddad6
|
||||
window.inactive.border.color: #f6f5f4
|
||||
|
|
|
|||
|
|
@ -20,6 +20,7 @@ enum lab_justification {
|
|||
struct theme {
|
||||
int border_width;
|
||||
int padding_height;
|
||||
int title_height;
|
||||
int menu_overlap_x;
|
||||
int menu_overlap_y;
|
||||
|
||||
|
|
@ -92,7 +93,6 @@ struct theme {
|
|||
struct lab_data_buffer *corner_top_right_inactive_normal;
|
||||
|
||||
/* not set in rc.xml/themerc, but derived from font & padding_height */
|
||||
int title_height;
|
||||
int osd_window_switcher_item_height;
|
||||
};
|
||||
|
||||
|
|
|
|||
11
src/theme.c
11
src/theme.c
|
|
@ -213,6 +213,7 @@ theme_builtin(struct theme *theme)
|
|||
{
|
||||
theme->border_width = 1;
|
||||
theme->padding_height = 3;
|
||||
theme->title_height = INT_MIN;
|
||||
theme->menu_overlap_x = 0;
|
||||
theme->menu_overlap_y = 0;
|
||||
|
||||
|
|
@ -291,6 +292,9 @@ entry(struct theme *theme, const char *key, const char *value)
|
|||
if (match_glob(key, "padding.height")) {
|
||||
theme->padding_height = atoi(value);
|
||||
}
|
||||
if (match_glob(key, "titlebar.height")) {
|
||||
theme->title_height = atoi(value);
|
||||
}
|
||||
if (match_glob(key, "menu.items.padding.x")) {
|
||||
theme->menu_item_padding_x = atoi(value);
|
||||
}
|
||||
|
|
@ -750,8 +754,11 @@ create_corners(struct theme *theme)
|
|||
static void
|
||||
post_processing(struct theme *theme)
|
||||
{
|
||||
theme->title_height = font_height(&rc.font_activewindow)
|
||||
+ 2 * theme->padding_height;
|
||||
int h = font_height(&rc.font_activewindow);
|
||||
if (theme->title_height < h) {
|
||||
theme->title_height = h + 2 * theme->padding_height;
|
||||
}
|
||||
|
||||
theme->osd_window_switcher_item_height = font_height(&rc.font_osd)
|
||||
+ 2 * theme->osd_window_switcher_item_padding_y
|
||||
+ 2 * theme->osd_window_switcher_item_active_border_width;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue