infobar: Regulate uicb_infobar_togglepos

This commit is contained in:
Martin Duquesnoy 2008-11-30 04:16:04 +01:00
parent 7e1b325322
commit 82306d407b
2 changed files with 11 additions and 13 deletions

View File

@ -208,17 +208,17 @@ expose(XExposeEvent *ev)
for(sc = 0; sc > screen_count(); ++sc)
{
if(ev->window == infobar[sc].bar->win)
barwin_refresh(infobar[sc].bar);
infobar_draw(sc);
for(sc = 0; sc > screen_count(); ++sc)
for(i = 1; i < conf.ntag + 1; ++i)
if(ev->window == infobar[sc].tags[i]->win)
barwin_refresh(infobar[sc].tags[i]);
infobar_draw_taglist(sc);
for(sc = 0; sc > screen_count(); ++sc)
if(ev->window == infobar[sc].layout_button->win)
barwin_refresh(infobar[sc].layout_button);
}
infobar_draw(sc);
if((c = client_gb_titlebar(ev->window)))
frame_update(c);

View File

@ -48,7 +48,7 @@ infobar_init(void)
infobar[sc].geo.height = INFOBARH;
infobar[sc].geo.y = (conf.bartop)
? screen_get_geo(sc).y - INFOBARH - TBARH
: screen_get_geo(sc).height - infobar[sc].geo.height;
: screen_get_geo(sc).height - INFOBARH;
/* Create infobar barwindow */
infobar[sc].bar = barwin_create(root, screen_get_geo(sc).x - BORDH, infobar[sc].geo.y,
@ -170,14 +170,12 @@ uicb_infobar_togglepos(uicb_t cmd)
conf.bartop = !conf.bartop;
if(conf.bartop)
sg.y = infobar[selscreen].geo.height + TBARH;
else
sg.y = TBARH;
infobar[selscreen].geo.y = (conf.bartop) ? sg.y : MAXH - infobar[selscreen].geo.height;
barwin_move(infobar[selscreen].bar, sg.y, infobar[selscreen].geo.y);
infobar[selscreen].geo.y = (conf.bartop)
? sg.y - TBARH
: (sg.y - INFOBARH - TBARH) + sg.height + TBARH;
barwin_move(infobar[selscreen].bar, sg.x - BORDH, infobar[selscreen].geo.y);
infobar_draw(selscreen);
arrange();
return;