parent
2003f078a7
commit
f4f1ad13b4
2
TODO
2
TODO
|
@ -8,8 +8,6 @@ Some of the things (in very short form) that need to be done to E17...
|
||||||
BUGS / FIXES
|
BUGS / FIXES
|
||||||
-------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------
|
||||||
|
|
||||||
* BUG: edge flip resist (timeout) seems to not work right while dragging
|
|
||||||
windows.
|
|
||||||
* e_hints.c manually changes flags on a border isnetad of calling
|
* e_hints.c manually changes flags on a border isnetad of calling
|
||||||
e_border_stick() for exampe or the calls in e_border.c - add calls as needed
|
e_border_stick() for exampe or the calls in e_border.c - add calls as needed
|
||||||
to e_border.c. before calling check the lock flags too.
|
to e_border.c. before calling check the lock flags too.
|
||||||
|
|
|
@ -558,11 +558,7 @@ e_border_hide(E_Border *bd, int manage)
|
||||||
E_OBJECT_TYPE_CHECK(bd, E_BORDER_TYPE);
|
E_OBJECT_TYPE_CHECK(bd, E_BORDER_TYPE);
|
||||||
if (!bd->visible) return;
|
if (!bd->visible) return;
|
||||||
if (bd->moving)
|
if (bd->moving)
|
||||||
{
|
|
||||||
bd->moving = 0;
|
|
||||||
_e_border_move_end(bd);
|
_e_border_move_end(bd);
|
||||||
e_zone_flip_coords_handle(bd->zone, -1, -1);
|
|
||||||
}
|
|
||||||
if (bd->fullscreen)
|
if (bd->fullscreen)
|
||||||
e_border_unfullscreen(bd);
|
e_border_unfullscreen(bd);
|
||||||
if (bd->resize_mode != RESIZE_NONE)
|
if (bd->resize_mode != RESIZE_NONE)
|
||||||
|
@ -1603,6 +1599,7 @@ e_border_act_move_begin(E_Border *bd, Ecore_X_Event_Mouse_Button_Down *ev)
|
||||||
if (!_e_border_move_begin(bd))
|
if (!_e_border_move_begin(bd))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
e_zone_flip_win_disable();
|
||||||
bd->moving = 1;
|
bd->moving = 1;
|
||||||
if (ev)
|
if (ev)
|
||||||
{
|
{
|
||||||
|
@ -1619,6 +1616,7 @@ e_border_act_move_end(E_Border *bd, Ecore_X_Event_Mouse_Button_Up *ev)
|
||||||
{
|
{
|
||||||
if (bd->moving)
|
if (bd->moving)
|
||||||
{
|
{
|
||||||
|
e_zone_flip_win_restore();
|
||||||
bd->moving = 0;
|
bd->moving = 0;
|
||||||
_e_border_move_end(bd);
|
_e_border_move_end(bd);
|
||||||
e_zone_flip_coords_handle(bd->zone, -1, -1);
|
e_zone_flip_coords_handle(bd->zone, -1, -1);
|
||||||
|
@ -2882,6 +2880,7 @@ _e_border_cb_window_move_resize_request(void *data, int ev_type, void *ev)
|
||||||
if (!_e_border_move_begin(bd))
|
if (!_e_border_move_begin(bd))
|
||||||
return 1;
|
return 1;
|
||||||
bd->moving = 1;
|
bd->moving = 1;
|
||||||
|
e_zone_flip_win_disable();
|
||||||
|
|
||||||
bd->cur_mouse_action = e_action_find("window_move");
|
bd->cur_mouse_action = e_action_find("window_move");
|
||||||
if (bd->cur_mouse_action)
|
if (bd->cur_mouse_action)
|
||||||
|
@ -2965,6 +2964,7 @@ _e_border_cb_signal_move_start(void *data, Evas_Object *obj, const char *emissio
|
||||||
if (!_e_border_move_begin(bd))
|
if (!_e_border_move_begin(bd))
|
||||||
return;
|
return;
|
||||||
bd->moving = 1;
|
bd->moving = 1;
|
||||||
|
e_zone_flip_win_disable();
|
||||||
_e_border_moveinfo_gather(bd, source);
|
_e_border_moveinfo_gather(bd, source);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -2976,6 +2976,7 @@ _e_border_cb_signal_move_stop(void *data, Evas_Object *obj, const char *emission
|
||||||
bd = data;
|
bd = data;
|
||||||
if (!bd->moving) return;
|
if (!bd->moving) return;
|
||||||
bd->moving = 0;
|
bd->moving = 0;
|
||||||
|
e_zone_flip_win_restore();
|
||||||
_e_border_move_end(bd);
|
_e_border_move_end(bd);
|
||||||
e_zone_flip_coords_handle(bd->zone, -1, -1);
|
e_zone_flip_coords_handle(bd->zone, -1, -1);
|
||||||
}
|
}
|
||||||
|
|
|
@ -264,32 +264,28 @@ e_zone_flip_coords_handle(E_Zone *zone, int x, int y)
|
||||||
if ((y == 0) && E_ZONE_FLIP_UP(zone))
|
if ((y == 0) && E_ZONE_FLIP_UP(zone))
|
||||||
{
|
{
|
||||||
/* top */
|
/* top */
|
||||||
if (zone->flip.timer)
|
if (!zone->flip.timer)
|
||||||
ecore_timer_del(zone->flip.timer);
|
|
||||||
zone->flip.timer = ecore_timer_add(e_config->edge_flip_timeout, _e_zone_cb_timer, zone);
|
zone->flip.timer = ecore_timer_add(e_config->edge_flip_timeout, _e_zone_cb_timer, zone);
|
||||||
zone->flip.direction = E_DIRECTION_UP;
|
zone->flip.direction = E_DIRECTION_UP;
|
||||||
}
|
}
|
||||||
else if ((x == (zone->w - 1)) && E_ZONE_FLIP_RIGHT(zone))
|
else if ((x == (zone->w - 1)) && E_ZONE_FLIP_RIGHT(zone))
|
||||||
{
|
{
|
||||||
/* right */
|
/* right */
|
||||||
if (zone->flip.timer)
|
if (!zone->flip.timer)
|
||||||
ecore_timer_del(zone->flip.timer);
|
|
||||||
zone->flip.timer = ecore_timer_add(e_config->edge_flip_timeout, _e_zone_cb_timer, zone);
|
zone->flip.timer = ecore_timer_add(e_config->edge_flip_timeout, _e_zone_cb_timer, zone);
|
||||||
zone->flip.direction = E_DIRECTION_RIGHT;
|
zone->flip.direction = E_DIRECTION_RIGHT;
|
||||||
}
|
}
|
||||||
else if ((y == (zone->h - 1)) && E_ZONE_FLIP_DOWN(zone))
|
else if ((y == (zone->h - 1)) && E_ZONE_FLIP_DOWN(zone))
|
||||||
{
|
{
|
||||||
/* bottom */
|
/* bottom */
|
||||||
if (zone->flip.timer)
|
if (!zone->flip.timer)
|
||||||
ecore_timer_del(zone->flip.timer);
|
|
||||||
zone->flip.timer = ecore_timer_add(e_config->edge_flip_timeout, _e_zone_cb_timer, zone);
|
zone->flip.timer = ecore_timer_add(e_config->edge_flip_timeout, _e_zone_cb_timer, zone);
|
||||||
zone->flip.direction = E_DIRECTION_DOWN;
|
zone->flip.direction = E_DIRECTION_DOWN;
|
||||||
}
|
}
|
||||||
else if ((x == 0) && E_ZONE_FLIP_LEFT(zone))
|
else if ((x == 0) && E_ZONE_FLIP_LEFT(zone))
|
||||||
{
|
{
|
||||||
/* left */
|
/* left */
|
||||||
if (zone->flip.timer)
|
if (!zone->flip.timer)
|
||||||
ecore_timer_del(zone->flip.timer);
|
|
||||||
zone->flip.timer = ecore_timer_add(e_config->edge_flip_timeout, _e_zone_cb_timer, zone);
|
zone->flip.timer = ecore_timer_add(e_config->edge_flip_timeout, _e_zone_cb_timer, zone);
|
||||||
zone->flip.direction = E_DIRECTION_LEFT;
|
zone->flip.direction = E_DIRECTION_LEFT;
|
||||||
}
|
}
|
||||||
|
@ -483,6 +479,57 @@ e_zone_desk_linear_flip_to(E_Zone *zone, int x)
|
||||||
e_zone_desk_flip_to(zone, x, y);
|
e_zone_desk_flip_to(zone, x, y);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
e_zone_flip_win_disable(void)
|
||||||
|
{
|
||||||
|
Evas_List *l, *ll, *lll;
|
||||||
|
E_Manager *man;
|
||||||
|
E_Container *con;
|
||||||
|
|
||||||
|
for (l = e_manager_list(); l; l = l->next)
|
||||||
|
{
|
||||||
|
man = l->data;
|
||||||
|
for (ll = man->containers; ll; ll = ll->next)
|
||||||
|
{
|
||||||
|
con = ll->data;
|
||||||
|
for (lll = con->zones; lll; lll = lll->next)
|
||||||
|
{
|
||||||
|
E_Zone *zone;
|
||||||
|
|
||||||
|
zone = lll->data;
|
||||||
|
ecore_x_window_hide(zone->flip.left);
|
||||||
|
ecore_x_window_hide(zone->flip.right);
|
||||||
|
ecore_x_window_hide(zone->flip.top);
|
||||||
|
ecore_x_window_hide(zone->flip.bottom);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
e_zone_flip_win_restore(void)
|
||||||
|
{
|
||||||
|
Evas_List *l, *ll, *lll;
|
||||||
|
E_Manager *man;
|
||||||
|
E_Container *con;
|
||||||
|
|
||||||
|
for (l = e_manager_list(); l; l = l->next)
|
||||||
|
{
|
||||||
|
man = l->data;
|
||||||
|
for (ll = man->containers; ll; ll = ll->next)
|
||||||
|
{
|
||||||
|
con = ll->data;
|
||||||
|
for (lll = con->zones; lll; lll = lll->next)
|
||||||
|
{
|
||||||
|
E_Zone *zone;
|
||||||
|
|
||||||
|
zone = lll->data;
|
||||||
|
_e_zone_update_flip(zone);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
int
|
int
|
||||||
e_zone_app_exec(E_Zone *zone, E_App *a)
|
e_zone_app_exec(E_Zone *zone, E_App *a)
|
||||||
{
|
{
|
||||||
|
@ -706,29 +753,25 @@ _e_zone_cb_mouse_in(void *data, int type, void *event)
|
||||||
|
|
||||||
if (ev->win == zone->flip.top)
|
if (ev->win == zone->flip.top)
|
||||||
{
|
{
|
||||||
if (zone->flip.timer)
|
if (!zone->flip.timer)
|
||||||
ecore_timer_del(zone->flip.timer);
|
|
||||||
zone->flip.timer = ecore_timer_add(e_config->edge_flip_timeout, _e_zone_cb_timer, zone);
|
zone->flip.timer = ecore_timer_add(e_config->edge_flip_timeout, _e_zone_cb_timer, zone);
|
||||||
zone->flip.direction = E_DIRECTION_UP;
|
zone->flip.direction = E_DIRECTION_UP;
|
||||||
}
|
}
|
||||||
else if (ev->win == zone->flip.right)
|
else if (ev->win == zone->flip.right)
|
||||||
{
|
{
|
||||||
if (zone->flip.timer)
|
if (!zone->flip.timer)
|
||||||
ecore_timer_del(zone->flip.timer);
|
|
||||||
zone->flip.timer = ecore_timer_add(e_config->edge_flip_timeout, _e_zone_cb_timer, zone);
|
zone->flip.timer = ecore_timer_add(e_config->edge_flip_timeout, _e_zone_cb_timer, zone);
|
||||||
zone->flip.direction = E_DIRECTION_RIGHT;
|
zone->flip.direction = E_DIRECTION_RIGHT;
|
||||||
}
|
}
|
||||||
else if (ev->win == zone->flip.bottom)
|
else if (ev->win == zone->flip.bottom)
|
||||||
{
|
{
|
||||||
if (zone->flip.timer)
|
if (!zone->flip.timer)
|
||||||
ecore_timer_del(zone->flip.timer);
|
|
||||||
zone->flip.timer = ecore_timer_add(e_config->edge_flip_timeout, _e_zone_cb_timer, zone);
|
zone->flip.timer = ecore_timer_add(e_config->edge_flip_timeout, _e_zone_cb_timer, zone);
|
||||||
zone->flip.direction = E_DIRECTION_DOWN;
|
zone->flip.direction = E_DIRECTION_DOWN;
|
||||||
}
|
}
|
||||||
else if (ev->win == zone->flip.left)
|
else if (ev->win == zone->flip.left)
|
||||||
{
|
{
|
||||||
if (zone->flip.timer)
|
if (!zone->flip.timer)
|
||||||
ecore_timer_del(zone->flip.timer);
|
|
||||||
zone->flip.timer = ecore_timer_add(e_config->edge_flip_timeout, _e_zone_cb_timer, zone);
|
zone->flip.timer = ecore_timer_add(e_config->edge_flip_timeout, _e_zone_cb_timer, zone);
|
||||||
zone->flip.direction = E_DIRECTION_LEFT;
|
zone->flip.direction = E_DIRECTION_LEFT;
|
||||||
}
|
}
|
||||||
|
@ -744,10 +787,15 @@ _e_zone_cb_mouse_out(void *data, int type, void *event)
|
||||||
ev = event;
|
ev = event;
|
||||||
zone = data;
|
zone = data;
|
||||||
|
|
||||||
|
if ((ev->win == zone->flip.top) ||
|
||||||
|
(ev->win == zone->flip.bottom) ||
|
||||||
|
(ev->win == zone->flip.left) ||
|
||||||
|
(ev->win == zone->flip.right))
|
||||||
|
{
|
||||||
if (zone->flip.timer)
|
if (zone->flip.timer)
|
||||||
ecore_timer_del(zone->flip.timer);
|
ecore_timer_del(zone->flip.timer);
|
||||||
zone->flip.timer = NULL;
|
zone->flip.timer = NULL;
|
||||||
|
}
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -759,6 +807,7 @@ _e_zone_cb_timer(void *data)
|
||||||
E_Event_Pointer_Warp *ev;
|
E_Event_Pointer_Warp *ev;
|
||||||
int x, y;
|
int x, y;
|
||||||
|
|
||||||
|
printf("_e_zone_cb_timer()\n");
|
||||||
ev = E_NEW(E_Event_Pointer_Warp, 1);
|
ev = E_NEW(E_Event_Pointer_Warp, 1);
|
||||||
if (!ev) return 0;
|
if (!ev) return 0;
|
||||||
|
|
||||||
|
@ -785,11 +834,14 @@ _e_zone_cb_timer(void *data)
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case E_DIRECTION_RIGHT:
|
case E_DIRECTION_RIGHT:
|
||||||
|
printf("clip right...\n");
|
||||||
if (E_ZONE_FLIP_RIGHT(zone))
|
if (E_ZONE_FLIP_RIGHT(zone))
|
||||||
{
|
{
|
||||||
|
printf("ummm...\n");
|
||||||
current = e_desk_at_xy_get(zone, zone->desk_x_current + 1, zone->desk_y_current);
|
current = e_desk_at_xy_get(zone, zone->desk_x_current + 1, zone->desk_y_current);
|
||||||
if (current)
|
if (current)
|
||||||
{
|
{
|
||||||
|
printf("show new desk\n");
|
||||||
e_desk_show(current);
|
e_desk_show(current);
|
||||||
ecore_x_pointer_warp(zone->container->win, 2, y);
|
ecore_x_pointer_warp(zone->container->win, 2, y);
|
||||||
ev->curr.y = y;
|
ev->curr.y = y;
|
||||||
|
|
|
@ -86,6 +86,8 @@ EAPI void e_zone_desk_flip_by(E_Zone *zone, int dx, int dy);
|
||||||
EAPI void e_zone_desk_flip_to(E_Zone *zone, int x, int y);
|
EAPI void e_zone_desk_flip_to(E_Zone *zone, int x, int y);
|
||||||
EAPI void e_zone_desk_linear_flip_by(E_Zone *zone, int dx);
|
EAPI void e_zone_desk_linear_flip_by(E_Zone *zone, int dx);
|
||||||
EAPI void e_zone_desk_linear_flip_to(E_Zone *zone, int x);
|
EAPI void e_zone_desk_linear_flip_to(E_Zone *zone, int x);
|
||||||
|
EAPI void e_zone_flip_win_disable(void);
|
||||||
|
EAPI void e_zone_flip_win_restore(void);
|
||||||
|
|
||||||
EAPI int e_zone_app_exec(E_Zone *zone, E_App *a);
|
EAPI int e_zone_app_exec(E_Zone *zone, E_App *a);
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue