diff options
Diffstat (limited to 'src/core')
-rw-r--r-- | src/core/prefs.c | 36 | ||||
-rw-r--r-- | src/core/screen.c | 4 |
2 files changed, 39 insertions, 1 deletions
diff --git a/src/core/prefs.c b/src/core/prefs.c index 2c93cf19..b9f0362b 100644 --- a/src/core/prefs.c +++ b/src/core/prefs.c @@ -53,6 +53,8 @@ #define KEY_GENERAL_COMPOSITOR_FAST_ALT_TAB "compositing-fast-alt-tab" #define KEY_GENERAL_CENTER_NEW_WINDOWS "center-new-windows" #define KEY_GENERAL_ICON_SIZE "icon-size" +#define KEY_GENERAL_ALT_TAB_MAX_COLUMNS "alt-tab-max-columns" +#define KEY_GENERAL_ALT_TAB_EXPAND_TO_FIT_TITLE "alt-tab-expand-to-fit-title" #define KEY_COMMAND_SCHEMA "org.mate.Marco.keybinding-commands" #define KEY_COMMAND_PREFIX "command-" @@ -116,6 +118,8 @@ static gboolean mate_animations = TRUE; static char *cursor_theme = NULL; static int cursor_size = 24; static int icon_size = META_DEFAULT_ICON_SIZE; +static int alt_tab_max_columns = META_DEFAULT_ALT_TAB_MAX_COLUMNS; +static gboolean alt_tab_expand_to_fit_title = META_DEFAULT_ALT_TAB_EXPAND_TO_FIT_TITLE; static gboolean use_force_compositor_manager = FALSE; static gboolean force_compositor_manager = FALSE; static gboolean compositing_manager = FALSE; @@ -439,6 +443,12 @@ static MetaBoolPreference preferences_bool[] = &allow_top_tiling, FALSE, }, + { "alt-tab-expand-to-fit-title", + KEY_GENERAL_SCHEMA, + META_PREF_ALT_TAB_EXPAND_TO_FIT_TITLE, + &alt_tab_expand_to_fit_title, + META_DEFAULT_ALT_TAB_EXPAND_TO_FIT_TITLE, + }, { NULL, NULL, 0, NULL, FALSE }, }; @@ -520,6 +530,14 @@ static MetaIntPreference preferences_int[] = &icon_size, META_MIN_ICON_SIZE, META_MAX_ICON_SIZE, META_DEFAULT_ICON_SIZE, }, + { "alt-tab-max-columns", + KEY_GENERAL_SCHEMA, + META_PREF_ALT_TAB_MAX_COLUMNS, + &alt_tab_max_columns, + META_MIN_ALT_TAB_MAX_COLUMNS, + META_MAX_ALT_TAB_MAX_COLUMNS, + META_DEFAULT_ALT_TAB_MAX_COLUMNS, + }, { NULL, NULL, 0, NULL, 0, 0, 0, }, }; @@ -1122,6 +1140,18 @@ meta_prefs_get_icon_size (void) return icon_size; } +int +meta_prefs_get_alt_tab_max_columns (void) +{ + return alt_tab_max_columns; +} + +gboolean +meta_prefs_get_alt_tab_expand_to_fit_title (void) +{ + return alt_tab_expand_to_fit_title; +} + gboolean meta_prefs_is_in_skip_list (char *class) { @@ -1637,6 +1667,12 @@ meta_preference_to_string (MetaPreference pref) case META_PREF_ICON_SIZE: return "ICON_SIZE"; + case META_PREF_ALT_TAB_MAX_COLUMNS: + return "ALT_TAB_MAX_COLUMNS"; + + case META_PREF_ALT_TAB_EXPAND_TO_FIT_TITLE: + return "ALT_TAB_EXPAND_TO_FIT_TITLE"; + case META_PREF_COMPOSITING_MANAGER: return "COMPOSITING_MANAGER"; diff --git a/src/core/screen.c b/src/core/screen.c index 8238d291..49e50506 100644 --- a/src/core/screen.c +++ b/src/core/screen.c @@ -1398,7 +1398,8 @@ meta_screen_ensure_tab_popup (MetaScreen *screen, screen->tab_popup = meta_ui_tab_popup_new (entries, len, - 5, /* FIXME */ + meta_prefs_get_alt_tab_max_columns(), + meta_prefs_get_alt_tab_expand_to_fit_title(), border); for (i = 0; i < len; i++) @@ -1470,6 +1471,7 @@ meta_screen_ensure_workspace_popup (MetaScreen *screen) screen->tab_popup = meta_ui_tab_popup_new (entries, len, layout.cols, + FALSE, /* expand_for_titles */ BORDER_OUTLINE_WORKSPACE); g_free (entries); |