D15910: Implement wl_surface::damage_buffer

2019-05-08 Thread Roman Gilg
This revision was automatically updated to reflect the committed changes.
Closed by commit R127:b71e10359725: Implement wl_surface::damage_buffer 
(authored by romangg).

CHANGED PRIOR TO COMMIT
  https://phabricator.kde.org/D15910?vs=48477=57749#toc

REPOSITORY
  R127 KWayland

CHANGES SINCE LAST UPDATE
  https://phabricator.kde.org/D15910?vs=48477=57749

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

AFFECTED FILES
  autotests/client/test_wayland_surface.cpp
  src/client/registry.cpp
  src/client/surface.cpp
  src/client/surface.h
  src/server/compositor_interface.cpp
  src/server/surface_interface.cpp
  src/server/surface_interface_p.h

To: romangg, #kwin, davidedmundson
Cc: davidedmundson, zzag, kde-frameworks-devel, michaelh, ngraham, bruns


D15910: Implement wl_surface::damage_buffer

2019-02-22 Thread Roman Gilg
romangg added a comment.


  Will be pushed after 5.56 branched off.

REPOSITORY
  R127 KWayland

BRANCH
  damageBuffer

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

To: romangg, #kwin, davidedmundson
Cc: davidedmundson, zzag, kde-frameworks-devel, michaelh, ngraham, bruns


D15910: Implement wl_surface::damage_buffer

2019-02-05 Thread David Edmundson
davidedmundson accepted this revision.
This revision is now accepted and ready to land.

REPOSITORY
  R127 KWayland

BRANCH
  damageBuffer

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

To: romangg, #kwin, davidedmundson
Cc: davidedmundson, zzag, kde-frameworks-devel, michaelh, ngraham, bruns


D15910: Implement wl_surface::damage_buffer

2019-02-05 Thread Vlad Zagorodniy
zzag added a comment.


  Is it good now?

REPOSITORY
  R127 KWayland

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

To: romangg, #kwin, davidedmundson
Cc: davidedmundson, zzag, kde-frameworks-devel, michaelh, ngraham, bruns


D15910: Implement wl_surface::damage_buffer

2019-01-01 Thread Roman Gilg
romangg updated this revision to Diff 48477.
romangg marked an inline comment as done.
romangg added a comment.


  - Rebase on master
  - Flipped 270 fix

REPOSITORY
  R127 KWayland

CHANGES SINCE LAST UPDATE
  https://phabricator.kde.org/D15910?vs=42764=48477

BRANCH
  damageBuffer

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

AFFECTED FILES
  autotests/client/test_wayland_surface.cpp
  src/client/registry.cpp
  src/client/surface.cpp
  src/client/surface.h
  src/server/compositor_interface.cpp
  src/server/surface_interface.cpp
  src/server/surface_interface_p.h

To: romangg, #kwin, davidedmundson
Cc: davidedmundson, zzag, kde-frameworks-devel, michaelh, ngraham, bruns


D15910: Implement wl_surface::damage_buffer

2018-12-28 Thread David Edmundson
davidedmundson added inline comments.

INLINE COMMENTS

