Bug 208185

Summary: qt5: Un-break scaling / cropping for full-screen applications (e.g. multimedia/vlc)
Product: Ports & Packages Reporter: David Chisnall <theraven>
Component: Individual Port(s)Assignee: Thomas Zander <riggs>
Status: Closed Overcome By Events    
Severity: Affects Many People CC: f.degner, loise, pi, riggs
Priority: --- Keywords: needs-qa, patch
Version: LatestFlags: riggs: maintainer-feedback+
riggs: merge-quarterly?
Hardware: Any   
OS: Any   
URL: https://codereview.qt-project.org/#/c/139066/3/src/widgets/kernel/qwidget.cpp,unified

Description David Chisnall freebsd_committer 2016-03-21 17:05:26 UTC
With the Qt5 option enabled, vlc:

 - Does not accept mouse input on the image (double clicking to switch between window and full-screen mode doesn't work, neither does using the mouse for DVD menu navigation)

 - Crops videos in full-screen mode (see: https://trac.videolan.org/vlc/ticket/16476 )

I spent several hours trying to debug these problems before discovering that simply replacing the vlc package with vlc-qt4 makes them go away.  The Qt5 option should not have been enabled by default for the package.
Comment 1 Florian Degner 2016-04-17 13:57:23 UTC
Note that the cropping issue is actually a QT5 problem [1]. Applying the changes from [2] seems to fix it.

[1] https://bugreports.qt.io/browse/QTBUG-48321
[2] https://codereview.qt-project.org/#/c/139066/3/src/widgets/kernel/qwidget.cpp,unified
Comment 2 Thomas Zander freebsd_committer 2016-05-14 18:16:27 UTC
Assign to kde team.

@kde: URL (see bug report header) contains the link to the official patch that made it into qt 5.6.0. This patch resolves the issue (verified by f.degner@gmx.de in comment #1, also verified by Ubuntu and openSUSE on respective mailing lists / bug trackers). Could you perform QA, commit to head and MFH? Thanks in advance.
Comment 3 Marie Loise Nolden 2016-05-14 18:48:57 UTC
I would encourage people to test our 5.6 ports, the issue should be solved with this and testing would help us ensure that it is.


svn co http://area51.pcbsd.org/branches/qt-5.6 /path/to/area51

(use kdemerge -q to only update qt5 ports, then pkg remove all qt5 packages and go to devel/qt5; make install.)

Besides, even if the fix gets backported to qt 5.5.1 ports, we're lacking commiters to the ports tree. It would help us *very much* if people with commit rights would help us with commiting and mentoring us so we can do that ourselves in the long run.
Comment 4 Thomas Zander freebsd_committer 2016-05-15 15:21:37 UTC
(In reply to nolden from comment #3)

Of course updating the ports tree to the latest qt upstream release is ultimately the way to go.
I simply proposed the backport (== "include this patch in our ports tree") because it is literally a one-liner and QA / testing will be quick compared to committing all of 5.6.0.
Comment 5 Marie Loise Nolden 2016-05-15 16:59:36 UTC
(In reply to Thomas Zander from comment #4)
Tobias Berner already made a backported patch today:

SVN commit 12535 by tcberner:

Fix the fullscreen behaviour of VLC when using the Qt5 frontend.


PR:             208185

 M  +1 -0      Makefile  
 A             files (directory)  
 AM            files/patch-cr-139066  

Feel free to try it in

svn co http://area51.pcbsd.org/trunk/area51/QT/x11-toolkits/qt5-widgets /path/to/area51

We just need someone to commit the patch to ports.
Comment 6 David Chisnall freebsd_committer 2016-05-16 08:32:08 UTC
Please note that the Qt5 version has *two* regressions relative to the Qt4 version:

1. Full-screen videos are cropped by varying amounts.

2. No input events are received from the video window, making mouse navigation of DVD menus impossible.

I believe that the Qt5 fix only addresses the first of these.  This port should default to Qt4 until both are addressed.  It is unacceptable for us to be shipping a broken vlc by default for over six months while a working one exists in the package collection but is not the default.  vlc-qt5 should be an optional install for people to test, not the default.
Comment 7 Kurt Jaeger freebsd_committer 2016-05-24 10:56:39 UTC
Comment 8 commit-hook freebsd_committer 2016-05-24 11:14:52 UTC
A commit references this bug:

Author: pi
Date: Tue May 24 11:14:01 UTC 2016
New revision: 415779
URL: https://svnweb.freebsd.org/changeset/ports/415779

  x11-toolkits/qt5-widgets: fix scaling / cropping for full-screen applications

  - tcberner:
    Fix the fullscreen behaviour of VLC when using the Qt5 frontend.

  PR:		208185
  Submitted by:	nolden@kde.org (kde)

Comment 9 Kurt Jaeger freebsd_committer 2016-05-24 11:17:50 UTC
Now that one aspect is in the tree, who's in charge of changing multimedia/vlc to disable the QT5 default ?
Comment 10 Thomas Zander freebsd_committer 2016-05-26 12:44:23 UTC
I'll take care of the QT5 default. Thanks!
Comment 11 Thomas Zander freebsd_committer 2016-05-27 18:07:30 UTC
After r415944 I don't observe any of the described problems with the QT5 frontend.
- Full-screen looks as it should, no cropping problems
- Double-click to switch works
- DVD menu / navigation works with both actual discs and iso files

I started with an empty ~/.config/vlc (since I don't use it regularly) and disabled VDPAU OPTION (since my GPU is not suitable).

Could you double check whether the update helps in your scenario as well?
Comment 12 Thomas Zander freebsd_committer 2016-06-26 12:38:08 UTC
Closing for now. If the problem persists, the PR can be reopened for further investigation.