Skip to content
  • Martin Flöser's avatar
    [plugins/qpa] Call makeCurrent on the QOpenGLContext instead of the one in the platform context · 8909f878
    Martin Flöser authored
    Summary:
    SharingPlatformContext::swapBuffers needs to make the context current.
    For this is calls makeCurrent. Later on this tries to bind a fbo, which
    checks calls into the current QOpenGLContext. As we called makeCurrent on
    our own platform context Qt doesn't know that the context is current and
    returns in the worst case a nullptr and crashes.
    
    This change calls makeCurrent on the QOpenGLContext so that Qt also knows
    that this context is current now. The QOpenGLContext calls makeCurrent on
    the platform context, so what our code tried to do is still being done.
    
    In addition the method context() in AbstractPlatformContext is renamed to
    eglContext to no longer shadow the method in QPlatformContext.
    
    Reviewers: #kwin, #plasma_on_wayland
    
    Subscribers: plasma-devel, kwin
    
    Tags: #plasma_on_wayland, #kwin
    
    Differential Revision: https://phabricator.kde.org/D2582
    8909f878