Check if visibility really change on event change
This commit is contained in:
parent
228a68aaac
commit
db4944cd08
@ -1245,6 +1245,7 @@ int main(int argc, char **argv) {
|
|||||||
double record_start_time = glfwGetTime();
|
double record_start_time = glfwGetTime();
|
||||||
std::deque<AVPacket> frame_data_queue;
|
std::deque<AVPacket> frame_data_queue;
|
||||||
bool frames_erased = false;
|
bool frames_erased = false;
|
||||||
|
int prev_visibility_state = VisibilityFullyObscured;
|
||||||
|
|
||||||
SoundDevice sound_device;
|
SoundDevice sound_device;
|
||||||
uint8_t *audio_frame_buf;
|
uint8_t *audio_frame_buf;
|
||||||
@ -1319,8 +1320,11 @@ int main(int argc, char **argv) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (XCheckTypedWindowEvent(dpy, src_window_id, VisibilityNotify, &e)) {
|
if (XCheckTypedWindowEvent(dpy, src_window_id, VisibilityNotify, &e)) {
|
||||||
window_resize_timer = glfwGetTime();
|
if((prev_visibility_state == VisibilityFullyObscured && e.xvisibility.state != VisibilityFullyObscured) || (e.xvisibility.state == prev_visibility_state)) {
|
||||||
window_resized = true;
|
window_resize_timer = glfwGetTime();
|
||||||
|
window_resized = true;
|
||||||
|
}
|
||||||
|
prev_visibility_state = e.xvisibility.state;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (XCheckTypedWindowEvent(dpy, src_window_id, ConfigureNotify, &e) && e.xconfigure.window == src_window_id) {
|
if (XCheckTypedWindowEvent(dpy, src_window_id, ConfigureNotify, &e) && e.xconfigure.window == src_window_id) {
|
||||||
|
Loading…
Reference in New Issue
Block a user