| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
On Mac we had a situation where we got expose events for windows which
were either 0x24 in size or completely off the screen. These would
result in makeCurrent failing and lead to crashes later on in the
scene graph. Safeguard against invalid dimensions during initialization
and abort after a call to makeCurrent if any of them fail.
Task-number: QTCREATORBUG-10814
Change-Id: I9063ea4d078eea3914666e4c155d141a1502e2ff
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Autotest is included.
Task-number: QTBUG-34780
[ChangeLog][QtDeclarative][TextInput] add editingFinished signal
Change-Id: Ib633daee67cd4e5f15739a6004adbe882ab3d3fc
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Reviewed-by: J-P Nurmi <jpnurmi@digia.com>
Reviewed-by: Thomas Hartmann <Thomas.Hartmann@digia.com>
Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
Reviewed-by: Alan Alpert (Personal) <416365416c@gmail.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
When rendering multiple windows in parallel on llvmpipe we end up with
crashes deep inside llvmpipe as multiple threads seem to access
unprotected resources. Work around this bug by enforcing that scene
graph rendering happens on one window at a time.
Task-number: QTCREATORBUG-10666
Change-Id: I2f734e8f653b2a9b4108eb189280ab922581e2c0
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Task-number: QTBUG-24292
Change-Id: I8e7f5abe077b6e8d2ce6625dcf43a34a7260934e
Done-with: Martin Jones <martin.jones@jollamobile.com>
Reviewed-by: Alan Alpert (Personal) <416365416c@gmail.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This could cause things to get "stuck" in the wrong state under some rather hard
to reproduce conditions.
Change-Id: Ied23d2bdfcfd0b197f4b28fed9c82ffd64e52ebf
Done-with: Aaron Kennedy <aaron.kennedy@jollamobile.com>
Done-with: Alan Alpert <416365416c@gmail.com>
Reviewed-by: Alan Alpert (Personal) <416365416c@gmail.com>
|
| | |
| | |
| | |
| | |
| | | |
Change-Id: I58d271b108734958b6e0cd55ff62417d5b649a63
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Otherwise, if you flick and then start a new drag before the flick
completes, dragging remains false.
Change-Id: I9bbe20107317a6edf765c87d2e0afe3e9e2618e9
Done-with: Aaron Kennedy <aaron.kennedy@jollamobile.com>
Reviewed-by: Alan Alpert (Personal) <416365416c@gmail.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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>
|
| |\|
| | |
| | |
| | | |
Change-Id: Id732233d56e8d1706f62ef7a153d4a471406c551
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The pixmap we get from createPixmap is cached internally in the
QQuickCanvasItem's cache so we need to refcount it properly. Using
take would result in the refcount going to zero in this function
which would cause a crash.
Task-number: QTBUG-34714
Change-Id: I5f0e75a7117c53e4b89ac133ba7d161bc7b9053d
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Icccd542b8122c7bfa0e83 and Ia6e9f06dbb850 clashed.
Change-Id: Iaea844c9955eb29104ee32660499a67cb7224cbf
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Task-number: QTBUG-34152
Change-Id: Ibb93d1cac8c343a7ca34ce7d010f24fc56ba89df
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Task-number: QTBUG-34806
Change-Id: I5013baaff0ca86357292474976944c1a3056f219
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
-manually created list duplicates the generated list.
-\generatelist{related} doesn't do anything for a regular \page.
Task-number: QTBUG-33360
Change-Id: I0bf870c71d3985e232fa8c0d5ef7ad572f596e99
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Texture uploads on iOS is extremly slow without it.
Change-Id: Icccd542b8122c7bfa0e839c25e988d107bc17d2a
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The method can actually be called from QML, so we can not
have an assert in that method. Instead simply return if the
item has no contents
Task-number: QTBUG-34060
Change-Id: Ib28ffa5c6c63fbec956abe25020010ed73a9cfa9
Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
My previous fix to force expose when the render thread is inactive
was not enough. We now lock down access to 'QSGRenderThread::window'
so that it will always be set when the thread is in the "exposed"
state and 0 when the thread is in the "obscured" state.
This introduces another sync point in handleObscurity to protect
the writing of window in the render thread.
Task-number: QTCREATORBUG-10793
Change-Id: I1e1153189b3a3562705892b42625f88ef6329188
Reviewed-by: Ulf Hermann <ulf.hermann@digia.com>
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Check if pointer to QQuickAbstractAnimation for which we are setting
group is valid.
Task-number: QTBUG-34851
Change-Id: Iecb549f080804fd9489f884911fa51892def05a5
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
It's just not working out in practice, and we don't want to confuse
users with having to pick their flavor of pixel density.
Task-number: QTBUG-34798
Change-Id: I552e479515a6f5249685844143601cb7449ccccc
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
-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>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Since we are sorting batches based on the zorder of the first element
it is crucial that we don't continue adding to batches once an overlap
with a compatible element is found.
Task-number: QTBUG-34864
Change-Id: Ic2194c5c17bba0bc9874a14e8a69c81bff75bd1c
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
If the SpringAnimation gets used inside a Transition, the
animationTemplate might get cleared, but updateCurrentTime()
still gets called on the SpringAnimation after that.
Task-number: QTBUG-34539
Change-Id: I1f27fdbfc594e6ff9a4343e45f7f4001964bb012
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
|
| | |
| | |
| | |
| | |
| | |
| | | |
Task-number: QTCREATORBUG-10699
Change-Id: Ia88df5ec4ea74fda6a0449aa739a9c6976fedb02
Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Now that we have one thread per window it is useful to know which
thread and window prints out the messages.
Change-Id: I699eae180575fd3355551ebe0bfe6fd6ac8837c9
Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The basic approach is to have the batched renderer create and bind a
vertex array object if it detects we are using an OpenGL Core profile
context. The VAO is bound for the duration of the QQ2 renderer's
work cycle and unbound at the end so as to not interfere with any
other VAO's a user may wish to use.
All shaders have been copied and ported to be compliant with the
GLSL 150 core specification which is the minimum for a Core profile
context (OpenGL 3.2 Core). We are not using any newer features as
yet so this will work anywhere we can get a Core profile context.
The QSGShaderSourceBuilder class has been extended to resolve any
requests for shaders to the same basefilename with "_core"
appended prior to any file extension. This could be extended in
the future to allow version, or GPU or platform specific shaders.
The QSGShaderSourceBuilder has also been extended to allow it to
insert #define definitions in the prologue of a shader. Any such
definition is inserted:
* After the last #extension directive (if any are found)
* Otherwise after the #version directive (if found)
* Otherwise at the start of the shader source
This is required by the custom particle shaders which make
extensive use of such #defines.
In addition the mechanism used by the distance field glyph cache to
extend the cache with new glyphs has been modified to work (and
work more efficiently) when using a Core profile context.
Rather than using a shader program and a buffer filling quad to
blit the old texture into the new cache texture, we instead use
the technique of framebuffer blitting. The existing fallback
implementation using glTexSubImage2D() is still available if
needed.
The DECLARATIVE_EXAMPLE_MAIN macro has been extended to allow easy
testing of any of the QtDeclarative examples with a core profile
context. Just run the example with
QT_QUICK_CORE_PROFILE=1 ./text
for e.g. The only ones that may not work out of the box are those
that provide GLSL shader source e.g. the customparticles or
shader effect examples. These work fine if the shader source is
adapted to GLSL 150 core.
In the future it may be a good idea to expose some context property
to QML that the user can use to determine what shader source
variation to provide to Qt Quick. Along these lines it would also
be very nice to allow the provision of shader source to
ShaderEffect or CustomParticle from a separate source file just as
we now do within Qt Quick.
Task-number: QTBUG-32050
Change-Id: Ia6e9f06dbb8508af9ae03c6b60fb418b4cc9e41f
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Task-number: QTBUG-34328
Change-Id: If0202a67d95500333a0fb6f4ca3eb19ecb027770
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The method requires 3 arguments, not 6
Task-number: QTBUG-34718
Change-Id: Ib6c117ba18844acecea3707720c0c88449b50fb6
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Task-number: QTBUG-33363
Change-Id: Ia2b0c329157786cb4ec703989f12d2fdb1ce6bc8
Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
|
| |/
| |
| |
| |
| |
| | |
Task-number: QTBUG-32605
Change-Id: I4e90a3505740dd9a8b369dac6ce05ce066d14d44
Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
|
| |
| |
| |
| |
| |
| |
| | |
Task-number: QTBUG-34715
Change-Id: Ifdac2511b7f642b1ea4bd06847c840b5a951a753
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
| |
| |
| |
| |
| |
| | |
Change-Id: I7f76ed722f91076ee308a47c699984d371a220f0
Reviewed-by: Bernd Weimer <bweimer@blackberry.com>
Reviewed-by: Alan Alpert (Personal) <416365416c@gmail.com>
|
| |
| |
| |
| |
| |
| |
| | |
Get a error for compiling with gcc 2.8.1.
Change-Id: If93ed69695fb523eff05cae2960e3743dc496310
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The renderer only passed the very first node's material to
updateState() as "new", yet pass the following node's materials to
updateState() as "old". This triggered an assert in the
QSGTextMaskMaterial's updateState as the native text nodes are invalid
until they get called with their own material as "new". This goes
against how the scene graph is supposed to be used, but update the
code in the renderer regardless as this used to work and the fix
there is not wrong.
Every node in a batch has identical material, so pass the same
instance for both "new" and "old" except for the first node
in the batch which gets old==0.
Change-Id: Ie8ae6fcd63adde08d80e9083e910836ede6694ee
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
We pretransform vertices relative to their batch root and upload these
using single-precision floats. If the offsets are huge then the
floating point numbers start to get unstable and we get rendering
artifacts as a result. This typically happens for lists/tables with
huge models.
Task-number: QTBUG-34312
Change-Id: I2516f2b4fa93f44a1288659d05458fb1af0df943
Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Distance field rendering requires glyph outlines, which are not
available for bitmap fonts.
Task-number: QTBUG-32737
Change-Id: I64569e4e6b2285ca998b5f80ec31ab04cf1f3d09
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Uploading unaligned and alpha-only data seems to be broken with that
GPU, uploading line by line does the trick.
Task-number: QTBUG-33951
Change-Id: I2790990ca1d3a3016ec3d9fefaea7002b92faeb7
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
|
| |
| |
| |
| |
| |
| |
| |
| | |
Adding public API was not the intention when adding
this slot.
Change-Id: If477917c434b32d5e5cd1fa6c640f1a6b167dd24
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Get rid of the SimpleCallContext, instead simply
use the CallContext data structure, but don't
initialize the unused variables.
Change-Id: I11b311986da180c62c815b516a2c55844156d0ab
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Triggered by tst_examples, it appears that we can have jobs in
m_deleting that are also still listed in m_starting. So similar to
what we do in beforeNodeSync, we now also take any deletion-scheduled
jobs out of m_starting/m_stopping in the destructor.
Change-Id: I2e00570a4e4669f8172354bf5806c5285920030a
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The logic relies on m_fbo being 0 on the first render pass, in which
case it will pick texture id 0 which is solid black. Though this
works ok, it results in recursive shader effect sources starting
out black which is ugly.
Change-Id: I22b1d50e02c00583837b8152c5fb850263038a93
Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
|
| |
| |
| |
| |
| |
| |
| |
| | |
A pointer list was not cleared when invalidating the context,
potentially holding dangling pointers after that.
Change-Id: I0618c54ffa67b31b115901e8be3a6d3cd16dc844
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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>
|
| |
| |
| |
| |
| |
| | |
Change-Id: I06bbdc6e6869718058a796ca737668ce69802f2c
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
In 5.2, the HTML output is in a flatter structure and when they are
hosted in qt-project.org/doc, the documentation will be found at
http://qt-project.org/doc/qt-$QT_VER
The url variable is used by projects outside of Qt 5 which need
to link to Qt 5 documentation, such as Qt Creator.
Task-number: QTBUG-34584
Change-Id: Ie23c3748fbe780fa00f98404238099809df5ef06
Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@digia.com>
Reviewed-by: J-P Nurmi <jpnurmi@digia.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Catch hover events only when the item contains either rich or styled
text, and make sure to ignore hover events as appropriate to propagate
them further.
Task-number: QTBUG-33842
Change-Id: Idef5be7c502711393ab532c4ace31663b0e0a872
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
|
| |
| |
| |
| |
| |
| |
| |
| | |
Task-number: QTBUG-34368
Change-Id: I28d4f57e51300f12a7bab5d215933762102f3916
Reviewed-by: Michael Brasser <michael.brasser@live.com>
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Don't use recursive function calls anymore. Instead, push marked
objects onto the JS stack, and then pop them off when their children
are being marked.
Should reduce stack memory usage, and improves performance by ~5%.
Change-Id: I2d37d97579144fcba87ec8e9fd545dd220c01fbb
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The library needs to do Q_INIT_RESOURCE for all resources it uses
internally, otherwise static linking will fail, and the user has
no idea how to rectify it as the name of the missing resource is
not known.
Change-Id: I8ea766e63cff22bbb0c45e6125c3a07948de2274
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
|