- 28 Nov, 2014 - 1 commit
-
-
Laszlo Agocs authored
Change-Id: Ic8c8e6d7a9d99216292b8b4faa2926d849333a05 Reviewed-by:
Paul Olav Tvete <paul.tvete@theqtcompany.com>
-
- 07 Nov, 2014 - 1 commit
-
-
Richard Moe Gustavsen authored
The previous code was wrong, as it cleared focus from the active focus item directly. By doing so we would only clear focus inside the focus scope that surrounded the item, but leave the scope itself with active focus (which would then be the focus object). The intended result is rather to end up with the root as focus object. Change-Id: I455a8939f8bc6c48765119b995aa781aee6d1e70 Reviewed-by:
Tor Arne Vestbø <tor.arne.vestbo@digia.com>
-
- 05 Nov, 2014 - 1 commit
-
-
J-P Nurmi authored
This is essential to the Qt Quick Controls for implementing floating text selection handle popups. Change-Id: Ibae65110a5db6d65dacd197fef3ad567d11342dc Reviewed-by:
Alan Alpert <aalpert@blackberry.com> Reviewed-by:
Shawn Rutledge <shawn.rutledge@digia.com>
-
- 22 Oct, 2014 - 1 commit
-
-
Laszlo Agocs authored
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>
-
- 10 Oct, 2014 - 1 commit
-
-
Gunnar Sletta authored
The use of one QCoreApp::postEvent() per completed animation added up to a very large overhead when 1000+ animators were used at the same time. This is very relevant for sprite games and similar and deserves to work at least as good as normal animations. Instead, store the animations to stop and stop then on the gui thread later as a result of frameSwapped. For the benchmark in question this allows for roughly double the amount of animators being started and stopped. Change-Id: Iae3d1ec1502ee1908fdbba708fa9f976aa230064 Reviewed-by:
Michael Brasser <michael.brasser@live.com>
-
- 01 Oct, 2014 - 1 commit
-
-
Zeno Endemann authored
The hoverItems list might get changed as a result of the sendHoverEvent call, so it is safer to take the element out first. Change-Id: I88c7380a2e4dd2297f9d0cfe01edc453ca525cb3 Reviewed-by:
Jan Arne Petersen <jan.petersen@kdab.com> Reviewed-by:
Gunnar Sletta <gunnar@sletta.org>
-
- 24 Sep, 2014 - 1 commit
-
-
Shawn Rutledge authored
It causes problems to do qmlRegisterType on QQuickWindow if the attached property also refers to QQuickWindow. Task-number: QTBUG-40816 Task-number: QTBUG-41047 Change-Id: I7a6f75af52f65e2be022b97128702982bec7cbe8 Reviewed-by:
J-P Nurmi <jpnurmi@digia.com>
-
- 17 Sep, 2014 - 2 commits
-
-
Gunnar Sletta authored
dirtyItem() will trigger maybeUpdate in the renderloop which may decide to skip the render pass if nothing changed in the scene graph. Use update() instead which forces the rendering to go through regardless. Change-Id: I4730bb0cd79d58fa21970a847cc1720060cb14a8 Reviewed-by:
Laszlo Agocs <laszlo.agocs@digia.com>
-
Gunnar Sletta authored
Change-Id: I3d5087d9c322ee5ee3325858ee717161fd7801a3 Reviewed-by:
Ulf Hermann <ulf.hermann@digia.com>
-
- 03 Sep, 2014 - 1 commit
-
-
Gunnar Sletta authored
For a testcase with thosands of items, I measured an increase in shutdown time from 800ms to 7500ms, all spent in disconnect(). This is not acceptible, so we're choosing a different approach. If items implement a invalidateSceneGraph slot, this function will be called during shutdown. It should be made a proper virtual in Qt 6. This approach costs very little. Change-Id: I5970143cc0a0744955687e17586f0bb00c9afb26 Reviewed-by:
Lars Knoll <lars.knoll@digia.com>
-
- 27 Aug, 2014 - 1 commit
-
-
Kai Koehne authored
Use version 2.2 in the documentation and for the .qmltypes file. The revision for properties got dropped in commit 7ceca6ac , and is now dropped from the .qmltypes file, too. The removed signals are also dropped because of that (because they are implicitly declared by the property, anyway). Change-Id: Ia14dd403ce1f098cb378bd7940e8f80f32b770a0 Reviewed-by:
Fawzi Mohamed <fawzi.mohamed@digia.com> Reviewed-by:
Alan Alpert <aalpert@blackberry.com>
-
- 26 Aug, 2014 - 1 commit
-
-
Laszlo Agocs authored
Otherwise doing deleteLater() on an ancestor of the QQuickWindow will cause double deletion for that ancestor. This is typical when using WA_DeleteOnClose since that uses deleteLater(). Task-number: QTBUG-40920 Change-Id: I9146fc0854f77c42cad2eda23b3cdaa7a9e22080 Reviewed-by:
Gunnar Sletta <gunnar@sletta.org>
-
- 25 Aug, 2014 - 1 commit
-
-
Jani Heikkinen authored
- Renamed LICENSE.LGPL to LICENSE.LGPLv21 - Added LICENSE.LGPLv3 & LICENSE.GPLv2 - Removed LICENSE.GPL Change-Id: I84a565e2e0caa3b76bf291a7d188a57a4b00e1b0 Reviewed-by:
Jani Heikkinen <jani.heikkinen@digia.com>
-
- 15 Aug, 2014 - 1 commit
-
-
Laszlo Agocs authored
Task-number: QTBUG-40729 Change-Id: If3b2f8ca8795da1ac7c626db9c872f735d1e7b5d Reviewed-by:
Paul Olav Tvete <paul.tvete@digia.com>
-
- 13 Aug, 2014 - 1 commit
-
-
J-P Nurmi authored
Superceded by the OpenGLInfo attached type => remove the API before it gets released Change-Id: I7511fd28eb375eb3cd3cdd4bda6d82c1883e3094 Reviewed-by:
Shawn Rutledge <shawn.rutledge@digia.com> Reviewed-by:
Alan Alpert <aalpert@blackberry.com>
-
- 12 Aug, 2014 - 1 commit
-
-
Topi Reinio authored
Removes duplicated (repeated) words and fixes other minor documentation issues. Change-Id: I891f2b3e60194b207737425c1dcc1d35a5bd921a Reviewed-by:
Leena Miettinen <riitta-leena.miettinen@digia.com>
-
- 11 Aug, 2014 - 1 commit
-
-
Laszlo Agocs authored
Replaced by QSurfaceFormat::setDefaultFormat(). Change-Id: If4e37b75ccb55d556d80b0079be89e5a521f6dbb Reviewed-by:
Gunnar Sletta <gunnar.sletta@jollamobile.com>
-
- 08 Aug, 2014 - 4 commits
-
-
Simon Hausmann authored
1) Don't fail the assertion in the animator jobs if we don't have a context 2) Delegate the opengl context check in QQuickWindow::createTextureFromImage to the QSGContext Change-Id: I1b248895dcd6db406f1af8866fd0052dd7564899 Reviewed-by:
Lars Knoll <lars.knoll@digia.com>
-
Simon Hausmann authored
The default remains OpenGLSurface. Change-Id: I96b400b7aa9c2b0435ea0614598e1b1f32b6d6b2 Reviewed-by:
Lars Knoll <lars.knoll@digia.com>
-
Shawn Rutledge authored
An Item sometimes needs to know a few things about the window in which it is being displayed; this attached property can expose them without needing to go up the heirarchy to find the window. Instead of adding the QQuickWindow pointer as a property on Item as in 8f49f50a , having an attached property means that it will not be found by introspection; and it solves the problem that Window is in the QtQuick.Window module: you must import the module to use the attached property, instead of having access to a pointer whose type might not be defined if you didn't import it. The Window attached property is created on-demand (so the memory cost adds up if you use it in too many places); the tradeoff is that it can exist even when the item is not yet being shown in a window, so bindings at startup work. The API is purposely incomplete compared to that in QQuickWindow so that we can introduce what is needed in a controlled fasion over time. For now we know of use cases for visibility, active and activeFocusItem. [ChangeLog][QtQuick][Window] Added Item.Window attached property Change-Id: I649404cbd1383326678aa2144f790b2f2542dbbc Reviewed-by:
J-P Nurmi <jpnurmi@digia.com>
-
Gunnar Sletta authored
Because scene graph adaptations and custom implementations can instantiate QQuickTextureFactories, we need to make sure that their destructors are called before their libraries are unloaded to avoid crashes on shutdown. Change-Id: I17d38e2909aabcb4ea7bf4eecc29df86c8479fdb Reviewed-by:
Robin Burchell <robin+qt@viroteck.net>
-
- 05 Aug, 2014 - 1 commit
-
-
Jocelyn Turcotte authored
Change-Id: I438c33a1dc83fd0cd1ec08bb4e4a1257a3216ca2 Reviewed-by:
Laszlo Agocs <laszlo.agocs@digia.com>
-
- 01 Aug, 2014 - 2 commits
-
-
Jocelyn Turcotte authored
This change wraps QSGRenderContext and QSGContext in a new QSGEngine class, and expose a public interface of QSGRenderer through a QSGAbstractRenderer to make it usable on a standalone window or FBO. Change-Id: I2d41187472424f5ea64650a006bcd61f2711f6b9 Reviewed-by:
Gunnar Sletta <gunnar.sletta@jollamobile.com>
-
Martin Jones authored
Filtered mouse release was not delivered if another touch started after a touchMouseId was activated. This meant that any filters expecting a release event would not receive it if another touch was made before release of the touchMouseId. We prevented a touch becoming the touchMouseId in the child mouse filters if there were any existing touches. The normal event delivery, however, does not require a single touch. Further to the previous, a touch could become the touchMouseId, even if the initial press happened when there was an existing touchMouseId. This meant that a touch could turn into a mouse when the existing mouse event was released, resulting in a new touchMouseId which hadn't been through child mouse filters. Flickable delayed press should be sent via normal event processing, as other touch/mouse events are now delivered in this way. We often called childMouseEventFilter() multiple times for each event. This is bad because the gesture handling relies on claiming a gesture in one event, then stealing it in the next. Instead of sending touch to mouse candidate points already determined to be within the item bounds and already transformed, we sent all of the points to the mouse recipient. PinchArea did not store the starting position at the original touch points, so other items could pass the dragThreshold before PinchArea and steal a gesture meant for PinchArea. Task-number: QTBUG-40330 Change-Id: Ic0009c176d3d1cb7cff0b5eda076a2c3ca864136 Reviewed-by:
Robin Burchell <robin+qt@viroteck.net>
-
- 31 Jul, 2014 - 2 commits
-
-
Giuseppe D'Angelo authored
In the core profile it's forbidden to set vertex attributes (via glVertexAttribPointer and similar) when there's no VAO bound. Similarly, if there's a VAO bound when calling resetOpenGLState, then we need to unbind it or those operations will affect its status. Change-Id: Id7db028ddde9f9429f5a210b8b3d1468888dbce4 Reviewed-by:
Sean Harmer <sean.harmer@kdab.com> Reviewed-by:
Laszlo Agocs <laszlo.agocs@digia.com>
-
Gunnar Sletta authored
The eventloop recursion in the threaded render loop was there to preempt any pending event to make sure we worked with as recent as possible input events. The benefit of this was never verified. The recursion after the actual flush was to fix animations which were constantly started during touch events, such as a behavior tracking the mouse point. This is fixed differently. Event loop recursion is always dangerous, so we're doing what we can to avoid it. Change-Id: I120b2e98350e3b9068153415a671408773fbc769 Reviewed-by:
Michael Brasser <michael.brasser@live.com>
-
- 29 Jul, 2014 - 3 commits
-
-
Giuseppe D'Angelo authored
... or people might not find it. So link it from the docs of the various signals which expect the users to leave the GL state as they found it. Change-Id: I1ae41958449ded110aa2398b415d593bf04d2b7f Reviewed-by:
Laszlo Agocs <laszlo.agocs@digia.com>
-
Gunnar Sletta authored
[ChangeLog][QtQuick][QQuickWindow] Added QQuickWindow::scheduleRenderJob(), a convenience alternative to the equivalent signals for one-shot tasks. Change-Id: I5e4f0d67d5223f7fd77bca394e2a85810fadd335 Reviewed-by:
Laszlo Agocs <laszlo.agocs@digia.com>
-
Gunnar Sletta authored
[ChangeLog][QtQuick][QQuickItem] Added signals sceneGraphInitialized and sceneGraphInvalidated Change-Id: Idaea88bc743f0637d093cf1ba7ac4f78acd7e6ad Reviewed-by:
Laszlo Agocs <laszlo.agocs@digia.com>
-
- 22 Jul, 2014 - 1 commit
-
-
Andrew den Exter authored
With delayed press it's possible for a filtering item to not accept a press on the first go around but to later steal mouse grab and accept future events. This means outer items which also filter will have received the mouse press, but don't receive release events leading to phantom long presses or inadvertent drags. Task-number: QTBUG-37316 Change-Id: I2ff18df2a019f8d3a5e81a0adc2c5b5994799862 Reviewed-by:
Michael Brasser <michael.brasser@live.com> Reviewed-by:
Martin Jones <martin.jones@jollamobile.com>
-
- 18 Jul, 2014 - 1 commit
-
-
Kai Koehne authored
Change-Id: Ie250c41943be661b19b5f09731508d6613f4cf82 Reviewed-by:
Jerome Pasion <jerome.pasion@digia.com>
-
- 01 Jul, 2014 - 1 commit
-
-
Laszlo Agocs authored
Reformat the new API docs the get rid of the unnecessary stars. And fix some typos. Change-Id: I09dcb3bea55cfd7b9209a4e0ad43e28a47fd1fa4 Reviewed-by:
Shawn Rutledge <shawn.rutledge@digia.com> Reviewed-by:
Gunnar Sletta <gunnar.sletta@jollamobile.com>
-
- 30 Jun, 2014 - 1 commit
-
-
Shawn Rutledge authored
It's uncertain why 4fc0df58 added the call to sendPostedEvents(0, QEvent::DeferredDelete) but now we can see that it easily results in the destructor calling itself, and therefore double-deleting its own d_ptr. removePostedEvents seems safer to ensure that the window cannot be doubly deleted, in spite of the qdoc warning that "You should never need to call this function." Task-number: QTBUG-33436 Change-Id: I4873ebe179dde551407eba1f6baac5f03ca7f177 Reviewed-by:
J-P Nurmi <jpnurmi@digia.com> Reviewed-by:
Alan Alpert <aalpert@blackberry.com>
-
- 24 Jun, 2014 - 1 commit
-
-
Laszlo Agocs authored
QQuickRenderControl allows rendering Qt Quick 2 scenes into framebuffer objects which can then be used in arbitrary ways in Qt-based or 3rd party OpenGL renderers. [ChangeLog][QtQuick] Introduced QQuickRenderControl as a public API. Task-number: QTBUG-37944 Change-Id: I84262243b261b35cefdf67ec6bba8127a0f29275 Reviewed-by:
Paul Olav Tvete <paul.tvete@digia.com>
-
- 05 Jun, 2014 - 1 commit
-
-
Aleix Pol authored
[ChangeLog][QtQuick][Important Behavior Changes] Drag and Drop events now propagate to child items before their parents. Change-Id: I22832d707c7cb2461eaa94d659c5cc83506def8d Reviewed-by:
Gunnar Sletta <gunnar.sletta@jollamobile.com>
-
- 23 May, 2014 - 1 commit
-
-
Laszlo Agocs authored
Change-Id: I9b8673fb3292c9d5ad2f9e8e63f56dc661699be6 Reviewed-by:
Friedemann Kleint <Friedemann.Kleint@digia.com>
-
- 21 May, 2014 - 1 commit
-
-
Paul Olav Tvete authored
Relay focus in/out events to the offscreen QQuickWindow, and also make the offscreen window believe it has the focus when the render window has it. Task-number: QTBUG-39033 Change-Id: Ib50b134e635833ad3813693ca272f04607c525b8 Reviewed-by:
Laszlo Agocs <laszlo.agocs@digia.com>
-
- 19 May, 2014 - 1 commit
-
-
Gunnar Sletta authored
The non-threaded render loops would clean up the nodes for a window when it was hidden, but the animators kept running and had a reference to the deleted nodes. This was not a problem for the threaded render loop as it would wipe the animator controller as well which would clean the jobs. Fix it by triggering a reset of all nodes in the animators when the window is told to clean up. If an animator is ticked when it doesn't have a node, it will simply do nothing. When the window is made visible again, we call initialize on all animators to find the new node. Task-number: QTBUG-37995 Change-Id: Ie5609d95db29f4b2b30ca5bf641dce901e528389 Reviewed-by:
Michael Brasser <michael.brasser@live.com>
-
- 06 May, 2014 - 1 commit
-
-
Berthold Krevert authored
QtQuickControl's Desktop style needs to know whether the last focus change was requested by keyboard or not. With this information the Desktop style is able to set the QStyleOption accordingly. Without the flag, some of the QStyles (QFusionStyle, QGtkStyle) don't render a focus rectangle. This patch is needed by #change,84389 in QtQuickControls Change-Id: Ia06f56b018cd35eea933892a4c50e0aa7328042d Reviewed-by:
J-P Nurmi <jpnurmi@digia.com> Reviewed-by:
Liang Qi <liang.qi@digia.com>
-
- 05 May, 2014 - 1 commit
-
-
Gunnar Sletta authored
Instead of sending multiple touch updates per frame, we store the last one and flush the pending events just before we enter into the scene graph sync phase. [ChangeLog][QtQuick] QQuickWindow will compresses touch events and delivers at most one touch event per frame. Done-with: Robin Burchell <robin.burchell@jollamobile.com> Change-Id: Ia0169bc4a3f0da67709b91ca65c326934b55d372 Reviewed-by:
Laszlo Agocs <laszlo.agocs@digia.com> Reviewed-by:
Shawn Rutledge <shawn.rutledge@digia.com>
-