Split wibox_position_update() up
Floating wiboxes are much easier to handle, so they deserve their own function. This function, wibox_position_update_floating() does exactly the same things wibox_position_update() did before. No behaviour change involved. Signed-off-by: Uli Schlachter <psychon@znc.in>
This commit is contained in:
parent
62bfc2e9ac
commit
b4b08fd926
37
wibox.c
37
wibox.c
|
@ -315,12 +315,24 @@ wibox_systray_refresh(wibox_t *wibox)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/** Update the wibox position. It deletes every wibox resources and
|
/* Only called by wibox_position_update() */
|
||||||
* create them back.
|
static void
|
||||||
* \param wibox The wibox.
|
wibox_position_update_floating(wibox_t *wibox)
|
||||||
*/
|
{
|
||||||
void
|
area_t wingeom = wibox->sw.geometry;
|
||||||
wibox_position_update(wibox_t *wibox)
|
|
||||||
|
/* We only make sure the wibox is at least 1x1 pixel big. */
|
||||||
|
wingeom.width = MAX(1, wibox->sw.geometry.width);
|
||||||
|
wingeom.height = MAX(1, wibox->sw.geometry.height);
|
||||||
|
|
||||||
|
if(wingeom.width != wibox->sw.geometry.width
|
||||||
|
|| wingeom.height != wibox->sw.geometry.height)
|
||||||
|
wibox_resize(wibox, wingeom.width, wingeom.height);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Only called by wibox_position_update() */
|
||||||
|
static void
|
||||||
|
wibox_position_update_non_floating(wibox_t *wibox)
|
||||||
{
|
{
|
||||||
area_t area, wingeom = wibox->sw.geometry;
|
area_t area, wingeom = wibox->sw.geometry;
|
||||||
bool ignore = false;
|
bool ignore = false;
|
||||||
|
@ -486,6 +498,19 @@ wibox_position_update(wibox_t *wibox)
|
||||||
wibox_move(wibox, wingeom.x, wingeom.y);
|
wibox_move(wibox, wingeom.x, wingeom.y);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/** Update the wibox position. It deletes every wibox resources and
|
||||||
|
* create them back.
|
||||||
|
* \param wibox The wibox.
|
||||||
|
*/
|
||||||
|
void
|
||||||
|
wibox_position_update(wibox_t *wibox)
|
||||||
|
{
|
||||||
|
if(wibox->position == Floating)
|
||||||
|
wibox_position_update_floating(wibox);
|
||||||
|
else
|
||||||
|
wibox_position_update_non_floating(wibox);
|
||||||
|
}
|
||||||
|
|
||||||
/** Get a wibox by its window.
|
/** Get a wibox by its window.
|
||||||
* \param w The window id.
|
* \param w The window id.
|
||||||
* \return A wibox if found, NULL otherwise.
|
* \return A wibox if found, NULL otherwise.
|
||||||
|
|
Loading…
Reference in New Issue