> surface_interface.cpp:453
> +if (tr == Tr::Rotated90 || tr == Tr::Rotated270 ||
> +tr == Tr::Flipped90 || tr == Tr::Rotated270) {
> +// calculate transformed + scaled buffer damage

Should this last one be flipped 270?

REPOSITORY
  R127 KWayland

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

To: romangg, #kwin, davidedmundson
Cc: davidedmundson, zzag, kde-frameworks-devel, michaelh, ngraham, bruns


D15910: Implement wl_surface::damage_buffer

2018-12-28 Thread Roman Gilg
romangg added a comment.


  Ping

REPOSITORY
  R127 KWayland

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

To: romangg, #kwin, davidedmundson
Cc: davidedmundson, zzag, kde-frameworks-devel, michaelh, ngraham, bruns


D15910: Implement wl_surface::damage_buffer

2018-10-02 Thread Roman Gilg
romangg updated this revision to Diff 42764.
romangg marked 3 inline comments as done.
romangg added a comment.


  - Remove rects call
  - Respect buffer scale
  - Test damage against scaled surface

REPOSITORY
  R127 KWayland

CHANGES SINCE LAST UPDATE
  https://phabricator.kde.org/D15910?vs=42760=42764

BRANCH
  damageBuffer

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

AFFECTED FILES
  autotests/client/test_wayland_surface.cpp
  src/client/registry.cpp
  src/client/surface.cpp
  src/client/surface.h
  src/server/compositor_interface.cpp
  src/server/surface_interface.cpp
  src/server/surface_interface_p.h

To: romangg, #kwin, davidedmundson
Cc: davidedmundson, zzag, kde-frameworks-devel, michaelh, ngraham, bruns


D15910: Implement wl_surface::damage_buffer

2018-10-02 Thread Roman Gilg
romangg added inline comments.

INLINE COMMENTS

> davidedmundson wrote in surface_interface.cpp:450
> scale is also a transform.
> 
> Note also that the damage signal is used in kwin assuming it's surface local.

Thanks! After applying the output transform **and** the scale transform, the 
damaged buffer region should be in surface local coordinates, right? I.e. the 
below sent damaged signal should then have the surface local damage.

REPOSITORY
  R127 KWayland

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

To: romangg, #kwin, davidedmundson
Cc: davidedmundson, zzag, kde-frameworks-devel, michaelh, ngraham, bruns


D15910: Implement wl_surface::damage_buffer

2018-10-02 Thread David Edmundson
davidedmundson requested changes to this revision.
davidedmundson added inline comments.
This revision now requires changes to proceed.

INLINE COMMENTS

> surface_interface.cpp:450
> +typedef OutputInterface::Transform Tr;
> +const Tr tr = target->transform;
> +if (tr == Tr::Rotated90 || tr == Tr::Rotated270 ||

scale is also a transform.

Note also that the damage signal is used in kwin assuming it's surface local.

REPOSITORY
  R127 KWayland

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

To: romangg, #kwin, davidedmundson
Cc: davidedmundson, zzag, kde-frameworks-devel, michaelh, ngraham, bruns


D15910: Implement wl_surface::damage_buffer

2018-10-02 Thread Vlad Zagorodniy
zzag added inline comments.

INLINE COMMENTS

> surface.cpp:244
> +{
> +for (const QRect  : region.rects()) {
> +damageBuffer(r);

`for (const QRect  : region) {`

rects() is obsolete. http://doc.qt.io/qt-5/qregion-obsolete.html#rects

REPOSITORY
  R127 KWayland

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

To: romangg, #kwin
Cc: zzag, kde-frameworks-devel, michaelh, ngraham, bruns


D15910: Implement wl_surface::damage_buffer

2018-10-02 Thread Roman Gilg
romangg created this revision.
romangg added a reviewer: KWin.
Herald added a project: Frameworks.
Herald added a subscriber: kde-frameworks-devel.
romangg requested review of this revision.

REVISION SUMMARY
  Missing from our surface handling was the damage_buffer call introduced in
  version 4 of the wl_compositor interface.
  
  Its only difference to a normal damage call is that the damaged region is
  supposed to be defined by the client in buffer coordinates instead of
  surface coordinates. This damage must be tracked separately in KWayland
  and on commit with the buffer transformation united with the normal damage.

TEST PLAN
  Autotest updated.

REPOSITORY
  R127 KWayland

BRANCH
  damageBuffer

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

AFFECTED FILES
  autotests/client/test_wayland_surface.cpp
  src/client/registry.cpp
  src/client/surface.cpp
  src/client/surface.h
  src/server/compositor_interface.cpp
  src/server/surface_interface.cpp
  src/server/surface_interface_p.h

To: romangg, #kwin
Cc: kde-frameworks-devel, michaelh, ngraham, bruns