aboutsummaryrefslogtreecommitdiffstats
path: root/src/quickwidgets
Commit message (Collapse)AuthorAgeFilesLines
* Fix crash when grabbing a QQuickWidget before it is shown.Friedemann Kleint2015-12-151-6/+7
| | | | | | | | Do not access null share contexts. Task-number: QTBUG-49929 Change-Id: I1c88563df71dd6c5d186b6f2ae147614fcc6ded9 Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
* QQuickWidget: Update position of offscreen window in show().Friedemann Kleint2015-12-151-0/+1
| | | | | | | | | | The position of the offscreen window needs to be exact as it is used for popup menus by the Quick Controls. Updating the position in show amends the situation. Task-number: QTBUG-49097 Change-Id: I416021d6632ede45b1f9dc6b35a3ff15394566ee Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
* Make QQuickWidget update inside a proxy widgetLaszlo Agocs2015-12-081-1/+8
| | | | | | | | | | | | | Performance will be bad but this allows having simple scenes in a QQuickWidget embedded into a QGraphicsView (ouch). This kind of setup is strongly discouraged but QWidget already has the readback-based fallback for render(), so we only need to add the update re-routing to the proxy widget. Task-number: QTBUG-49724 Change-Id: I1c80cb0a7b401327304ec7b92c77dc654d843b33 Reviewed-by: Paul Olav Tvete <paul.tvete@theqtcompany.com>
* Create proper offscreen surface the first timePaul Olav Tvete2015-11-271-3/+5
| | | | | | | | | | | Make sure the context is correct the first time we create the offscreenSurface, so we don't have to destroy it immediately afterwards and create a new one. This causes problems with some (probably buggy) drivers. Task-number: QTBUG-48440 Change-Id: I4790e1b02738fc84aca201430548934d8054e2b2 Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
* Merge remote-tracking branch 'origin/5.5' into 5.6Liang Qi2015-11-171-1/+6
|\ | | | | | | | | | | | | Conflicts: src/quick/util/qquickimageprovider.cpp Change-Id: I7ca4e49468b5ba697208287be4684e42b9900023
| * Doc: added documentation to undocumented functionsNico Vertriest2015-11-021-1/+6
| | | | | | | | | | | | | | Task-number: QTBUG-36985 Change-Id: I219375d405fbfb53611c0138698e955d9cd5d821 Reviewed-by: Venugopal Shivashankar <venugopal.shivashankar@digia.com> Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
* | QQuickWidget: Emulate visibility for offscreen windowUlf Hermann2015-11-161-0/+30
| | | | | | | | | | | | | | | | | | The "visibility" and "visible" properties are exported to QML and should return useful values. Task-number: QTBUG-49054 Change-Id: I3c474885653c4b57659b02f183293e3186edc972 Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
* | Add missing "We mean it" comments to private headers.Friedemann Kleint2015-10-061-0/+11
| | | | | | | | | | | | Task-number: QTBUG-48594 Change-Id: Ifc207938de7f0c8995fc712df92665f222612647 Reviewed-by: Alan Alpert <aalpert@blackberry.com>
* | Merge remote-tracking branch 'origin/5.5' into 5.6Liang Qi2015-10-021-1/+6
|\| | | | | | | | | | | | | Conflicts: src/quickwidgets/qquickwidget.cpp Change-Id: I3e2326bc86a9d3adaafbe3830b75ce9afa81c45b
| * Assert that context exists in QQuickWidgetPrivate::renderRobert Loehning2015-09-221-0/+2
| | | | | | | | | | | | Task-number: QTCREATORBUG-15040 Change-Id: I401aec030840175efda2e2f0ec60569ce9c46b02 Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
| * Don't try to render directly without context in showEventRobert Loehning2015-09-221-1/+4
| | | | | | | | | | | | | | | | | | | | Partially reverting db525935ccd64d2c5c674f8a66dbe7096d754e9f Task-number: QTCREATORBUG-15040 Change-Id: I6ced42a3d00bb1c419b2b0d4729bc4f5f3cf8bc7 Reviewed-by: Gunnar Sletta <gunnar@sletta.org> Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
* | Fix up flawed TranslucentBackground usage in docs and examplesLaszlo Agocs2015-09-281-5/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Following the qtbase fixes, start doing things correctly in the QQuickWidget examples too. Remove the checkbox and use a --transparent command line argument (like in hellogl2). In addition --transparent --no_render_alpha can be used to verify the most problematic case: when alpha is present and the backingstore contains semi-transparent pixels in places where the underlying QOpenGLWidget is opaque. Here the result must still be an opaque pixel. This was previously ensured by a glColorMask call, now replaced by glBlendFuncSeparate in QPlatformBackingStore. Task-number: QTBUG-47276 Change-Id: Ia040f899405f73e95e957becee5df43683af9c39 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@theqtcompany.com> Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
* | QQuickWidget: do not render when there is no fbo due to no sizeLaszlo Agocs2015-09-081-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | It is not invalid to have a widget with a 0,0 size. The FBO logic already handles this: no FBO is created in this case, it will be done on a subsequent resize. However, we can still get to render() which is not currently prepared to handle this case. Correct this. Task-number: QTBUG-47588 Task-number: QTBUG-48059 Change-Id: Idd674c536847e5f293fec5a40aa3038600473c27 Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
* | QQuickView/QQuickWidget::errors(): fix crashJ-P Nurmi2015-09-031-1/+1
| | | | | | | | | | | | Change-Id: Ie37ed5fac642931b658d2b738ddd45d23cda54c6 Reviewed-by: Robin Burchell <robin.burchell@viroteck.net> Reviewed-by: Mitch Curtis <mitch.curtis@theqtcompany.com>
* | Merge remote-tracking branch 'origin/5.5' into 5.6Ulf Hermann2015-08-181-2/+2
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/qml/debugger/qv4debugservice.cpp src/qml/jsruntime/qv4value_inl_p.h src/qml/jsruntime/qv4value_p.h src/qml/memory/qv4mm.cpp src/qml/memory/qv4mm_p.h src/qml/qml/qqmlnotifier_p.h src/qml/qml/qqmlproperty.cpp src/quick/items/qquickflickable.cpp src/quick/items/qquicktextedit.cpp tests/auto/quick/qquickwindow/BLACKLIST The extra changes in qqmlbinding.cpp are ported from changes to qqmlproperty.cpp that occurred in parallel with writeBinding() being moved to qqmlbinding.cpp. Change-Id: I16d1920abf448c29a01822256f52153651a56356
| * Consistently use the override keywordThiago Macieira2015-07-191-2/+2
| | | | | | | | | | | | | | Clang doesn't like when it's inconsistent. Change-Id: Ib306f8f647014b399b87ffff13f23eebda07757b Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
* | Retrieve services from debug connector, not via static instance()Ulf Hermann2015-08-041-5/+7
| | | | | | | | | | | | | | | | | | This will allow us to remove the instance() methods and create the services from factories in plugins. Also, it allows us to remove the isDebugging member from QQmlEnginePrivate. Change-Id: Id9d9820a910902ecfdb1e8175e215093ce3d0965 Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
* | Extract minimal abstract interfaces from debug services.Ulf Hermann2015-08-041-2/+2
| | | | | | | | | | | | | | | | We will access the services' functionality through those interfaces once they live in their own plugins. Change-Id: I0a0d7e73c07cb874b3b507cc4a9d304588c87bca Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
* | Avoid multisampled contexts in QQuickWidgetLaszlo Agocs2015-08-042-1/+12
| | | | | | | | | | | | | | | | | | | | Like with QOpenGLWidget, not requesting a multisampled context unnecessarily avoids crashing with Mesa/Intel/EGL (f.ex. in the qquickviewcomparison example when enabling multisampling). Task-number: QTBUG-47509 Change-Id: Ia22110332f639a238cfb3b2c36916f65c00a7bbc Reviewed-by: Andy Nichols <andy.nichols@theqtcompany.com>
* | Extract minimal interface from QQmlDebugServer and use it.Ulf Hermann2015-07-301-3/+3
| | | | | | | | | | | | | | | | | | | | This will allow us to move QQmlDebugServer into a plugin. The new QQmlDebugServer is the interface exposed to connection plugins. The interface exposed to services is renamed to QQmlDebugConnector, as technically it doesn't have to be a "server". Change-Id: Id508b8c0a6960228e889f45a437b73060392db39 Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
* | Remove static proxy methods from QQmlDebugServiceUlf Hermann2015-07-291-2/+3
| | | | | | | | | | | | | | | | | | They all internally map to one-liners and just add to binary size and complexity. Especially, the most used one, isDebuggingEnabled(), simply checks if there is a QQmlDebugServer::instance(). Change-Id: Ib269928e08506894d933f6696e34ff0d3acb048b Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
* | Merge remote-tracking branch 'origin/5.5' into devLiang Qi2015-06-301-1/+8
|\| | | | | | | | | | | | | | | | | | | Conflicts: .qmake.conf src/qml/qml/qqmlengine.cpp src/quick/items/qquickitemsmodule.cpp tools/qml/main.cpp Change-Id: Ida8daf6b4d7e675385f2f5514c446e52dedaf136
| * Redirect the default FBO correctly with QQuickWidgetLaszlo Agocs2015-06-031-1/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Similarly to QOpenGLWidget, functions like QOpenGLFramebufferObject::bindDefault() should bind the QQuickWidget's FBO, not 0, while rendering the scene graph. This becomes particularly important on platforms with surfaceless context support. Here offscreen surfaces are not backed by any surface. Therefore any OpenGL operation accessing the current draw framebuffer with FBO 0 bound may potentially crash, as there is no draw framebuffer at all. The distance field glyph cache exhibits this issue when running with EGL on Mesa: glViewport crashes when we render via QQuickWidget and the current framebuffer is reset to 0. The problem goes away when the code changed is to use bindDefault() - as it should have anyhow - and QQuickWidget is enhanced to communicate the "default" framebuffer to QOpenGLContext, just like QOpenGLWidget does. Task-number: QTBUG-46415 Task-number: QTBUG-43269 Change-Id: I35fe375a0870dadecc4a074dfdec122c6a4c92ab Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@theqtcompany.com> Reviewed-by: Paul Olav Tvete <paul.tvete@theqtcompany.com>
* | Port from Q_ENUMS to new macro Q_ENUM.Friedemann Kleint2015-06-191-1/+2
| | | | | | | | | | | | | | | | | | | | | | Remove Q_ENUMS in favor of the new Q_ENUM macro which provides registration as meta enum and a debug stream operator. QQuickXmlListModel::Status is left unmodified as porting it creates a link error in tst_qquickxmllistmodel. Change-Id: Id5e6192c9f85e7c94332508fbd91873ddda31e1a Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
* | Merge remote-tracking branch 'origin/5.5' into devSimon Hausmann2015-06-041-3/+13
|\| | | | | | | | | | | | | | | | | | | | | Conflicts: src/qml/jsruntime/qv4engine_p.h src/quick/items/qquickitemsmodule.cpp src/quick/items/qquicktext.cpp src/quick/util/qquickpixmapcache.cpp tests/auto/quick/qquickwindow/tst_qquickwindow.cpp Change-Id: I90ecaad6a4bfaa4f36149a7463f4d7141f4a516a
| * Fix flickering when QQuickWidget becomes visibleJoni Poikelin2015-06-011-1/+1
| | | | | | | | | | | | | | | | | | | | | | QQuickWidget used short delay before rendering. This caused black area to flash on the widget briefly. Instead of scheduling redraw, render scene immediately. Task-number: QTBUG-46387 Change-Id: I342d96a1aaef3244190221807b0d816815697623 Reviewed-by: Gunnar Sletta <gunnar@sletta.org> Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
| * Create contexts and pbuffers with the correct screen in QQuickWidgetLaszlo Agocs2015-05-121-2/+12
| | | | | | | | | | Change-Id: I8e9db998eee0af5f62c1384f2dcb2028254cc642 Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
* | Merge remote-tracking branch 'origin/5.5' into devLiang Qi2015-04-222-2/+48
|\| | | | | | | | | | | | | | | | | Conflicts: src/qml/qml/qqmlbinding.cpp src/qml/jsruntime/qv4arraybuffer.cpp src/qml/jsruntime/qv4functionobject.cpp Change-Id: Ic752e9dfd69b282093651c9234c110a49762f06d
| * Merge "Merge remote-tracking branch 'origin/5.4' into 5.5" into refs/staging/5.5Liang Qi2015-04-161-1/+1
| |\
| | * Merge remote-tracking branch 'origin/5.4' into 5.5Liang Qi2015-04-161-1/+1
| | |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: tests/auto/qml/debugger/qv4profilerservice/qv4profilerservice.pro tests/auto/qml/debugger/qqmldebuggingenabler/qqmldebuggingenabler.pro Change-Id: I76d87e3df97ebdba902ca3d7488c1582eca2a83c
| | | * Use qt_subtract_from_timeout instead of duplicating qt_timeout_valueDaniel Teske2015-04-141-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The same function was duplicated 5 times in qtbase, so create one copy to rule them all and use it also in QtDeclarative. Change-Id: I4e39a7ee0541ce4fe9710cea344e537ee011bbe9 Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>
| * | | Support sRGB for text with QQuickWidgetLaszlo Agocs2015-04-161-0/+21
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | Otherwise we get visually different results with QQuickWindow and QQuickWidget on OS X. Task-number: QTBUG-42861 Change-Id: Icbf6f6e980129f5de73a88e7be7bef4f592e875e Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
| * | Match the offscreen windows position to the QQuickWidget position.Christian Strømme2015-04-132-1/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The position of the offscreen window would always be set to 0,0, making it impossible to get the actual position of the scene. With this change, it will be possible for child windows or items in the scene to correctly calculate their global position. Change-Id: Ibd3ff03880209047776e86ad889b40cbf79c3e6e Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
* | | Merge remote-tracking branch 'origin/5.5' into devLiang Qi2015-04-132-1/+22
|\| | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/quick/util/qquickpixmapcache.cpp tests/auto/quick/qquickwindow/BLACKLIST Change-Id: Ie81612f2884f8ea508c48ba2735ec54ea1c2eca5
| * | QQuickWidget: expose the underlying QQuickWindowGiuseppe D'Angelo2015-03-272-0/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There's a number of APIs (such as all the scenegraph-related signals) that are currently missing from QQuickWidget. Instead of duplicating every API in QQuickWidget, simply expose the underlying offscreen QQuickWindow. Task-number: QTBUG-45260 Change-Id: I1a89fe600ce675963ea24ee6dd56d6ca4fea9cd2 Reviewed-by: Andy Shaw <andy.shaw@digia.com> Reviewed-by: Gunnar Sletta <gunnar@sletta.org> Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
| * | Fix flushing QQuickWidgetLaszlo Agocs2015-03-261-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Like it was done for QOpenGLWidget. Task-number: QTBUG-45106 Change-Id: I69c11f53f781f57ceebb9b7ed95a2753bff31492 Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
* | | Merge remote-tracking branch 'origin/5.5' into devSimon Hausmann2015-03-171-1/+2
|\| | | | | | | | | | | Change-Id: I6033aba359ac551f450ad517d20a0986bf4655f6
| * | Add missing flush for multisampled QQuickWidgetLaszlo Agocs2015-03-091-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | Otherwise we might be using a half-ready texture when performing compositing. The issue was very visible on OS X at least. Task-number: QTBUG-39917 Change-Id: I71326cb99567f458a6ca7a2cad322a315ee6674f Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
* | | QQuickView/QQuickWidget: Improve diagnostics message for non-QQuickItem root ↵Robin Burchell2015-02-231-5/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | fallback case. We don't want to recommend qmlscene, and QtQuick1 is being deprecated, so there's no need to spell it out anymore either. Change-Id: Ia4b87d1a4b3afdae9ea9c13a89ac5cb78c85f06d Reviewed-by: Alan Alpert <aalpert@blackberry.com>
* | | QQuickView/QQuickWidget: Improve diagnostics for using a QWindow as a base ↵Robin Burchell2015-02-231-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | item in a scene. The current message is rather confusing, as it was aimed at users porting from QtQuick 1 -- but it is perfectly possible to get a non-QQuickItem root in a QQuickView scene right now with QtQuick 2 only. Change-Id: Ibd800f8a817c874af5eaa1746567ee289988fd01 Reviewed-by: Alan Alpert <aalpert@blackberry.com>
* | | QQuickView/QQuickWidget: Report an error if rootObject ends up null.Robin Burchell2015-02-231-0/+7
|/ / | | | | | | | | | | | | | | | | | | | | | | This can happen when trying to use a non-QQuickItem item as the root item in a QQuickView, for instance, a Window or ApplicationWindow item. This generates a warning (correctly), but does not set an error state on the view, so automated tooling and the like does not know that the scene was not successfully loaded. Change-Id: I1dc4191ef07187e9b1929995aedb01c155b0957c Reviewed-by: Alan Alpert <aalpert@blackberry.com>
* | Update copyright headersJani Heikkinen2015-02-124-28/+28
| | | | | | | | | | | | | | | | | | Qt copyrights are now in The Qt Company, so we could update the source code headers accordingly. In the same go we should also fix the links to point to qt.io. Change-Id: I61120571787870c0ed17066afb31779b1e6e30e9 Reviewed-by: Iikka Eklund <iikka.eklund@theqtcompany.com>
* | Implement dnd support in QQuickWidget differentlyLaszlo Agocs2015-02-112-15/+43
| | | | | | | | | | | | | | | | This way subclasses can reimplement functions like dragEnterEvent(). Task-number: QTBUG-43821 Change-Id: I24bd14de8aab5ab741bc36330b4dcf7c83dedbf6 Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
* | Merge remote-tracking branch 'origin/5.4' into devSimon Hausmann2015-01-162-0/+10
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: .qmake.conf src/qml/jsruntime/qv4context_p.h src/qml/jsruntime/qv4debugging.cpp src/qml/jsruntime/qv4engine.cpp src/qml/jsruntime/qv4functionobject_p.h src/qml/jsruntime/qv4qobjectwrapper.cpp src/quick/scenegraph/shaders/visualization.frag tests/auto/qml/qjsengine/tst_qjsengine.cpp Change-Id: I492e8546c278f80a300a2129e9a29d861e144a30
| * Input method support for QQuickWidgetPaul Olav Tvete2014-12-112-0/+10
| | | | | | | | | | | | | | | | | | | | Make sure QGuiApplication::focusObject() returns the QQuickItem that has focus, and forward input method events. Task-number: QTBUG-42677 Change-Id: Ic07f93a2529c3dde67272b489bdc61fd25582a69 Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com> Reviewed-by: Jørgen Lind <jorgen.lind@theqtcompany.com>
* | Merge remote-tracking branch 'origin/5.4' into devFrederik Gladhorn2014-10-291-3/+1
|\| | | | | | | | | | | | | | | | | Conflicts: src/quick/items/qquickaccessibleattached_p.h src/quick/items/qquickwindow.cpp src/quick/scenegraph/qsgthreadedrenderloop.cpp Change-Id: I8bf07487a75f9d1b0d6efa5914dd06875fc9654d
| * Remove unnecessary doneCurrent in QQuickWidgetLaszlo Agocs2014-10-231-2/+0
| | | | | | | | | | | | | | | | | | Excessive makeCurrent - doneCurrent pairs should be avoided. We already do this in QOpenGLWidget and the QPlatformBackingStore composition code. Remove the doneCurrent from QQuickWidget too. Change-Id: I6f998d381c33880c470f34d7c8462b6ed8cd8ae9 Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
| * Fix disfunctional QQuickRenderControl with multiple screensLaszlo Agocs2014-10-221-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Having a retina and non-retina screen connected resulted in getting no output from QQuickRenderControl and QQuickWidget on the non-retina screen. This is caused by the fact that Quick is blindly calling QWindow::devicePixelRatio(). This approach is wrong when using QQuickRenderControl since the QQuickWindow does not have an actual native window and so devicePixelRatio() merely returns some default value which will definitely be wrong for one of the screens. The patch fixes the problem by introducing QQuickWindow::effectiveDevicePixelRatio(), which, via QQuickRenderControl::renderWindowFor, supports the redirected case too. Task-number: QTBUG-42114 Change-Id: I057e01f0a00758dde438fc9b10af3a435b06bb0b Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
* | Merge remote-tracking branch 'origin/5.4' into devFrederik Gladhorn2014-10-092-36/+46
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/quick/items/context2d/qquickcanvasitem.cpp src/quick/scenegraph/coreapi/qsgbatchrenderer.cpp src/quick/scenegraph/coreapi/qsgrenderer.cpp src/quick/scenegraph/qsgadaptationlayer.cpp src/quick/scenegraph/qsgrenderloop.cpp src/quick/scenegraph/qsgthreadedrenderloop.cpp src/quick/scenegraph/qsgwindowsrenderloop.cpp src/quick/scenegraph/util/qsgatlastexture.cpp src/quick/scenegraph/util/qsgtexture.cpp src/quick/util/qquickprofiler_p.h Change-Id: Ie274c3baf72a8a0711c87d67238d68e2b2887429
| * Recreate the fbo on screen change in QQuickWidget when neededLaszlo Agocs2014-09-232-29/+34
| | | | | | | | | | | | | | | | | | | | | | | | Move the rendering code out into a separate function since it is now called from three places. Like in QOpenGLWidget, the FBO may need to be recreated with a different size in case the window is moved onto a screen with a different device pixel ratio. Change-Id: Iaaa42a06dab9e02710b0a7dafb0ea8c018b69ec2 Reviewed-by: Gunnar Sletta <gunnar@sletta.org>