static void xt_client_unrealize ( XtClient* xtclient ) { #if XlibSpecificationRelease >= 6 XtUnregisterDrawable(xtclient->xtdisplay, xtclient->top_widget->core.window); #else _XtUnregisterWindow(xtclient->top_widget->core.window, xtclient->top_widget); #endif /* flush the queue before we returning origin top_widget->core.window or we can get X error since the window is gone */ XSync(xtclient->xtdisplay, False); xtclient->top_widget->core.window = xtclient->oldwindow; XtUnrealizeWidget(xtclient->top_widget); }
void xt_client_unrealize ( XtClient* xtclient ) { /* Explicitly destroy the child_widget window because this is actually a child of the socket window. It is not a child of top_widget's window when that is destroyed. */ XtUnrealizeWidget(xtclient->child_widget); #if XlibSpecificationRelease >= 6 XtUnregisterDrawable(xtclient->xtdisplay, xtclient->top_widget->core.window); #else _XtUnregisterWindow(xtclient->top_widget->core.window, xtclient->top_widget); #endif /* flush the queue before we returning origin top_widget->core.window or we can get X error since the window is gone */ XSync(xtclient->xtdisplay, False); xtclient->top_widget->core.window = xtclient->oldwindow; XtUnrealizeWidget(xtclient->top_widget); }