Bug 106577 - Graphical glitches during dragging (GTK3)
Summary: Graphical glitches during dragging (GTK3)
Status: RESOLVED FIXED
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: graphics stack (show other bugs)
Version:
(earliest affected)
5.4.0.0.alpha0+
Hardware: All Linux (All)
: medium normal
Assignee: Caolán McNamara
URL:
Whiteboard: target:5.4.0
Keywords: bibisected, bisected, regression
Depends on:
Blocks: GTK3
  Show dependency treegraph
 
Reported: 2017-03-16 16:24 UTC by Aron Budea
Modified: 2017-03-20 15:23 UTC (History)
2 users (show)

See Also:
Crash report or crash signature:


Attachments
Screenshot (134.86 KB, image/png)
2017-03-16 16:24 UTC, Aron Budea
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Aron Budea 2017-03-16 16:24:32 UTC
Created attachment 131941 [details]
Screenshot

In Impress, drag the previously docked Slides pane around.
Note how the slide area isn't repainted (see attached screenshot).

Only happens with GTK3 VCL plugin. It also seems to be a regression, as it doesn't happen in the latest commit from 5.3 bibisect repo.

bad
Version: 5.4.0.0.alpha0+
Build ID: 0ea920eeb35bd3b454a4ca0e0d94ba36be400b98
CPU threads: 4; OS: Linux 4.4; UI render: default; VCL: gtk3; 
Locale: en-US (en_US.UTF-8); Calc: group

good
Version: 5.3.0.0.beta2+
Build ID: 6238f71ddbdc766e733b1c808a4fa7d66f7bde87
CPU Threads: 4; OS Version: Linux 4.4; UI Render: default; VCL: gtk3; Layout Engine: new; 
Locale: en-US (en_US.UTF-8); Calc: group
Comment 1 Aron Budea 2017-03-16 16:34:08 UTC
 c158cc971fa84d41bbd45c447564e9471596211c is the first bad commit
commit c158cc971fa84d41bbd45c447564e9471596211c
Author: Jenkins Build User <tdf@pollux.tdf>
Date:   Thu Feb 16 10:59:09 2017 +0100

    source 555e1ff4cc84682ea73f9976f8e3c6f1d0f22590

