diff --git a/scene_opengl.cpp b/scene_opengl.cpp index 03a31cf92d..6cf62c668d 100644 --- a/scene_opengl.cpp +++ b/scene_opengl.cpp @@ -462,7 +462,9 @@ bool SceneOpenGL2::supported(OpenGLBackend *backend) } if (GLPlatform::instance()->recommendedCompositor() < OpenGL2Compositing) { kDebug(1212) << "Driver does not recommend OpenGL 2 compositing"; +#ifndef KWIN_HAVE_OPENGLES return false; +#endif } if (options->isGlLegacy()) { kDebug(1212) << "OpenGL 2 disabled by config option"; diff --git a/useractions.cpp b/useractions.cpp index 118cd13fca..3617d2938c 100755 --- a/useractions.cpp +++ b/useractions.cpp @@ -127,7 +127,7 @@ bool UserActionsMenu::isShown() const bool UserActionsMenu::hasClient() const { - return !m_client.isNull(); + return !m_client.isNull() && isShown(); } void UserActionsMenu::close() @@ -136,7 +136,7 @@ void UserActionsMenu::close() return; } m_menu->close(); - m_client.clear();; + m_client.clear(); } bool UserActionsMenu::isMenuClient(const Client *c) const @@ -153,7 +153,7 @@ void UserActionsMenu::show(const QRect &pos, const QWeakPointer &cl) return; if (cl.isNull()) return; - if (!m_client.isNull()) // recursion + if (isShown()) // recursion return; if (cl.data()->isDesktop() || cl.data()->isDock()) @@ -175,7 +175,6 @@ void UserActionsMenu::show(const QRect &pos, const QWeakPointer &cl) else m_menu->exec(QPoint(x, pos.top() - popupHeight)); } - m_client.clear();; } void UserActionsMenu::helperDialog(const QString& message, const QWeakPointer &c)