summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--openbox/config.c9
-rw-r--r--openbox/config.h2
-rw-r--r--openbox/focus_cycle_popup.c7
3 files changed, 15 insertions, 3 deletions
diff --git a/openbox/config.c b/openbox/config.c
index cc86ce7c..6282bf85 100644
--- a/openbox/config.c
+++ b/openbox/config.c
@@ -44,6 +44,7 @@ StrutPartial config_margins;
gchar *config_theme;
gboolean config_theme_keepborder;
+guint config_theme_window_list_icon_size;
gchar *config_title_layout;
@@ -602,6 +603,13 @@ static void parse_theme(xmlNodePtr node, gpointer d)
config_theme_keepborder = obt_parse_node_bool(n);
if ((n = obt_parse_find_node(node, "animateIconify")))
config_animate_iconify = obt_parse_node_bool(n);
+ if ((n = obt_parse_find_node(node, "windowListIconSize"))) {
+ config_theme_window_list_icon_size = obt_parse_node_int(n);
+ if (config_theme_window_list_icon_size < 16)
+ config_theme_window_list_icon_size = 16;
+ else if (config_theme_window_list_icon_size > 96)
+ config_theme_window_list_icon_size = 96;
+ }
n = obt_parse_find_node(node, "font");
while (n) {
@@ -962,6 +970,7 @@ void config_startup(ObtParseInst *i)
config_animate_iconify = TRUE;
config_title_layout = g_strdup("NLIMC");
config_theme_keepborder = TRUE;
+ config_theme_window_list_icon_size = 36;
config_font_activewindow = NULL;
config_font_inactivewindow = NULL;
diff --git a/openbox/config.h b/openbox/config.h
index cc5fa89a..248f97b3 100644
--- a/openbox/config.h
+++ b/openbox/config.h
@@ -132,6 +132,8 @@ extern gboolean config_theme_keepborder;
extern gchar *config_title_layout;
/*! Animate windows iconifying and restoring */
extern gboolean config_animate_iconify;
+/*! Size of icons in focus switching dialogs */
+extern guint config_theme_window_list_icon_size;
/*! The font for the active window's title */
extern RrFont *config_font_activewindow;
diff --git a/openbox/focus_cycle_popup.c b/openbox/focus_cycle_popup.c
index 3feac6ab..c7921fa9 100644
--- a/openbox/focus_cycle_popup.c
+++ b/openbox/focus_cycle_popup.c
@@ -23,6 +23,7 @@
#include "screen.h"
#include "focus.h"
#include "openbox.h"
+#include "config.h"
#include "window.h"
#include "event.h"
#include "render/render.h"
@@ -30,16 +31,16 @@
#include <X11/Xlib.h>
#include <glib.h>
+/* Size of the icons, which can appear inside or outside of a hilite box */
+#define ICON_SIZE config_theme_window_list_icon_size
/* Size of the hilite box around a window's icon */
-#define HILITE_SIZE 40
+#define HILITE_SIZE (ICON_SIZE + 2*HILITE_OFFSET)
/* Width of the outer ring around the hilite box */
#define HILITE_WIDTH 2
/* Space between the outer ring around the hilite box and the icon inside it */
#define HILITE_MARGIN 1
/* Total distance from the edge of the hilite box to the icon inside it */
#define HILITE_OFFSET (HILITE_WIDTH + HILITE_MARGIN)
-/* Size of the icons, which can appear inside or outside of a hilite box */
-#define ICON_SIZE (HILITE_SIZE - 2*HILITE_OFFSET)
/* Margin area around the outside of the dialog */
#define OUTSIDE_BORDER 3
/* Margin area around the text */