# bad: [e999fa3dd04bc4631ccd31b0e560136d458e7f22] source e9e6228533b336317aa809a7aaaa4fd1c338d4f7
# good: [f04172d4ac1553877deea87d267307ad3eb1c99b] source 4136757b4e51c4e6f7cb4132c95538a7f831ef2c
git bisect start 'e999fa3dd04bc4631ccd31b0e560136d458e7f22' 'f04172d4ac1553877deea87d267307ad3eb1c99b'
# good: [03d2b2b3e4192a034cacd04d2d2131a1e367d418] source f2cb396c8d999dc1a519511e504eca643528c3c4
git bisect good 03d2b2b3e4192a034cacd04d2d2131a1e367d418
# good: [d1d805969656b49ac382a90b9a2f9ea446cfcf01] source ca1cb1b4ac43be0e75f579fc38dadae37743617e
git bisect good d1d805969656b49ac382a90b9a2f9ea446cfcf01
# bad: [8dd9539bfa4b203dc8527104d3ce3f9b85bc72bd] source 252ae4f540f2a6bdf1a52139c1ff8a266bd4713c
git bisect bad 8dd9539bfa4b203dc8527104d3ce3f9b85bc72bd
# good: [9fbb8c12de0b9c798cd40d65378d5a00f1b9c3a9] source d8a1059ef2270681861da183ce486b636c07a4b7
git bisect good 9fbb8c12de0b9c798cd40d65378d5a00f1b9c3a9
# bad: [24d509c9b4d71337713145c3e9884f6a777ed7a3] source f675131cf9dbcdcb3057e35e37018edfffe85616
git bisect bad 24d509c9b4d71337713145c3e9884f6a777ed7a3
# good: [51f0d0bce20271221e0aaf985d2f32eb46dd93ef] source a44e94a453cc6f089e63f18a1051efced3a4f1c4
git bisect good 51f0d0bce20271221e0aaf985d2f32eb46dd93ef
# bad: [1f17a99454d3eab1f49c3ac1b9891000ed97f08a] source 7c6278431483efe76059a6a86889f73233fd034b
git bisect bad 1f17a99454d3eab1f49c3ac1b9891000ed97f08a
# good: [0d6c1c2e05e74ae12c3f27d905d441c669af2a9c] source f9d0f55b2eefc1107d238774a00f7062a1e0d5c8
git bisect good 0d6c1c2e05e74ae12c3f27d905d441c669af2a9c
# bad: [15a3814355435e0898f5edb93dc6a7ba7a212950] source 4d4d25ee6fb5d52a690e52252d1749ddd8d7a6f3
git bisect bad 15a3814355435e0898f5edb93dc6a7ba7a212950
# bad: [f788b50043c962f1b19314d441de651e5a8c6dea] source da147a4e64847f62007d3d01f82c8dc59e2f4366
git bisect bad f788b50043c962f1b19314d441de651e5a8c6dea
# bad: [01b4bee87601d0dbf2ba6548619484c555970203] source 58d4a3122ce59c68aa7a4b7e09f76bf15865be9b
git bisect bad 01b4bee87601d0dbf2ba6548619484c555970203
# bad: [c158cc971fa84d41bbd45c447564e9471596211c] source 555e1ff4cc84682ea73f9976f8e3c6f1d0f22590
git bisect bad c158cc971fa84d41bbd45c447564e9471596211c
# first bad commit: [c158cc971fa84d41bbd45c447564e9471596211c] source 555e1ff4cc84682ea73f9976f8e3c6f1d0f22590
Comment 2 Aron Budea 2017-03-16 16:35:17 UTC
The glitches started with the commit referenced below. Adding Cc: to Caolán McNamara, please take a look.

https://cgit.freedesktop.org/libreoffice/core/commit/?id=555e1ff4cc84682ea73f9976f8e3c6f1d0f22590
author		Caolán McNamara <caolanm@redhat.com>	2017-02-07 16:17:02 (GMT)
committer	Caolán McNamara <caolanm@redhat.com>	2017-02-07 16:41:51 (GMT)

"bubble the original gtk surface type through rendering"
Comment 3 Xisco Faulí 2017-03-16 16:48:36 UTC
Confirmed in

Version: 5.4.0.0.alpha0+
Build ID: d3b5bd4a07a619db6bee1c39c32280ac3c620532
CPU threads: 4; OS: Linux 4.8; UI render: default; VCL: gtk3; 
Locale: ca-ES (ca_ES.UTF-8); Calc: group
Comment 4 Commit Notification 2017-03-20 15:22:12 UTC
Caolán McNamara committed a patch related to this issue.
It has been pushed to "master":

http://cgit.freedesktop.org/libreoffice/core/commit/?id=ec864247bc40d92e32e3b0f9916d3e39974c9116

tdf#106577 cairo_mask pattern affects more surface than expected

It will be available in 5.4.0.

The patch should be included in the daily builds available at
http://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
http://wiki.documentfoundation.org/Testing_Daily_Builds

Affected users are encouraged to test the fix and report feedback.
Comment 5 Commit Notification 2017-03-20 15:22:17 UTC
Caolán McNamara committed a patch related to this issue.
It has been pushed to "master":

http://cgit.freedesktop.org/libreoffice/core/commit/?id=edc58993ec81824d2822f0aa623fcbaa0a679fa5

Related: tdf#106577 extend damage rect a little for TrackFrame

It will be available in 5.4.0.

The patch should be included in the daily builds available at
http://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
http://wiki.documentfoundation.org/Testing_Daily_Builds

Affected users are encouraged to test the fix and report feedback.