aboutsummaryrefslogtreecommitdiff
path: root/include/sway
diff options
context:
space:
mode:
Diffstat (limited to 'include/sway')
-rw-r--r--include/sway/config.h9
-rw-r--r--include/sway/tree/container.h9
2 files changed, 16 insertions, 2 deletions
diff --git a/include/sway/config.h b/include/sway/config.h
index 02ae3b63..345f26a0 100644
--- a/include/sway/config.h
+++ b/include/sway/config.h
@@ -304,7 +304,7 @@ struct sway_config {
enum sway_container_layout default_orientation;
enum sway_container_layout default_layout;
char *font;
- int font_height;
+ size_t font_height;
// Flags
bool focus_follows_mouse;
@@ -461,7 +461,12 @@ struct bar_config *default_bar_config(void);
void free_bar_config(struct bar_config *bar);
-int get_font_text_height(char *font);
+/**
+ * Updates the value of config->font_height based on the max title height
+ * reported by each container. If recalculate is true, the containers will
+ * recalculate their heights before reporting.
+ */
+void config_find_font_height(bool recalculate);
/* Global config singleton. */
extern struct sway_config *config;
diff --git a/include/sway/tree/container.h b/include/sway/tree/container.h
index b508f310..b07af72c 100644
--- a/include/sway/tree/container.h
+++ b/include/sway/tree/container.h
@@ -89,6 +89,7 @@ struct sway_container {
struct wlr_texture *title_focused_inactive;
struct wlr_texture *title_unfocused;
struct wlr_texture *title_urgent;
+ size_t title_height;
struct {
struct wl_signal destroy;
@@ -198,4 +199,12 @@ struct sway_container *container_flatten(struct sway_container *container);
void container_update_title_textures(struct sway_container *container);
+/**
+ * Calculate the container's title_height property.
+ */
+void container_calculate_title_height(struct sway_container *container);
+
+void container_update_title(struct sway_container *container,
+ const char *new_title);
+
#endif