diff options
author | Miklos Vajna <vmiklos@collabora.com> | 2019-04-17 11:38:47 +0200 |
---|---|---|
committer | Miklos Vajna <vmiklos@collabora.com> | 2019-04-17 15:43:48 +0200 |
commit | d7f4f5650dd2c7fe1ccec50efd806e695b8bc18a (patch) | |
tree | dac2ee1da1119fe1b1d6ac13f21005847d0ea5d8 /slideshow | |
parent | 0fb575b34d039f7c732820467b6db6f8cebd485d (diff) |
tdf#124756 slideshow: avoid mbPaintDisabled for media windows
Commit 3e0092031b73bad107e3122d5d4be2f5bd487744 (tdf#112318 sd opengl:
fix lack of initial animation, 2019-04-05) enabled processing of idle
events between two updates of the slideshow to help OpenGL, which
uncovered a problem with media shapes.
On one hand,
slideshow::internal::ViewMediaShape::implInitializePlayerWindow() calls
EnablePaint(false) on the media window. OTOH,
vcl::Window::ImplCallPaint() handles mbPaintDisabled by invalidating the
relevant area of the window, which causes a paint<->invalidate loop.
Fix the problem by nominally still enabling paints on the media window:
nothing will change in practice (since the actual media overlay will be
on top of it), but this way the loop goes away.
mbPaintDisabled is handled like this since the initial import, the media
window flag was added much later, so it makes more sense to adapt the
later.
Change-Id: Ib89b68d93aa9d09dbcad33eb6e75a8a25ef1b752
Reviewed-on: https://gerrit.libreoffice.org/70869
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Tested-by: Jenkins
Diffstat (limited to 'slideshow')
-rw-r--r-- | slideshow/source/engine/shapes/viewmediashape.cxx | 1 |
1 files changed, 0 insertions, 1 deletions
diff --git a/slideshow/source/engine/shapes/viewmediashape.cxx b/slideshow/source/engine/shapes/viewmediashape.cxx index 6aecf9502d1c..bd50a71b70cb 100644 --- a/slideshow/source/engine/shapes/viewmediashape.cxx +++ b/slideshow/source/engine/shapes/viewmediashape.cxx @@ -446,7 +446,6 @@ namespace slideshow mpMediaWindow->SetBackground( COL_BLACK ); mpMediaWindow->SetParentClipMode( ParentClipMode::NoClip ); mpMediaWindow->EnableEraseBackground( false ); - mpMediaWindow->EnablePaint( false ); mpMediaWindow->SetForwardKey( true ); mpMediaWindow->SetMouseTransparent( true ); mpMediaWindow->Show(); |