aboutsummaryrefslogtreecommitdiffstats
path: root/src/quick/items/qquickwindow.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Fix polishItems bugFabian Bumberger2014-02-151-6/+10
| | | | | | | | | | | | updatePolish is not called for items which are not visible. However if a polish is scheduled, updatePolish has to be called when the item becomes eventually visible. This patch makes sure, that invisible items are not removed from the itemsToPolish list. Change-Id: I1ad929dc6de8e61edbd1c4df88ae5bc951979ff1 Reviewed-by: Ulf Hermann <ulf.hermann@digia.com> Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
* Add Image::mipmap to support mipmapping of images.Gunnar Sletta2014-02-121-1/+0
| | | | | | | | | [ChangeLog][QtQuick] New feature: Image.mipmap Task-number: QTBUG-19961 Change-Id: I13acb2408d5b126790adaf9d324ad4beda1e3646 Reviewed-by: Michael Brasser <michael.brasser@live.com>
* Visualization modes for rendering.Gunnar Sletta2014-01-291-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There are two ways of setting this right now. One is to set it on startup using an environment varible. QSG_VISUALIZE= "batches" - Visualize batchtes in the renderer. Merged batches are drawn with solid color and Unmerged batches are drawn with a diagonal line pattern. Few unique colors means good batching. Unmerged batches are bad if they contain many individual nodes. "clip" - Visualize clipping as red areas on top of the scene. "overdraw" - Visualize all items in 3D to highlight overdraws. This mode can also be used to detect geometry outside the viewport to some extent. Opaque items are rendered with a green tint while translucent items are rendered with a red tint. The bounding box for the viewport is rendered in blue. Opaque content is easier for the scenegraph to process and it can also be faster to render on some hardware. "changes" - Changes in the scenegraph are visualized with a flashing overlay with a random color. Changes on a primitive is visualized with a solid color while changes in an ancestor, such as a matrix or opacity changes is visualized with a pattern. The second way to set the visualization mode is to set it at runtime through QString QQuickWindowPrivate::customRenderMode. This "API" is string based so it is not tied to the batch renderer and in theory can support other custom renderers. The visualized elements do not respect clipping and rendering order is arbitrary. Change-Id: I31efbe53fc905145bf48080ede3e36945cb60dcf Reviewed-by: Michael Brasser <michael.brasser@live.com>
* Merge remote-tracking branch 'origin/stable' into devSimon Hausmann2014-01-241-0/+2
|\ | | | | | | | | | | | | | | | | | | | | Conflicts: src/imports/dialogs/qquickmessagedialog.cpp src/imports/dialogs/qquickmessagedialog_p.h src/qml/debugger/qqmlprofilerservice_p.h src/qml/jsruntime/qv4regexpobject.cpp tests/auto/qml/debugger/qqmlprofilerservice/qqmlprofilerservice.pro Change-Id: Ic8a43366b44d6970966acbf03b206d0dee00c28d
| * Enforce texture cleanup to happen at the end of the sync phase.Gunnar Sletta2014-01-221-0/+2
| | | | | | | | | | | | | | | | | | | | | | This was ok for the threaded renderer, but for the single-threaded renderers where the event loop was spinning we could run the risk of scheduling a texture for deleteLater() and then cleaning it up before we got around to the sync phase. Task-number: QTBUG-35670 Change-Id: I92074294b427fd8ab2a1823ba79c7ac3b59094ec Reviewed-by: Michael Brasser <michael.brasser@live.com>
* | QQuickWindow: Make sure popups receive key events on MacGabriel de Dietrich2014-01-151-11/+30
| | | | | | | | | | | | Change-Id: Ifaf96e567e735d9a837eaef798061bf08fc4a752 Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com> Reviewed-by: Alan Alpert <aalpert@blackberry.com>
* | Dont call updatePolish if an item is not visibleFabian Bumberger2014-01-081-2/+4
| | | | | | | | | | | | | | | | | | [ChangeLog][QtQuick][QQuickItem] "updatePolish" is not called for invisible items any more. Task-number: QTBUG-31830 Change-Id: Idad6107afaf0c6e6c96d9404ac286695c21883c7 Reviewed-by: Robin Burchell <robin+qt@viroteck.net> Reviewed-by: Gunnar Sletta <gunnar.sletta@jollamobile.com>
* | Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2014-01-061-1/+1
|\| | | | | | | Change-Id: If9a205bea219b9aca95d78b1e556ca9bbff58dd0
| * Doc: Fix broken linksSze Howe Koh2013-12-301-1/+1
| | | | | | | | | | Change-Id: I4c4577edde96978a986606bf30fbb925f871bd42 Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
* | Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2013-12-161-5/+39
|\| | | | | | | | | | | | | | | | | Conflicts: src/quick/items/qquickitem.cpp src/quick/items/qquicktext.cpp tests/auto/quick/qquicklistview/tst_qquicklistview.cpp Change-Id: I0bc5786098193c2c40b6fd8905de75d90f6ed0cf
| * Fix touch to mouse synthesis/propagation.Robin Burchell2013-12-131-3/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | Having mouse events synthesised from both QtGui and internally in QtQuick is not a great way togo about things, especially when QtGui doesn't have the same degree of knowledge as QtQuick about the items in the scene. Thus, we now accept all events inside QtQuick to block QtGui synthesis, which should fix a significant amount of edge-case touch breakage/bad behavior. Change-Id: I14e1c87761c8f43160049b5e6f9da15b4e5edbb7 Done-with: Martin Jones <martin.jones@jollamobile.com> Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
| * Mark item as dirty when nodes are cleanedMichael Brasser2013-12-101-0/+2
| | | | | | | | | | | | | | | | Otherwise they may not be recreated in the correct configuration. Change-Id: Ib103b1874d7f104680eae7b6f43f722b5fa93bf2 Done-with: Aaron Kennedy <aaron.kennedy@jollamobile.com> Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
| * Only emit focusObjectChanged when an actual change occurs.Michael Brasser2013-12-061-2/+6
| | | | | | | | | | | | | | Change-Id: If18b460a8773e5cac597c02c51836b79711c20f4 Done-with: Matthew Vogt <matthew.vogt@jollamobile.com> Reviewed-by: Simon Hausmann <simon.hausmann@digia.com> Reviewed-by: Alan Alpert <aalpert@blackberry.com>
* | Fix delivery of QEvents to QQuickItemsDaniel d'Andrada2013-11-291-27/+19
| | | | | | | | | | | | | | | | | | | | | | Make them go through QObject::event() and comply to filtering from objects passsed to QObject::installEventFilter() Task-number: QTBUG-32004 Change-Id: Ib6972e7f5e588bee986ae5f2d69aa6fccb58af95 Reviewed-by: J-P Nurmi <jpnurmi@digia.com> Reviewed-by: Alan Alpert <aalpert@blackberry.com> Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
* | Merge branch 'stable' into devSergio Ahumada2013-11-271-68/+60
|\| | | | | | | | | | | | | Conflicts: .qmake.conf Change-Id: I10d4f9e993d23750a6e8ddc1291b79e47fc83c64
| * Merge branch 'release' of ssh://codereview.qt-project.org/qt/qtdeclarative ↵Simon Hausmann2013-11-261-10/+12
| |\ | | | | | | | | | | | | | | | into stable Change-Id: I0bf06be69927d5961f1bdb4948c3572ef6111923
| | * No assert when the focus changes and a window has no active focus item.Frederik Gladhorn2013-11-251-10/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [ChangeLog][QtQuick] Fix crash when showing and hiding a window that has no active focus item. QtQuickControls hit the situation where a popup window was shown without ever having an active focus item. When then closing the popup, clearFocusInScope would assume it had to always modify the old focus, but in this case the focus would be on the window itself, so there is nothing to update. Task-number: QTBUG-35057 Change-Id: Ifbde4689d39f98b13e6f90573cb22e28bb86f2c4 Reviewed-by: J-P Nurmi <jpnurmi@digia.com> Reviewed-by: Liang Qi <liang.qi@digia.com>
| | * Be even more tolerant towards broken platform behavior.Gunnar Sletta2013-11-221-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When the platform (Mac in particular) sends us exposes for windows which are not renderable, we store it for later and fake expose events when we get resized. Task-number: QTCREATORBUG-10814 Change-Id: I909bb5a920550589322afd97ae1834884754cf81 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
| * | Fix assert after giving focus to a disabled item.Andrew den Exter2013-11-221-6/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If an item has focus stolen by another item remove activeFocus from it even if the item that gains focus doesn't gain activeFocus. Otherwise the focus tree will enter a state where an item that is not the subFocusItem of its focus scope has activeFocus which is invalid and will trigger an assert in QQuickWindowPrivate::clearFocusInScope(). Task-number: QTBUG-34779 Change-Id: I72408ec0e4fd9b05ef595147ef1ef95b6aed1c16 Reviewed-by: Alan Alpert <aalpert@blackberry.com>
| * | Use the sharing context when grabbing a hidden QQuickWindow.Jocelyn Turcotte2013-11-201-0/+1
| |/ | | | | | | | | | | | | | | This allows QtWebEngine auto tests to grab the window's contents without having to show it. Change-Id: I5989a9815d0f69a7eff655f322c99d6051fc4d25 Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
| * Doc: Fixed QtQuick.Window documentationJerome Pasion2013-11-151-23/+23
| | | | | | | | | | | | | | | | | | | | | | -fixed import statement in \qmlmodule and \inqmlmodule command. -Removed extra identifier in property documentation. Task-number: QTBUG-33360 Change-Id: I1e7ca5f418c327d42247ab4f4a11733c63d8c273 Reviewed-by: Alan Alpert <aalpert@blackberry.com> Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com> Reviewed-by: Lars Knoll <lars.knoll@digia.com>
| * Refactored Animator internalsGunnar Sletta2013-11-061-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Change the design from posting events for starting and stopping to use the scene graph's existing 'sync' point. This gives much higher predictability and makes both ownership and cleanup cleaner and also reduces intermediate states while events are waiting to be delivered. Task-number: QTBUG-34137 Change-Id: I069ac22acbddaa47925b8172ba98ac340fe9bf8d Reviewed-by: Michael Brasser <michael.brasser@live.com>
| * Doc: Fix broken linksSze Howe Koh2013-11-051-1/+1
| | | | | | | | | | | | Change-Id: Ie7408409ddbaa354370267f2dd74326ec56a4186 Reviewed-by: Jerome Pasion <jerome.pasion@digia.com> Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
| * QQuickWindowPrivate: implement clearFocusObjectRichard Moe Gustavsen2013-11-011-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Ref change: cfa85c7 (qtbase) Implement QQuickWindowPrivate::clearFocus() to enable platform plugins to remove focus from the focus object when the virtual keyboard closes. On mobile platforms line edits etc are not supposed to be drawn with focus and blinking cursors unless the virtual keyboard (or another keyboard) is open. With the new virtual QWindowPrivate::clearFocus() the platforms can remove focus without deactivating the whole window. The old implementation on iOS deactivated the whole window when the keyboard was closed. But this was unfortunate, especially in QtQuick, since a qquicktextinput would not get active focus unless the window was active. But the platform would not activate the window unless the keybaord was open. So, a classic chicken - egg problem. Change-Id: I62e652a3cd85f1313713c5d086d9537cc2f9826f Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com> Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
| * Use one render loop per QQuickWindowGunnar Sletta2013-10-301-27/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | See the task for the full reasoning behind this patch. The threaded renderloop has been refactored to have one window per thread. This is mostly a simplification of the current code path where for loops over multiple windows are turned into if (window). The QSGContext has been split into two classes, QSGRenderContext for which there is one per OpenGLContext. The rest of the patch is name changes and a couple of cleanups in the hopes of simplifying this change. Task-number: QTBUG-33993 Change-Id: I31c81f9694d7da7474a72333169be38de62613c4 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* | Ignore mouse events synthesized by the OS in Quick2Laszlo Agocs2013-10-141-0/+26
|/ | | | | | | | | | | Make QQuickWindow ignore mouse events generated by the system from touch events (e.g. on Windows). This will allow us to remove the mousefromtouch parameter for the windows plugin and restore accepting all mouse events in the platform plugin as the default behavior. Change-Id: I82ff5fa97b02ebc69b61735e2366176e0a6a406c Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
* qdoc: no longer recognizes the version nr in QML refsMartin Smith2013-10-021-23/+23
| | | | | | | | | | All QML references of the form <QML-module-name><QML-module-version>::<QML-type>::<member-name> have had the <QML-module-version> removed i. Task-number: QTBUG-33776 Change-Id: Idde279e0f254cd24ea44f9841662dd81a2c5bbc6 Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
* Fix license headers of QtQuick sources.Gunnar Sletta2013-09-301-1/+1
| | | | | Change-Id: I3750c47640bf21c3567c5fa1c4667e3e2552942e Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Doc: Made Qt Quick items' \since consistent.Jerome Pasion2013-09-251-16/+16
| | | | | | | | | | | | | | | | Qt 5.2: -"\since QtQuick 2.2" -> "\since 5.2" Qt 5.1: -"\since QtQuick 2.1" -> "\since 5.1" -"\since Qt 5.1" -> "\since 5.1" Qt 5.0: -"\since QtQuick 2.0" -> "\since 5.0" Task-number: QTBUG-32172 Change-Id: I699b00b31373a434ddb8f4caccfef40c588bf8a4 Reviewed-by: Martin Smith <martin.smith@digia.com>
* Animators - Render thread animation systemGunnar Sletta2013-09-211-0/+10
| | | | | | | | | | | | This introduces 6 new QML types for animating state in the scene graph when the UI thread is blocked. The QObject property being animated is updated after the animation completes. It works also with the "windows" and "basic" render loops, but offer litte benefit then compared to in the "threaded" case. Change-Id: Ic19e47c898c0b8bd53e457db922b3c9c457c8147 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Don't polish items if the screen is 0Lars Knoll2013-09-181-0/+2
| | | | | | | | | | | | | The current code leads to an assertion during qapp destruction time, as the screen gets set to 0, which triggers a force polish that in turns accesses the qapp instance. In addition, we don't need to do any work when the screen is 0, as the window can't be visble in that case. Once it gets visible again, forcePolish() will be called again. Change-Id: I81d9a11e494b4573a56d06bca651cc6b5fa785c7 Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
* Avoid copying touchpoints, and only check until we find a match.Robin Burchell2013-09-171-2/+7
| | | | | | | | Change-Id: I46fad782e93fe1f940acec05f4e1bb4afb5be230 Reviewed-by: Andrew Knight <andrew.knight@digia.com> Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com> Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com> Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
* Expose drag threshold in MouseAreaJens Bache-Wiig2013-09-131-2/+2
| | | | | | | | | | | | | | | | | | | | In several cases such as for creating a Slider, it is useful to have a 0 pixel threshold in order to initiate a drag operation. We have previously hardcoded this to a platform dependent (usually 10 pixel) value for MouseArea. Note that we have no way of indicating the version/revision number in a grouped property for documentation at the moment. In addition we deliberately had to remove the REVISION from the property because it is blocked by QTBUG-33179. However, since this is not a user-creatable type it should not cause any issues in practice. This patch adds MouseArea.drag.threshold in order to improve on this. Change-Id: Ia4871e64fab39e30c4494f00be99ad38cdd630df Reviewed-by: J-P Nurmi <jpnurmi@digia.com>
* Convenience function for resetting the OpenGL state.Gunnar Sletta2013-09-091-0/+62
| | | | | | Change-Id: I222930c74b9153c4d6d2b62afe0cc2906afb61fa Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com> Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* Add support for external drag and drop in Quick items.Chris Meyer2013-09-091-2/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add dragType enums with values of None, Automatic, Internal (default). Setting to Automatic allows startDrag to be called automatically. Setting to Internal (default) retains old behavior. Add mimeData to Drag item to enable external drags. Call startDrag to start drag manually or change from internal drag to external drag. Added events dragStarted and dragFinished that get invoked from startDrag. Mime data must be specified in the mimeData property as mime-type / data pairs. Moved QQuickDrag from qquickmousearea* files to qquickdrag* files to reduce header interdependencies that caused linking errors in other modules and also to improve code organization. Allow DropArea to receive and process external data. Introduced new variable containsDrag to QQuickDropAreaPrivate. This replaces mimeData which was previously being used to determine if a drop operation was currently occurring. The problem was that mimeData was being externally destructed. Also introduced accessor methods for getting color, html, image, text, and urls out of the drop. This facilitates dropping of external data of those types onto a DropArea. Added example quick/externaldraganddrop. Task-number: QTBUG-27498 Change-Id: I1420df7c161ea3399e49a23305273e106baa246f Reviewed-by: Alan Alpert (Personal) <416365416c@gmail.com>
* Polish items on screen change.Morten Johan Sørvig2013-09-091-0/+21
| | | | | | | | The window device pixel ratio may change. Repaint all items. Change-Id: I09b782800c15ec6290bf79cb7c7a5d6e6c08b528 Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
* Remove unused variableLars Knoll2013-09-021-1/+0
| | | | | Change-Id: I163baea9105c6241a7d162a7e7468a70a29b3eaf Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
* QQuickWindow: handle QWheelEvent::phaseJ-P Nurmi2013-08-191-2/+2
| | | | | Change-Id: Id2540caae7e5703d352d0cb115529b1be1c21d96 Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
* Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2013-08-191-5/+12
|\ | | | | | | | | | | | | | | Conflicts: tests/auto/quick/qquickgridview/qquickgridview.pro tests/auto/quick/qquickitem/qquickitem.pro Change-Id: Ic54cafbdda1ac22757d2ee65dcc63a1b167c7556
| * Dragging MouseArea nested in Flickable does not work with touch to mouseMartin Jones2013-08-191-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | A MouseArea with a drag target nested in a Flickable does not work. This is due to QQuickWindow calling childMouseEventFilter() twice - once in sendFilteredTouchEvent() and later in sendEvent(). Since childMouseEventFilter() has already been called, deliver the mouse event directly in sendFilteredTouchEvent(). Task-number: QTBUG-32920 Change-Id: I22acee3c66ee6c06e71c9c876fb02dbcb6119a8d Reviewed-by: Andrew den Exter <andrew.den.exter@qinetic.com.au>
| * Fix hover event crashJosh Faust2013-08-121-1/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | It was possible for a hover event to be sent to a QQuickItem that has already been scheduled to be deleted (through deleteLater()). This lead to an access on an already-freed object when the leave event is generated. This change ensures that the item is part of a scene before generating the hover enter event. Task-number: QTBUG-32771 Change-Id: I69adb6bbd0ae52c70a6bda4e6c918b7671549a4c Reviewed-by: Alan Alpert <aalpert@blackberry.com>
* | Public API for creating atlas textures, when available.Gunnar Sletta2013-08-121-8/+24
| | | | | | | | | | | | | | | | | | Atlas textures are currently only used when scenegraph is combined with the customcontext from the playground/scenegraph module. Change-Id: I42f62abdad42e97cc1dcdc05bfb16ecf2839dc0e Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
* | Merge branch 'dev' of ssh://codereview.qt-project.org/qt/qtdeclarative into ↵Simon Hausmann2013-07-221-0/+12
|\| | | | | | | | | | | | | | | | | | | wip/v4 Conflicts: src/quick/items/context2d/qquickcontext2d.cpp tests/auto/quick/qquickvisualdatamodel/qquickvisualdatamodel.pro Change-Id: I36a4fd28b3156839aecd70039a3ba566bf19a0bc
| * Document QWindow::alert() in Qt Quick.Friedemann Kleint2013-06-281-0/+12
| | | | | | | | | | | | | | | | Task-number: QTBUG-32069 Task-number: QTBUG-30416 Change-Id: If7e9fd63d858416a23ff768272d94219595be1c5 Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
* | Get rid of the first half of QQmlGuard usageLars Knoll2013-07-051-1/+1
|/ | | | | | | | | QQmlGuard was being used as a more performant replacement for QPointer. QPointer got now fixed in Qt 5.0, making this class obsolete. Change-Id: I77eef066c4823af4b074ef32d4d78dbd67c36cd0 Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
* Fix compiler warning about unused parameterKai Koehne2013-06-101-1/+1
| | | | | | | | | | | Fix gcc compiler warning about unused parameter: qquickwindow.cpp:111:10: warning: unused parameter ‘e’ [-Wunused-parameter] This got introduced by commit 9d75626b Change-Id: Ia280fd9fdd584eed81f4d810311c56f5daee3e28 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* Set incubation controller when a Window{} is loaded via QQmlApplicationEngineAlan Alpert2013-06-071-16/+23
| | | | | | | | | | | | | | | | | | | | | | | | This was the one convenience that was lost when transitioning templates from QQuickView + Item{} to QQmlApplicationEngine + Window{}. As the default window incubation controller was tied to the first window's frameSwapped, we could easily run into a situation where a secondary window required incubation while the first window was idle. This would then starve the incubation controller. Instead make it so that the renderloop emits "timeToIncubate" once it is done with a renderpass over all windows, so the incubator gets to run once and exactly once per vsync when animating. The incubator logic was also flawed in that it could post a lot of events to itself as a result of incubatingObjectCountChanged and thus starve system events while processing incubation requests. Now we start a timer and don't start it again until we have completed an incubation pass. Task-number: QTBUG-31203 Change-Id: Iea9e2c81efb46bb7875c70ccda0cdc4b3b3e58e7 Reviewed-by: Alan Alpert <aalpert@blackberry.com> Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
* Added QQuickWindow::setDefaultAlphaBuffer()Shawn Rutledge2013-05-301-2/+29
| | | | | | | | | | | | | | All QQuickWindows will render using the same OpenGL context, so for a window to support transparency, the OpenGL context needs to be created with support for transparency from the very start. Therefore the application needs to call setDefaultAlphaBuffer() before creating windows. There are some relevant comments in QTBUG-20768 although the bug itself is not the same use case (it was already OK as long as the first window had a translucent color, because of setAlphaBufferSize in QQuickWindow::setColor()). Change-Id: I92e111c1a62c0d510821b646fd334e52254f8f57 Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
* Add QQuickWindow::closing signal, and ability to ignore the eventShawn Rutledge2013-05-081-0/+64
| | | | | | | | | | | An application can implement onClosing() and set closeEvent.accepted = false to delay the closing (for example to prompt the user to save changes). Depends on change I9abed47fca02a002b78727f98d678a824854adfc in qtbase. Task-number: QTBUG-31019 Change-Id: Icfd4a03ecef3621bdbbee2e2c3157b897a9b6524 Reviewed-by: Alan Alpert (Personal) <416365416c@gmail.com>
* mouse synthesis: don't say the left button is pressed during a releaseShawn Rutledge2013-05-041-1/+1
| | | | | | | | | Follows the same reasoning as Iefe63cd753f9f8bb04278fd04a4d728e3deda25e in qtbase: buttons should have only the buttons which are still pressed. Change-Id: I894df43254eb1b1ce173fd7acc7190e9765beb48 Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com> Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>