Details
-
Bug
-
Resolution: Done
-
P1: Critical
-
5.3.2, 5.4.0 Beta
-
None
-
Mid 2012 macbook pro, OSX 10.8.5, xcode 5.1.1, Qt5.4.0 beta, iPad Air iOS 7.1.2
Description
This is a bizzaro one. It's iOS only as far as I know (Linux and Mac fine; Android and Windows untried). I think it may have been introduced somewhere between 5.3.1 (which I think was OK; will confirm in a follow up) and 5.4.0beta, but the linked code and output were produced from 5.4.0beta.
Basically, if you have some QML with a VideoOutput, and the VideoOutput is supposed to be in some particular place (whether controlled by anchors or explicit positioning) then on iOS the video is just displayed at the videos native size, ignoring any QML layout. If the video is bigger than the display it will happily occupy the whole screen and just show the top left of the video.
Curiously though, if you rotate the device, it will be magically moved to the intended size and position!
And as an additional curiosity, if the associated MediaPlayer includes a
onStatusChanged: {if (status==MediaPlayer.EndOfMedia) play();}
to loop the video, then when it does restart it reverts back to the native video size.
There is a minimal reproducing example at https://bitbucket.org/timday/qmltoy/ but all it is a trivial app consisting of no more than a QQuickView, and looking for a QML file index.qml in (on iOS) Documents/ ; the index.qml contains the problem QML.