X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=openbox%2Fdock.c;h=934d3d03bcd8072390b4bb587a2c153df06b5ad4;hb=6e93be1d2e07ace0c21bc040cfb2e4890667d033;hp=e17c8913b8e2f910bd6a75b553b92775bdf3ab63;hpb=f17b225daadb483b8736dc0e57a9def68e770ae9;p=chaz%2Fopenbox diff --git a/openbox/dock.c b/openbox/dock.c index e17c8913..934d3d03 100644 --- a/openbox/dock.c +++ b/openbox/dock.c @@ -152,19 +152,28 @@ void dock_configure() dock->w = dock->h = spot = 0; + /* get the size */ for (it = dock->dock_apps; it; it = it->next) { struct DockApp *app = it->data; if (config_dock_horz) { - app->x = spot; - app->y = 0; dock->w += app->w; dock->h = MAX(dock->h, app->h); - spot += app->w; } else { - app->x = 0; - app->y = spot; dock->w = MAX(dock->w, app->w); dock->h += app->h; + } + } + + /* position the apps */ + for (it = dock->dock_apps; it; it = it->next) { + struct DockApp *app = it->data; + if (config_dock_horz) { + app->x = spot; + app->y = (dock->h - app->h) / 2; + spot += app->w; + } else { + app->x = (dock->w - app->w) / 2; + app->y = spot; spot += app->h; }