luebking added inline comments.

INLINE COMMENTS

> scene_opengl.cpp:699
> +    // don't paint if no image for cursor is set
> +    const QImage img = kwinApp()->platform()->softwareCursor();
> +    if (img.isNull()) {

The entire head should probably be in some init function, not in every paint 
call.
If you go for a lazy init, you should seekt to prevent double connects (but I 
don't know whether Qt::UniqueConnection works with functors), but I'd 
discourage that approach, because it prevents shortcutting the function if 
there's no cursor image (ie. "!m_cursorTexture")

> scene_opengl.cpp:709
> +        // handle shape update in case cursor image changed
> +        connect(Cursor::self(), &Cursor::cursorChanged, this, [this] {
> +            const QImage img = kwinApp()->platform()->softwareCursor();

At this time, this seems superfluous, because you fetch the current image with 
every paint call anyway.

> scene_opengl.cpp:711
> +            const QImage img = kwinApp()->platform()->softwareCursor();
> +            m_cursorTexture.reset(new GLTexture(img));
> +        });

There's no .isNull() test here - in contrast to the assignment some lines above

> scene_opengl.cpp:734
> +
> +    glDisable(GL_BLEND);
> +}

This needs a comment from Martin, but you might have to glGet with GL_BLEND_SRC 
and GL_BLEND_DST as well as glIsEnabled(GL_BLEND)

REPOSITORY
  R108 KWin

REVISION DETAIL
  https://phabricator.kde.org/D6186

To: Kanedias, graesslin, davidedmundson
Cc: luebking, plasma-devel, kwin, #kwin, ZrenBot, spstarr, progwolff, 
lesliezhai, ali-mohamed, hardening, jensreuterberg, abetts, eliasp, sebas, 
apol, mart, hein, lukas

Reply via email to