From 9214573340122dabbf5740d42e322a21977d37de Mon Sep 17 00:00:00 2001 From: sndev Date: Fri, 9 Jun 2006 22:15:11 +0000 Subject: [PATCH] * improving maximization behavior. i.e. if the window is maximized vertically, it is not denied to maximize it horizontally. * fixing some mess between basic/advanced window manipulation cfg dialogs. * fixing initial keybindings. SVN revision: 23335 --- src/bin/e_actions.c | 17 ++++++++++++++--- src/bin/e_config.c | 4 ++-- src/bin/e_int_config_desklock.c | 2 +- src/bin/e_int_config_window_manipulation.c | 4 ++-- 4 files changed, 19 insertions(+), 8 deletions(-) diff --git a/src/bin/e_actions.c b/src/bin/e_actions.c index 433af6643..9bdd87342 100644 --- a/src/bin/e_actions.c +++ b/src/bin/e_actions.c @@ -379,9 +379,19 @@ ACT_FN_GO(window_maximized_toggle) if (sscanf(params, "%20s %20s", s1, s2) == 2) { if (!strcmp(s2, "vertical")) - e_border_unmaximize(bd, E_MAXIMIZE_VERTICAL); + { + if (bd->maximized & E_MAXIMIZE_VERTICAL) + e_border_unmaximize(bd, E_MAXIMIZE_VERTICAL); + else + goto maximize; + } else if (!strcmp(s2, "horizontal")) - e_border_unmaximize(bd, E_MAXIMIZE_HORIZONTAL); + { + if (bd->maximized & E_MAXIMIZE_HORIZONTAL) + e_border_unmaximize(bd, E_MAXIMIZE_HORIZONTAL); + else + goto maximize; + } else e_border_unmaximize(bd, E_MAXIMIZE_BOTH); } @@ -390,7 +400,8 @@ ACT_FN_GO(window_maximized_toggle) } } else - { + { + maximize: if (!params) e_border_maximize(bd, e_config->maximize_policy); else diff --git a/src/bin/e_config.c b/src/bin/e_config.c index 4b8b68fae..66f8e9ea7 100644 --- a/src/bin/e_config.c +++ b/src/bin/e_config.c @@ -779,10 +779,10 @@ e_config_init(void) "window_maximized_toggle", NULL); CFG_KEYBIND(E_BINDING_CONTEXT_ANY, "F10", E_BINDING_MODIFIER_ALT, 0, - "window_maximized_toggle", "vertical"); + "window_maximized_toggle", "default vertical"); CFG_KEYBIND(E_BINDING_CONTEXT_ANY, "F10", E_BINDING_MODIFIER_CTRL, 0, - "window_maximized_toggle", "horizontal"); + "window_maximized_toggle", "default horizontal"); CFG_KEYBIND(E_BINDING_CONTEXT_ANY, "r", E_BINDING_MODIFIER_CTRL | E_BINDING_MODIFIER_ALT, 0, "window_shaded_toggle", NULL); diff --git a/src/bin/e_int_config_desklock.c b/src/bin/e_int_config_desklock.c index 8107944c7..fb48a1b2f 100644 --- a/src/bin/e_int_config_desklock.c +++ b/src/bin/e_int_config_desklock.c @@ -543,7 +543,7 @@ _load_bgs(E_Config_Dialog_Data *cfdata) _ibg_list_cb_bg_selected, cfdata, DEF_DESKLOCK_BACKGROUND); } - if ((e_config->desklock_background) && + if ((!e_config->desklock_background) || (!strcmp(e_config->desklock_background, DEF_DESKLOCK_BACKGROUND))) e_widget_ilist_selected_set(cfdata->gui.bg_list, 1); diff --git a/src/bin/e_int_config_window_manipulation.c b/src/bin/e_int_config_window_manipulation.c index c5d624391..1fa658ad9 100644 --- a/src/bin/e_int_config_window_manipulation.c +++ b/src/bin/e_int_config_window_manipulation.c @@ -99,8 +99,8 @@ _basic_apply_data(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata) /* Actually take our cfdata settings and apply them in real life */ e_config->use_auto_raise = cfdata->use_auto_raise; e_config->use_resist = cfdata->use_resist; - e_config->maximize_policy &= ~E_MAXIMIZE_TYPE; - e_config->maximize_policy &= cfdata->maximize_policy; + //e_config->maximize_policy &= ~E_MAXIMIZE_TYPE; + e_config->maximize_policy = cfdata->maximize_policy | cfdata->maximize_direction; e_config_save_queue(); return 1; /* Apply was OK */ }