static void window_shutdown(glw_x11_t *gx11) { glw_video_reset(&gx11->gr); glFlush(); XSync(gx11->display, False); if(gx11->is_fullscreen) { XUngrabPointer(gx11->display, CurrentTime); XUngrabKeyboard(gx11->display, CurrentTime); } glw_flush(&gx11->gr); window_close(gx11); }
JNIEXPORT void JNICALL Java_com_showtimemediacenter_showtime_STCore_glwFini(JNIEnv *env, jobject obj, jint id) { android_glw_root_t *agr = (android_glw_root_t *)id; glw_root_t *gr = &agr->gr; TRACE(TRACE_DEBUG, "GLW", "GLW %p finishing", agr); glw_lock(gr); // Calling twice will unload all textures, etc glw_reap(gr); glw_reap(gr); glw_flush(gr); agr->agr_running = 0; hts_cond_signal(&agr->agr_runcond); glw_unlock(gr); }