forked from enlightenment/enlightenment
When quickpanel gets deleted, we need to remove the borders from the qp list.
SVN revision: 45376
This commit is contained in:
parent
9d298fdae0
commit
63b73189d0
|
@ -1,6 +1,7 @@
|
||||||
#include "E_Illume.h"
|
#include "E_Illume.h"
|
||||||
#include "e_mod_layout.h"
|
#include "e_mod_layout.h"
|
||||||
#include "e_mod_main.h" // For logging functions
|
#include "e_mod_main.h" // For logging functions
|
||||||
|
#include "e_quickpanel.h"
|
||||||
|
|
||||||
/* local function prototypes */
|
/* local function prototypes */
|
||||||
static const char *_e_mod_layout_policy_find(void);
|
static const char *_e_mod_layout_policy_find(void);
|
||||||
|
@ -376,6 +377,13 @@ _e_mod_layout_cb_border_del(void *data, int type, void *event)
|
||||||
E_Event_Border_Remove *ev;
|
E_Event_Border_Remove *ev;
|
||||||
|
|
||||||
ev = event;
|
ev = event;
|
||||||
|
if (e_illume_border_is_quickpanel(ev->border))
|
||||||
|
{
|
||||||
|
E_Quickpanel *qp;
|
||||||
|
|
||||||
|
if (qp = e_quickpanel_by_zone_get(ev->border->zone))
|
||||||
|
qp->borders = eina_list_remove(qp->borders, ev->border);
|
||||||
|
}
|
||||||
if (ev->border->stolen) return 1;
|
if (ev->border->stolen) return 1;
|
||||||
if ((policy) && (policy->funcs.border_del))
|
if ((policy) && (policy->funcs.border_del))
|
||||||
policy->funcs.border_del(ev->border);
|
policy->funcs.border_del(ev->border);
|
||||||
|
|
|
@ -313,10 +313,16 @@ _e_quickpanel_cb_animate(void *data)
|
||||||
}
|
}
|
||||||
qp->adjust = (qp->adjust_end * v) + (qp->adjust_start * (1.0 - v));
|
qp->adjust = (qp->adjust_end * v) + (qp->adjust_start * (1.0 - v));
|
||||||
|
|
||||||
EINA_LIST_REVERSE_FOREACH(qp->borders, l, bd)
|
if (qp->borders)
|
||||||
{
|
{
|
||||||
e_border_lower(bd);
|
printf("Border Count: %d\n", eina_list_count(qp->borders));
|
||||||
e_border_fx_offset(bd, 0, (bd->h + qp->adjust));
|
EINA_LIST_REVERSE_FOREACH(qp->borders, l, bd)
|
||||||
|
{
|
||||||
|
printf("Border: %s\n", bd->client.icccm.name);
|
||||||
|
if (e_object_is_del(E_OBJECT(bd))) continue;
|
||||||
|
e_border_lower(bd);
|
||||||
|
e_border_fx_offset(bd, 0, (bd->h + qp->adjust));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (t == qp->len)
|
if (t == qp->len)
|
||||||
|
|
|
@ -342,10 +342,9 @@ _zone_layout_dual_top(E_Border *bd)
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
/* border there is conformant */
|
|
||||||
if (conform)
|
if (conform)
|
||||||
{
|
{
|
||||||
/* if current border is conformant, divide zone in half */
|
/* current border is conformant, divide zone in half */
|
||||||
bh = ((bd->zone->h - ss) / 2);
|
bh = ((bd->zone->h - ss) / 2);
|
||||||
by = by + bh;
|
by = by + bh;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue