X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;ds=inline;f=src%2Fpanel.c;h=3151be234ed688d363fb51b43d9a88c0f5b7fc11;hb=202d5dc4265584deada53c1ea1b7db26d47ca179;hp=bdf8813e68bdff8f0bb0a918b89c5744b00d86c2;hpb=5b867835741534d8d28e8d158b8f7de53e55018a;p=chaz%2Ftint2 diff --git a/src/panel.c b/src/panel.c index bdf8813..3151be2 100644 --- a/src/panel.c +++ b/src/panel.c @@ -71,6 +71,13 @@ void init_panel() int i, old_nb_panel; Panel *new_panel, *p; + init_tooltip(); + init_systray(); + init_clock(); +#ifdef ENABLE_BATTERY + init_battery(); +#endif + cleanup_taskbar(); for (i=0 ; i < nb_panel ; i++) { free_area(&panel1[i].area); @@ -123,12 +130,12 @@ void init_panel() init_panel_size_and_position(p); // add childs - if (p->clock.area.on_screen) { + if (clock_enabled) { init_clock_panel(p); p->area.list = g_slist_append(p->area.list, &p->clock); } #ifdef ENABLE_BATTERY - if (p->battery.area.on_screen) { + if (battery_enabled) { init_battery_panel(p); p->area.list = g_slist_append(p->area.list, &p->battery); } @@ -137,6 +144,7 @@ void init_panel() if (systray.area.on_screen && i == 0) { init_systray_panel(p); p->area.list = g_slist_append(p->area.list, &systray); + refresh_systray = 1; } if (i >= old_nb_panel) { @@ -145,7 +153,6 @@ void init_panel() if (g_tooltip.enabled) event_mask |= PointerMotionMask|LeaveWindowMask; XSetWindowAttributes att = { ParentRelative, 0L, 0, 0L, 0, 0, Always, 0L, 0L, False, event_mask, NoEventMask, False, 0, 0 }; - if (p->main_win) XDestroyWindow(server.dsp, p->main_win); p->main_win = XCreateWindow(server.dsp, server.root_win, p->posx, p->posy, p->area.width, p->area.height, 0, server.depth, InputOutput, CopyFromParent, CWEventMask, &att); } else { @@ -164,10 +171,10 @@ void init_panel() panel1 = new_panel; panel_refresh = 1; - refresh_systray = 1; init_taskbar(); visible_object(); task_refresh_tasklist(); + active_task(); } @@ -235,12 +242,6 @@ void cleanup_panel() task_urgent = 0; cleanup_taskbar(); - // font allocated once - if (panel1[0].g_task.font_desc) { - pango_font_description_free(panel1[0].g_task.font_desc); - panel1[0].g_task.font_desc = 0; - } - int i; Panel *p; for (i=0 ; i < nb_panel ; i++) {