void XlibMenuDestroy(XlibMenu* menu) { FcitxXlibWindow* window = (FcitxXlibWindow*) menu; FcitxClassicUI* classicui = window->owner; FcitxX11RemoveXEventHandler(classicui->owner, menu); FcitxX11RemoveCompositeHandler(classicui->owner, menu); FcitxXlibWindowDestroy(window); free(window); }
void InputWindowReload(void* arg, boolean enabled) { InputWindow* inputWindow = (InputWindow*) arg; boolean visable = WindowIsVisable(inputWindow->parent.owner->dpy, inputWindow->parent.wId); FcitxXlibWindowDestroy(&inputWindow->parent); InputWindowInit(inputWindow); if (visable) InputWindowShow(inputWindow); }
void XlibMenuReload(void* arg, boolean enabled) { FcitxXlibWindow* window = arg; FcitxClassicUI* classicui = window->owner; XlibMenu* menu = (XlibMenu*) arg; boolean visable = WindowIsVisable(classicui->dpy, window->wId); FcitxXlibWindowDestroy(window); XlibMenuInit(menu); if (visable) XMapWindow(classicui->dpy, window->wId); }