forked from enlightenment/enlightenment
implemented position and size locking for user and client. now for more locks
to be implemented... SVN revision: 15635
This commit is contained in:
parent
d9142c3024
commit
f18b13c902
2
TODO
2
TODO
|
@ -40,6 +40,8 @@ Some of the things (in very short form) that need to be done to E17...
|
||||||
ESSENTIAL FEATURES
|
ESSENTIAL FEATURES
|
||||||
-------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
* add window placement optiond like place at pointer
|
||||||
|
* add option like "focus all new windows" etc.
|
||||||
* shaded windows should not allow border changes by the user
|
* shaded windows should not allow border changes by the user
|
||||||
* if a border is borderless it should not be allowed to be shaded (padl/r/t/b
|
* if a border is borderless it should not be allowed to be shaded (padl/r/t/b
|
||||||
is 0)
|
is 0)
|
||||||
|
|
|
@ -1581,6 +1581,7 @@ e_border_clients_get()
|
||||||
void
|
void
|
||||||
e_border_act_move_begin(E_Border *bd, Ecore_X_Event_Mouse_Button_Down *ev)
|
e_border_act_move_begin(E_Border *bd, Ecore_X_Event_Mouse_Button_Down *ev)
|
||||||
{
|
{
|
||||||
|
if (bd->lock_user_location) return;
|
||||||
if (!bd->moving)
|
if (!bd->moving)
|
||||||
{
|
{
|
||||||
if (!_e_border_move_begin(bd))
|
if (!_e_border_move_begin(bd))
|
||||||
|
@ -1611,6 +1612,7 @@ e_border_act_move_end(E_Border *bd, Ecore_X_Event_Mouse_Button_Up *ev)
|
||||||
void
|
void
|
||||||
e_border_act_resize_begin(E_Border *bd, Ecore_X_Event_Mouse_Button_Down *ev)
|
e_border_act_resize_begin(E_Border *bd, Ecore_X_Event_Mouse_Button_Down *ev)
|
||||||
{
|
{
|
||||||
|
if (bd->lock_user_size) return;
|
||||||
if (bd->resize_mode == RESIZE_NONE)
|
if (bd->resize_mode == RESIZE_NONE)
|
||||||
{
|
{
|
||||||
if (!_e_border_resize_begin(bd))
|
if (!_e_border_resize_begin(bd))
|
||||||
|
@ -2165,10 +2167,18 @@ _e_border_cb_window_configure_request(void *data, int ev_type, void *ev)
|
||||||
e->value_mask & ECORE_X_WINDOW_CONFIGURE_MASK_H,
|
e->value_mask & ECORE_X_WINDOW_CONFIGURE_MASK_H,
|
||||||
e->w, e->h);
|
e->w, e->h);
|
||||||
#endif
|
#endif
|
||||||
e_border_move_resize(bd, x, y, w, h);
|
if ((!bd->lock_client_location) && (!bd->lock_client_size))
|
||||||
|
e_border_move_resize(bd, x, y, w, h);
|
||||||
|
else if (!bd->lock_client_location)
|
||||||
|
e_border_move(bd, x, y);
|
||||||
|
else if (!bd->lock_client_size)
|
||||||
|
e_border_resize(bd, w, h);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
e_border_move(bd, x, y);
|
{
|
||||||
|
if (!bd->lock_client_location)
|
||||||
|
e_border_move(bd, x, y);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else if ((e->value_mask & ECORE_X_WINDOW_CONFIGURE_MASK_W) ||
|
else if ((e->value_mask & ECORE_X_WINDOW_CONFIGURE_MASK_W) ||
|
||||||
(e->value_mask & ECORE_X_WINDOW_CONFIGURE_MASK_H))
|
(e->value_mask & ECORE_X_WINDOW_CONFIGURE_MASK_H))
|
||||||
|
@ -2188,7 +2198,8 @@ _e_border_cb_window_configure_request(void *data, int ev_type, void *ev)
|
||||||
e->value_mask & ECORE_X_WINDOW_CONFIGURE_MASK_H,
|
e->value_mask & ECORE_X_WINDOW_CONFIGURE_MASK_H,
|
||||||
e->w, e->h);
|
e->w, e->h);
|
||||||
#endif
|
#endif
|
||||||
e_border_resize(bd, w, h);
|
if (!bd->lock_client_size)
|
||||||
|
e_border_resize(bd, w, h);
|
||||||
}
|
}
|
||||||
if ((e->value_mask & ECORE_X_WINDOW_CONFIGURE_MASK_STACK_MODE) &&
|
if ((e->value_mask & ECORE_X_WINDOW_CONFIGURE_MASK_STACK_MODE) &&
|
||||||
(e->value_mask & ECORE_X_WINDOW_CONFIGURE_MASK_SIBLING))
|
(e->value_mask & ECORE_X_WINDOW_CONFIGURE_MASK_SIBLING))
|
||||||
|
@ -5471,7 +5482,8 @@ _e_border_resize_begin(E_Border *bd)
|
||||||
int w, h;
|
int w, h;
|
||||||
|
|
||||||
e_border_raise(bd);
|
e_border_raise(bd);
|
||||||
if ((bd->shaded) || (bd->shading) || (bd->maximized) || (bd->fullscreen))
|
if ((bd->shaded) || (bd->shading) || (bd->maximized) || (bd->fullscreen) ||
|
||||||
|
(bd->lock_user_size))
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
if ((bd->client.icccm.base_w >= 0) &&
|
if ((bd->client.icccm.base_w >= 0) &&
|
||||||
|
@ -5543,7 +5555,7 @@ static int
|
||||||
_e_border_move_begin(E_Border *bd)
|
_e_border_move_begin(E_Border *bd)
|
||||||
{
|
{
|
||||||
e_border_raise(bd);
|
e_border_raise(bd);
|
||||||
if ((bd->maximized) || (bd->fullscreen))
|
if ((bd->maximized) || (bd->fullscreen) || (bd->lock_user_location))
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
if (grabbed)
|
if (grabbed)
|
||||||
|
|
Loading…
Reference in New Issue