This will make Qt Quick use consistent timing which
prepares animation frames for the time they go to
screen, rather than the current time at the time of the
animation tick, which can be quite jerky in many situations.
Change-Id: I1bbd4394db0c757553ee406d416fccb3ef937db8
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
as this new cache category comes without side effects, we can
unconditionally create a cache whereever we are. this allows us to be
performant without explicit user action.
Task-number: QTBUG-31340
Change-Id: I6b88b20b61e8351aa8cbf94ad3eec65adac6e1d6
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
unlike .qmake.cache & co., the presence of this file has no magic
effects on where mkspecs, modules and other things are searched.
as the obvious name "cache" is of course already taken, we call it
"stash".
the file is searched up to the super cache (if present), otherwise up to
the normal cache/conf (if present), otherwise up to the root.
if it's not found, it is created next to the super cache (if present),
otherwise next to the cache/conf (if present), otherwise in the current
output directory.
note that the cache really should be created and populated by the
top-level project if there are subprojects: otherwise, if there is an
"anchor" (super/cache/conf), subprojects would race for updating the
cache and make a mess. without an "anchor", each subproject would just
create its own cache, kind of defeating its purpose. this is no
different from the existing "cache", but it's worth mentioning that
removing the "anchoring" function does not remove the "nesting order"
constraint.
Task-number: QTBUG-31340
Change-Id: I786d40cef40d14582a0dd4a9407863001bec4c98
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
otherwise, if the output dir is the root, the path would be denormalized.
the code for finding existing files already does that.
Change-Id: I56d70477e9c9ffcd936325068624a84df10ffd87
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
The findFile would need to look though all include
paths the compiler is supporting, which can be very hard
to support for multiply compilers. It is way easier to
use a compile check to catch all include paths the
compiler supports. This fix is needed to find correctly
ICU under QNX.
Task-number: QTBUG-34743
Change-Id: I4f755042a76882b304b058355cf54e37b25df61d
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
This is done to autodetect Neon support for QNX.
It might make sense for other platforms as well,
so enable the compile check for all target platforms.
Task-number: QTBUG-34743
Change-Id: I1d149d1942ce0caa288cb56491e4a0ba455dda7d
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Some compile checks may depend on the architecture,
e.g., NEON is only available for ARM, so it makes no
sense to check it for this architecture. Therefore
we need to run the architecture check before we
auto detect settings.
Task-number: QTBUG-34743
Change-Id: I53208d25b0ae0fd93cccc7394307b8ee286576a2
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Disables implicit conversions from QImage to QOpenGLTexture.
Change-Id: I09b4d236dde8eae5258e6a954f4e02b4451990bd
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Disables implicit conversions from Target to QOpenGLTexture.
Change-Id: I2edd2dc4528a311577f0b7df4f6ce22696336a88
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
A move constructor cannot be added because the class uses
a smart pointer to hold its pImpl, so the move ctor would
have to be out-of-line, destroying BC between C++11 and C++98
versions of Qt.
Member-swap is required for Q_DECLARED_SHARED, which in turn
enables efficient use of the class in Qt containers by marking
it movable.
Change-Id: I1aaa5bf3343a92e621d9464d8e4352f4e5ceff1f
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
QWindow::setParent() is documented to imply that the geometry of the
window is in the parent's coordinate system and that the window is
clipped to the parent.
Instead of always enabling clipping of subviews for our UIView subclass
we dynamically detect if we have QWindow children and enable/disable it
on the fly.
Change-Id: If83de94c55cbd19de401ab835e86bb7be5999d71
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
They were handy while debugging the iOS platform plugin, but should not
affect users who link against debug libraries, so let's just remove them.
Change-Id: I61b157e81130e5d951c22892e00f71e593082b1d
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
We don't use separate pools anwyhere else, and this was copied straight
from the UIKit plugin. Unless there's a good reason for having it in this
particular place we should keep things consistent.
Change-Id: I9a3f83bcc5894a2cdfd9af7818b46d6c0f8448da
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
A QWindow may be created() and destroyed() multiple times in the lifetime
of the window, each time resulting in a new platform window (QIOSWindow)
being created. This QIOSWindow is backed by a new UIView each time, hence
it needs a new FBO and renderbuffer-mapping, since the previous
renderbuffer was mapped to the old UIView.
This fixes a bug where a QWindow would not render after a destroy()
unless it was resized (which triggered new FBO/renderbuffers).
We need to inherit QObject so that we can watch the destroyed() signal.
Change-Id: I93172dd6280b86b49755bf7abddf061d7e6b66f1
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
The default UIWindow may not be the only UIWindow around in a multi
screen setup.
Change-Id: Ia7243190321a1416e577634bf5e010dd67d482e6
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
We don't need to cache the device-pixel-ratio, as we can ask the UIView
directly. We do need to set it though, as the default behavior of
matching the screen scale does not apply for EAGL-backed views,
but the ratio needs to match the current screen the view is on.
Change-Id: I29e4a4fa4f4b767d86265ec899fb43a355b5c3a3
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
As the test case shows, clear() is semantically equivalent to
setKeySequence(QKeySequence()), so implement it that way.
Change-Id: Id68edbbf85aac3bcff82c81310c38274ed8e6708
Reviewed-by: J-P Nurmi <jpnurmi@digia.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Adjust users and add a static_cast that MaxKeyCount be 4. That is instead
of adjusting all the code to use MaxKeyCount instead, some of which
cannot be thus changed (e.g. where using the QKeySequence(int, int, int, int)
constructor).
This was requested in the original review, but never implemented.
Change-Id: I3812340890f4d75257139f04e73e83083ca09760
Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Compared to other platforms there is no concept of a console
application in WinRT. Hence all applications need to be UI
applications and use winmain.
Furthermore winmain takes care of launch arguments to be
properly converted to arguments passed to user's main().
There is a chicken and egg problem with config.tests as
compilation needs to have an existing entry point which is not
available at configure time.
Hence hardcode the entry point to main for configuring to WinRT.
Those tests are pure compile tests, so the logic of the test
does not change.
Change-Id: I4d3186691a8440845c24b2529cc9646e86dfd8da
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Filter out module QML import paths that point to
nonexistent file system paths.
Change-Id: I897ef50593eeb46c6c9eaec27313ec12e6113cb6
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
With 46a8885ae4, we failed when parsing
entities whose partially expanded size was greater than 1024
characters. That was not enough, so now we fully expand all entities.
Amends 46a8885ae4.
Change-Id: Ie80720d7e04d825eb4eebf528140eb94806c02b1
Reviewed-by: Richard J. Moore <rich@kde.org>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
The updated sqlite3 lacks a forward declaration of localtime.
Depending on the CE version that forward declaration
was sometimes available.
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
(forward-ported from commit fb1649d30b)
Change-Id: Ief6d8ed1cad51fa92a333a20c5dfe781d19761eb
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
(forward-ported from commit ea70ec8711)
Reviewed-by: Björn Breitmeyer <bjoern.breitmeyer@kdab.com>
Reviewed-by: Mark Brand <mabrand@mabrand.nl>
After profiling drawing with RGBA8888 images most of the time appears
to be spend in converting to and from ARGB32PM.
This patch adds four small converters that are 3-4 times faster than the
generic converter.
Change-Id: I3c7498756f440ca3ea9c1417b26dd8e1953b9d06
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
Implement swap interval support for EGL, GLX and WGL.
The environment variable QT_QPA_EGLFS_SWAPINTERVAL is renamed to
QT_QPA_EGL_SWAPINTERVAL and can be used to override the applications'
setting of the swap interval.
Task-number: QTBUG-31939
Change-Id: I644325d5d3306b7604bffd7efccda3c00ed37d36
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
need to leave some items out like media folder access, as this is not
available by default and also requires certain capabilities to use
those.
Furthermore updated the tests for sandboxing as well as skip cmd.exe
related tests as that does not exist on WinRT.
Change-Id: I992b1e195b79615bea0be4f84f56cfb8f0d902bf
Reviewed-by: Oliver Wolff <oliver.wolff@digia.com>
FILE_FULL_DIR_INFO failed under certain circumstances on WinRT and
provides far more information than required. Hence prefer the basic
version in every case and standard for files with size description.
Change-Id: I63f1365f83cdd5d69f81278411f822dbd361fa92
Reviewed-by: Oliver Wolff <oliver.wolff@digia.com>
All ci nodes are currently missing 3d support, when that is enabled
this test will start to fail.
Task-number: QTQAINFRA-711
Change-Id: Ie6b840e290a9371fa895681e58d6dedf55b777e6
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
Currently network is only required to gather the host info for one
test case. That does not justify to disable all other tests, which can
provide useful information on the state when doing a port. Hence
disable that testcase if no network is available.
Change-Id: I202ef49b3e07ae69ec85ee0432ae0a771a90e816
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
This patch does following things:
* Remove the root window: First window which is created will serve as a root window
* Allow creation of more than one application window (with every app window having
an own window group) on one screen
* Fixes a bug when reparanting an EGL window
Change-Id: I1afd64a813bc084c0893b958aa191d4a25c32b9d
Reviewed-by: Matt Hoosier <matt.hoosier@garmin.com>
Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
People request this, and other widgets do this, too (say, QSpinBox).
Change-Id: I275537fb82b805b0dcb8edba87b8e234985f8d1f
Reviewed-by: J-P Nurmi <jpnurmi@digia.com>
There's a signal keySequenceChanged(QKeySequence), so the setter
should be a slot, too.
Change-Id: I6591bad071444ffa252a2fdb9ccaf28e8629f59c
Reviewed-by: J-P Nurmi <jpnurmi@digia.com>
Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
Since users were not supposed to use this feature at all, just
live with the BC break, but document it. In order to prevent possible
problems in the future, introduce dummy overrides in QAbstractItemView
and QListView as well. Also, fix the visibility of the overrides
(it's protected, not public).
Task-number: QTBUG-34667
Change-Id: Ib4554ae5e1e7d3ce4ea8e8703e1fea9e2231edb0
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
The task has a very good explanation. The use-case was
ba.remove(n, INT_MAX);
since you can't pass -1 to the length, and that results in overflow when
you add n+INT_MAX.
Task-number: QTBUG-34694
Change-Id: I365eb86b2d0dabbe0bde67e4e7f33d64fd5793af
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
The Windows tz transition routines were not checking for a number of
invalid scenarios, in particular where there are no next transitions
able to be calcualted, leading to infinite loops.
Change-Id: I262b4321a95be1df4228774ada3908f8d3ed6c1a
Reviewed-by: Mitch Curtis <mitch.curtis@digia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Fix nextTransitions() where there are no next transitions and improve
performance of previousTransition() and data().
Change-Id: I5d44525554243d139ba8d5f86e41bdfc0f7bfc25
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
It is probably better not to have a default boolean in
QHeaderView::setResizeContentsPrecision
Task-number: QTBUG-34665
Change-Id: I0bb2c35abc1d5713bb3ee65df3af86c04f175a38
Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>