Am 2017-11-01 20:08, schrieb Matthias Klumpp:
This makes complete sense. I didn't know that there was such as thing
as a mouse cursor layer (why would the cursor be special?). When
running Weston, I do get a cursor though, so I guess it's using some
kind of emulation.
Cursor layer is quite normal on desktop hardware. The base idea is that
you don't need to update the complete screen just because the cursor
moved.
Whether that's the case is something which can only be tested with the
hardware (e.g. adding a break point and seeing where KWin goes). If
that's
the case we can easily fix it by using the sofware rendered cursor.
IIRC
that is only available in 5.11, though.
Neat!
As I just worked on the drm platform today and especially on cursor (I'm
working on screen rotation), I can say that it's quite easy to hook that
up. We have everything in place: we know whether there is a cursor plane
and we have the API to force software emulation. It's just not combined.
Btw. KWin logs which planes it finds. So if you enable all debug
information you should find in the logs whether a cursor plane exists.
"type" has enums: QVector("Primary", "Cursor", "Overlay")
Test all 3 possible enums:
Enum 'Overlay': runtime-value = 0
Enum 'Primary': runtime-value = 1
Enum 'Cursor': runtime-value = 2
=> "type" with mapped enum value "Cursor"
If you don't have anything about Cursor, we have a candidate.
Performance isn't great at all at the moment (and stability also
isn't, it crashes as soon as I try to pull down the top drawer), but
aside from these things which are actually minor issues, the whole UI
looks fairly complete and pretty nice.
As you are on Debian: make sure you get Qt 5.9.2. Debian testing
currently only has Qt 5.9.1 and there are important fixes. Best would be
to get the latest patches for QtWayland of the 5.9 branch. I'm currently
running a self compiled QtWayland based on 5.9.1 with the patches from
5.9.2 on top of Debian. Without it was hardly usable at all. Apps are
crashing at random, especially when virtual keyboard support is
available in KWin.
Also a newer KWin than what Debian has is highly recommended. Qt 5.9
caused regressions for us and I'm not sure whether Plasma 5.10 has all
the required fixes. Plasma 5.11 has them.
Cheers
Martin