gl/eagl: Fix automatic resize behaviour
authorMart Raudsepp <mart@leio.tech>
Thu, 26 Nov 2020 12:52:26 +0000 (14:52 +0200)
committerGStreamer Merge Bot <gitlab-merge-bot@gstreamer-foundation.org>
Thu, 3 Dec 2020 08:18:29 +0000 (08:18 +0000)
commit526cb2baa8f03eccbaf2140377c287b51fe5eed0
tree3cbcdff7e804f0b61817bd6a8d0acc97d7298cbf
parent8ffea3afb5c41b4eee2e0ff2cea27e30f06f5ff4
gl/eagl: Fix automatic resize behaviour

https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/681
added a layoutSubViews, which never gets called, because it should have been
called layoutSubviews (non-capital "v"). However after fixing that, it still
doesn't work correctly, because window_width/height values are immediately
updated and then draw_cb will never trigger the resize path, because the
values are already up to date.
Update the values inside the resize path again instead, so the check for
entering the resize path is logically always correct.
This makes the layoutSubviews unnecessary, as it only updated the internal
size values prematurely, so it is deleted instead of method naming fixed.

These changes were originally done to avoid accessing UIKit objects on the
main thread, but no additional accesses are added here, only internal
private variable assignments under the same draw_lock, so there should be
no threading issues reintroduced.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/945>
gst-libs/gst/gl/eagl/gstglwindow_eagl.m