Пример #1
0
void popup_free(ObPopup *self)
{
    if (self) {
        popup_hide(self); /* make sure it's not showing or is being delayed and
                             will be shown */
        XDestroyWindow(obt_display, self->bg);
        XDestroyWindow(obt_display, self->text);
        RrAppearanceFree(self->a_bg);
        RrAppearanceFree(self->a_text);
        window_remove(self->bg);
        stacking_remove(self);
        g_slice_free(ObPopup, self);
    }
}
Пример #2
0
void pager_popup_free(ObPagerPopup *self)
{
    if (self) {
        guint i;

        for (i = 0; i < self->desks; ++i)
            XDestroyWindow(obt_display, self->wins[i]);
        g_free(self->wins);
        RrAppearanceFree(self->hilight);
        RrAppearanceFree(self->unhilight);
        popup_free(self->popup);
        g_slice_free(ObPagerPopup, self);
    }
}
Пример #3
0
void menu_frame_shutdown(gboolean reconfig)
{
    RrAppearanceFree(a_sep);

    if (reconfig) return;

    client_remove_destroy_notify(client_dest);
    g_hash_table_destroy(menu_frame_map);
}
Пример #4
0
void icon_popup_free(ObIconPopup *self)
{
    if (self) {
        XDestroyWindow(obt_display, self->icon);
        RrAppearanceFree(self->a_icon);
        popup_free(self->popup);
        g_slice_free(ObIconPopup, self);
    }
}
Пример #5
0
void prompt_shutdown(gboolean reconfig)
{
    GList *it;

    if (!reconfig) {
        for (it = prompt_list; it; it = g_list_next(it)) {
            ObPrompt *p = it->data;
            if (p->cleanup) p->cleanup(p, p->data);
        }

        g_assert(prompt_list == NULL);
    }

    RrAppearanceFree(prompt_a_button);
    RrAppearanceFree(prompt_a_focus);
    RrAppearanceFree(prompt_a_press);
    RrAppearanceFree(prompt_a_pfocus);
    RrAppearanceFree(prompt_a_msg);
}
Пример #6
0
void menu_frame_free(ObMenuFrame *self)
{
    if (self) {
        while (self->entries) {
            menu_entry_frame_free(self->entries->data);
            self->entries = g_list_delete_link(self->entries, self->entries);
        }

        stacking_remove(MENUFRAME_AS_WINDOW(self));
        window_remove(self->window);

        RrAppearanceFree(self->a_items);

        XDestroyWindow(obt_display, self->window);

        g_slice_free(ObMenuFrame, self);
    }
}