resizable dialogs are now compatible with the maximize action and maximize options in border menu

ticket #1950


SVN revision: 80581
This commit is contained in:
Mike Blumenkrantz 2012-12-10 08:20:52 +00:00
parent bcb8765cbf
commit 9605a4fb85
2 changed files with 10 additions and 2 deletions

View File

@ -543,6 +543,7 @@ ACT_FN_GO(window_fullscreen, )
ACT_FN_GO(window_maximized_toggle, )
{
E_Border *bd;
Eina_Bool resize = EINA_FALSE;
if (!obj) obj = E_OBJECT(e_border_focused_get());
if (!obj) return;
@ -553,8 +554,11 @@ ACT_FN_GO(window_maximized_toggle, )
}
bd = (E_Border *)obj;
/* internal dialog which is resizable */
if (bd->internal && (bd->client.netwm.type == ECORE_X_WINDOW_TYPE_DIALOG))
resize = (bd->client.icccm.max_w != bd->client.icccm.min_w);
if ((!bd->lock_user_maximize) && (!bd->fullscreen) &&
((bd->client.netwm.type == ECORE_X_WINDOW_TYPE_NORMAL) ||
(resize || (bd->client.netwm.type == ECORE_X_WINDOW_TYPE_NORMAL) ||
(bd->client.netwm.type == ECORE_X_WINDOW_TYPE_UNKNOWN)))
{
if ((bd->maximized & E_MAXIMIZE_TYPE) != E_MAXIMIZE_NONE)

View File

@ -619,6 +619,7 @@ _e_border_menu_cb_window_pre(void *data, E_Menu *m __UNUSED__, E_Menu_Item *mi)
E_Menu *subm;
E_Menu_Item *submi;
E_Border *bd;
Eina_Bool resize = EINA_FALSE;
if (!(bd = data)) return;
@ -627,7 +628,10 @@ _e_border_menu_cb_window_pre(void *data, E_Menu *m __UNUSED__, E_Menu_Item *mi)
e_menu_item_submenu_set(mi, subm);
e_object_unref(E_OBJECT(subm));
if ((bd->client.netwm.type == ECORE_X_WINDOW_TYPE_NORMAL) ||
/* internal dialog which is resizable */
if (bd->internal && (bd->client.netwm.type == ECORE_X_WINDOW_TYPE_DIALOG))
resize = (bd->client.icccm.max_w != bd->client.icccm.min_w);
if (resize || (bd->client.netwm.type == ECORE_X_WINDOW_TYPE_NORMAL) ||
(bd->client.netwm.type == ECORE_X_WINDOW_TYPE_UNKNOWN))
{
if (!(((bd->client.icccm.min_w == bd->client.icccm.max_w) &&