e internal dialogs now correctly remember their maximization state and are now less prone to moving around crazily if e is restarted while they are maximized
SVN revision: 81472
This commit is contained in:
parent
5f5c2fb4d3
commit
d7bc5ae149
|
@ -391,6 +391,10 @@ _e_remember_update(E_Border *bd, E_Remember *rem)
|
|||
rem->prop.w = bd->client.w;
|
||||
rem->prop.h = bd->client.h;
|
||||
}
|
||||
if (bd->internal)
|
||||
rem->prop.maximize = bd->maximized & E_MAXIMIZE_DIRECTION;
|
||||
else
|
||||
rem->prop.maximize = 0;
|
||||
}
|
||||
if (rem->apply & E_REMEMBER_APPLY_LAYER)
|
||||
{
|
||||
|
@ -709,6 +713,14 @@ _e_remember_cb_hook_pre_post_fetch(void *data __UNUSED__, void *border)
|
|||
}
|
||||
bd->w = bd->client.w + bd->client_inset.l + bd->client_inset.r;
|
||||
bd->h = bd->client.h + bd->client_inset.t + bd->client_inset.b;
|
||||
if (rem->prop.maximize)
|
||||
{
|
||||
bd->saved.x = rem->prop.pos_x;
|
||||
bd->saved.y = rem->prop.pos_y;
|
||||
bd->saved.w = bd->w;
|
||||
bd->saved.h = bd->h;
|
||||
bd->maximized = rem->prop.maximize | e_config->maximize_policy;
|
||||
}
|
||||
bd->changes.size = 1;
|
||||
bd->changes.shape = 1;
|
||||
}
|
||||
|
@ -927,6 +939,7 @@ _e_remember_init_edd(void)
|
|||
E_CONFIG_VAL(D, T, prop.w, INT);
|
||||
E_CONFIG_VAL(D, T, prop.h, INT);
|
||||
E_CONFIG_VAL(D, T, prop.layer, INT);
|
||||
E_CONFIG_VAL(D, T, prop.maximize, UINT);
|
||||
E_CONFIG_VAL(D, T, prop.lock_user_location, UCHAR);
|
||||
E_CONFIG_VAL(D, T, prop.lock_client_location, UCHAR);
|
||||
E_CONFIG_VAL(D, T, prop.lock_user_size, UCHAR);
|
||||
|
|
|
@ -62,6 +62,7 @@ struct _E_Remember
|
|||
int pos_w, pos_h;
|
||||
int w, h;
|
||||
int layer;
|
||||
unsigned int maximize; //just direction
|
||||
|
||||
unsigned char lock_user_location;
|
||||
unsigned char lock_client_location;
|
||||
|
|
Loading…
Reference in New Issue