Commit Graph

11317 Commits

Author SHA1 Message Date
Eskil Abrahamsen Blomfeldt
20981e2953 REG: Fix changing input method parameters on Android
After b7440536c7, we no longer
restart the input method when the keyboard is shown, even if
the parameters for the input method has changed. The effect
was that if you had opened a keyboard with, say, digits only, then
all keyboards would be digits only forever, regardless of the
settings on text input.

This patch tries to be conservative, so it only adds back the
restartInput() logic when any of parameters have actually
been changed. Tested the code the original patch was made to
fix and it still works as before.

Task-number: QTBUG-34827
Change-Id: Icaee6026d5c3e95b605bb76485acf4fd651f81bd
Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
Reviewed-by: BogDan Vatra <bogdan@kde.org>
2013-11-14 21:15:35 +01:00
Marc Mutz
6128f4efb4 QTimeZone: mark ctors as explicit
An int is not a proper representation for a QTimeZone, so don't provide
an implicit conversion from it. OTOH, {QByteArray, int, QString, QString}
_does_ nicely represent a QTimeZone, so explicitly state the implicitness
of that constructor so {}-init continues to work in C++11.

Change-Id: I865a6b38b8ab3c577625b7b08efbfc98914abfbe
Reviewed-by: John Layt <jlayt@kde.org>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2013-11-14 21:15:35 +01:00
Marc Mutz
9e78ab4587 Doc: remove superfluous \since 5.2
The whole QTimeZone class is \since 5.2.

Change-Id: I681b924b534f2f75315b2eaf506aaa7d9590efa1
Reviewed-by: John Layt <jlayt@kde.org>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2013-11-14 21:15:35 +01:00
Marc Mutz
81ef7f6857 QTimeZone: declare as shared
This enables specialisations of (std and q) swap using member-swap
and declares the types movable for efficient use in Qt containers,
and QList in particular.

This is a binary-incompatible change, so cannot wait for 5.2.1.

Change-Id: I431315e148b95f82dc3d4471c57ef729539dca9f
Reviewed-by: John Layt <jlayt@kde.org>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2013-11-14 21:15:35 +01:00
Paul Olav Tvete
b8c93d4592 Android: work around input method cursor position bug
Since the Qt input method queries only give us information
on the position within the block, moving to the same position
in a different block will be interpreted as not moving.

The quick fix is to send a fake position before the real one in
this case.

Task-number: QTBUG-34845
Change-Id: I5d62bdffc283e41d0384c60a0b69c01811caa629
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
Reviewed-by: BogDan Vatra <bogdan@kde.org>
2013-11-14 21:15:35 +01:00
Marc Mutz
4577026397 QTimeZone: add member-swap
This is customary for Qt value types these days.

Change-Id: If5374c2595a904337eaef4afc08cdc993229ac25
Reviewed-by: John Layt <jlayt@kde.org>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2013-11-14 21:15:35 +01:00
BogDan Vatra
2828072d50 Android: Initialize mWindowState
Use the same variable in QAndroidPlatformWindow.

Task-number: QTBUG-34764

Change-Id: Idf33707e81cf7306663196f3c17735d8dc1dde5d
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
2013-11-14 21:15:35 +01:00
Gunnar Sletta
bcf5dbc8a0 Fix jerky animations in Qt Quick for iOS.
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>
2013-11-14 21:15:35 +01:00
Marc Mutz
c887fbd795 QOpenGLTexture: mark (QImage) ctor explicit
Disables implicit conversions from QImage to QOpenGLTexture.

Change-Id: I09b4d236dde8eae5258e6a954f4e02b4451990bd
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
2013-11-14 19:26:20 +01:00
Marc Mutz
a256c8459a QOpenGLTexture: mark (Target) ctor explicit
Disables implicit conversions from Target to QOpenGLTexture.

Change-Id: I2edd2dc4528a311577f0b7df4f6ce22696336a88
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
2013-11-14 19:26:20 +01:00
Marc Mutz
4abf5fd3ea QOpenGLPixelTransferOptions: declare as shared, add move assignment operator
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>
2013-11-14 19:26:20 +01:00
Paul Olav Tvete
3ebcbdd322 Android: fix crash on exit
Let's not try to dereference the null pointer.

Task-number: QTBUG-34746
Change-Id: Iee79b711bd81614e36af4ab3612f9a87053a39f2
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
2013-11-14 19:26:20 +01:00
Tor Arne Vestbø
d160f19507 iOS: Enable clipping of subviews when QWindow has child windows
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>
2013-11-14 19:26:20 +01:00
Tor Arne Vestbø
3a7104420c iOS: Remove background color for UIWindow and UIViewController's root view
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>
2013-11-14 19:26:20 +01:00
Tor Arne Vestbø
2afbd92274 iOS: Get rid of separate release pool for QIOSScreen
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>
2013-11-14 19:26:20 +01:00
Tor Arne Vestbø
bb1225f5ba iOS: Tie QIOSContext FBOs to corresponding QPlatformWindow, not QWindow
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>
2013-11-14 19:26:20 +01:00
Tor Arne Vestbø
18182a6275 iOS: Handle key window as part of QWindow activation
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>
2013-11-14 19:26:20 +01:00
Tor Arne Vestbø
e6eadd6f61 iOS: Flesh out device-pixel-ratio handling in QIOSWindow
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>
2013-11-14 19:26:20 +01:00
Mitch Curtis
f1053d94f5 Fully expand entities to ensure deep or widely nested ones fail parsing
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>
2013-11-14 17:43:58 +01:00
Fabian Bumberger
fd619946be Refactor QQnxWindow
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>
2013-11-11 04:24:57 +01:00
Gunnar Sletta
d4ade9d4ef Request the glyph at the right subpixel offset
Change-Id: Iace18740565862f1c66e2d654a1a2e7bc1a16fc7
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
2013-11-10 23:04:39 +01:00
Gunnar Sletta
f9399d69ad Force FT font engine to load the right glyph metrics
Change-Id: If027ea4c1a3b2ca8f972592abe3534165f62cf4e
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
2013-11-10 23:04:21 +01:00
Giuseppe D'Angelo
8462a6933c Remove a boolean trap in QLayout::replaceWidget
Use some flags instead.

Task-number: QTBUG-34668
Change-Id: I9a75253c8eb98164c594bb6bb06c1a16c9609537
Reviewed-by: Thorbjørn Lund Martsum <tmartsum@gmail.com>
Reviewed-by: J-P Nurmi <jpnurmi@digia.com>
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
2013-11-10 14:09:55 +01:00
Marc Mutz
9af6fd5d8a QKeySequenceEdit: give nested line edit an objectName
People request this, and other widgets do this, too (say, QSpinBox).

Change-Id: I275537fb82b805b0dcb8edba87b8e234985f8d1f
Reviewed-by: J-P Nurmi <jpnurmi@digia.com>
2013-11-10 14:09:45 +01:00
Marc Mutz
944fe9b8bc QKeySequenceEdit: make setKeySequence a slot
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>
2013-11-10 14:09:33 +01:00
Giuseppe D'Angelo
c819a89269 Document the BC break of viewportSizeHint() in itemviews
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>
2013-11-09 15:42:49 +01:00
BogDan Vatra
ef6544ee27 Android native message dialog
Change-Id: Ief8c3ce3b8683c6960f046245844c1835a327d51
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
2013-11-09 10:41:25 +01:00
Thiago Macieira
315ba388f3 Avoid signed integer overflow by making an addition a subtraction
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>
2013-11-09 07:02:00 +01:00
unknown
f767d3a1b2 QTimeZone - Fix Windows Transitions
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>
2013-11-09 01:11:07 +01:00
John Layt
9b7e6cb83d QTimeZone - Fix Mac Transistions
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>
2013-11-09 01:11:00 +01:00
Giuseppe D'Angelo
5dc8ab409f Move QTreeView::accessibleTree2Index to the private class
It's not needed to expose that symbol.

Change-Id: I65b752a41d80eb0779969fa3887c081b4c2c88db
Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
2013-11-08 22:17:14 +01:00
Thorbjørn Martsum
5f5c879832 QHeaderView - remove confusing bool
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>
2013-11-08 22:17:03 +01:00
Peter Hartmann
becdfa6fab QSslConfiguration: rename [get]session() to [get]sessionTicket()
to reflect the fact that this returns and sets the whole session
ticket, and not just the session ID.

Change-Id: I00fe2bc4197dbcd7a02b3ae4f2f84e3a2a7edad0
Reviewed-by: Richard J. Moore <rich@kde.org>
2013-11-08 18:58:27 +01:00
Maciej Kujalowicz
f45e12f91a iOS: Send expose event when a window changes the geometry.
When the EAGLView view changes its layout, it must send the expose event
along with the geometry change. It is important to notify the render loop
of the scene graph that the windows's geometry has changed. The render loop
is waiting for the WM_Expose event and updates the scene's window size accordingly.
See QSGRenderThread::event for reference.
Without this notification, the geometry of window is updated, but the scene is rendered
incorrectly, for example when the orientation of screen changes.

Change-Id: If102014313de455cb1f44d772b478d2feae6dacf
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
2013-11-08 18:52:36 +01:00
Shawn Rutledge
d60e0c3bc1 Remove disused version of QPlatformMessageDialogHelper::clicked signal
It has been replaced with a version that sends both the button and
the role.

Change-Id: I47156288bf2039cfdfd4cf09f75563347bfb4141
Reviewed-by: BogDan Vatra <bogdan@kde.org>
2013-11-08 16:45:26 +01:00
Shawn Rutledge
7e5452a23f Fix QFileDialog::getSaveFilename() with a given default name
The QFileDialogOptions::initiallySelectedFiles were overridden, and
the given filename was also not properly converted to a local file URL.

Task-number: QTBUG-34408
Task-number: QTBUG-34446
Change-Id: I51d05b954a5393d10db9232945ba05bda7068e73
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2013-11-08 16:45:26 +01:00
Sze Howe Koh
706eeadf3a Doc: Move threading overviews from qtbase.git to qtdoc.git
- This topic is  relevant to multiple modules, as illustrated by the
  "Thread-Support in Qt Modules" page. Multithreading can be done in
  both C++ and QML.
- Moving also fixes links to QML-related pages.
- Snippets are copied, not moved. QThreadStorage docs need them.
- QDoc: "DEPENDS += qtdoc" added to keep the "\reentrant" command
  working. It creates a link to the "reentrant" keyword.

Change-Id: I2cdf6139e62d66911561c30fcca7aab160a694b1
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
2013-11-08 16:45:26 +01:00
Kai Koehne
7a78a22e65 Prevent clang from warning about unused variables
Fixes a compiler warning introduced by 79b975756a

Change-Id: Ie9bc677d061f0bb0530eae88715069042b2ab440
Reviewed-by: hjk <hjk121@nokiamail.com>
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
2013-11-08 16:45:26 +01:00
Olivier Goffart
34d21610ba QVariant: Convert automatically from enum types to integral types.
[ChangeLog][QtCore][QVariant] Variant containing enum types can now
be converted to integer

Change-Id: Ibbbc9ae29ab45d67c582fa2d406afc19c5dc41ce
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@digia.com>
2013-11-08 16:45:26 +01:00
Olivier Goffart
2ee97f505b Fix QVariant::canConvert with longlong
Add few cases where conversion to or from LongLong was missing

We need to make it work if we want to use variant.canConvert<qint64>

[ChangeLog][QtCore][QVariant] Fixed QVariant::canConvert with longlong

Change-Id: I0f65073802b62d99250601dd90a8cd2e4d934b60
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@digia.com>
2013-11-08 16:45:26 +01:00
Friedemann Kleint
dd262dc7f5 Revert "Fix setVisible() of QWidget has no effect in QTreeWidgetItem"
It introduces  QTBUG-34653 (Qt Designer widget box no longer
repainted after collapsing items or using the filter).

This reverts commit 04de24c644.

Task-number: QTBUG-13522
Task-number: QTBUG-34653
Change-Id: Ieb9766e7f15acea901fce4ad7142aa72557b9957
Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
2013-11-08 16:45:26 +01:00
Morten Johan Sørvig
fbcad545ce NSUrlConnection backend for QNetworkAccessManager
Add support for QNetworkAccessManager https REST on
iOS, without adding a dependency on OpenSSL.

The current limitations are:
- Overriding server certificate trust issues (for
  example expired certificates) is not supported.
- Usage on non-gui threads is not supported.
  NSurlConnection needs a CoreFoundation-based event
  loop, which Qt currently only provides when using
  QGuiApplication on the main thread.

Change-Id: Ic6f74591d40c3b2248ab81db12647e432377cd4f
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
2013-11-08 14:37:27 +01:00
Giuseppe D'Angelo
2d1bb6d61d Prevent a crash in QLayout::replaceWidget
Item might be null.

Change-Id: Ia432a35cb1a6bb02ee056ff8ad44a9f35bdbc146
Reviewed-by: Thorbjørn Lund Martsum <tmartsum@gmail.com>
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
2013-11-08 14:18:14 +01:00
Gabriel de Dietrich
c934ea341e Cocoa File Dialog: Remove sandbox-ufriendly file system watcher
QFileSystemWatcher causes sandboxing errors since its backend uses
POSIX API in a relatively liberal way.

Also, Cocoa already acts as a file system watcher, and calls
-[QNSOpenSavePanelDelegate panel:shouldShowFilename:] on each
file. From a logical point of view, caching the directory content
can be replaced by testing the current file against the filter
setting. We expect Cocoa to cache results, and by using NSFileManager
things should remain relatively fast.

Task-number: QTBUG-34107
Change-Id: Ia872b9b1244f7b390d173a498011379b9309b3c6
Reviewed-by: Cyril Oblikov <munknex@gmail.com>
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
2013-11-08 11:35:29 +01:00
Friedemann Kleint
7a3c82077f Fix potential BC break in QColorDialog.
Replace newly reimplemented virtuals in
d928dbbc91 .

Task-number: QTBUG-34663
Task-number: QTBUG-14332

Change-Id: Idb2cc2ec237c96f7157470728bb79ff3efc504d0
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
2013-11-08 11:16:51 +01:00
Friedemann Kleint
7a6bb4d9c9 Fix potential BC break in QTabBar.
Move code from mouseDoubleClickEvent() to event().
Introduced by 252bad7c58 .

Task-number: QTBUG-34670
Change-Id: I98ed24f26977220cf03524cfe001524364473982
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
2013-11-08 10:44:06 +01:00
Tor Arne Vestbø
ac7823129a iOS: Cancel any active touches when destroying a QIOSWindow
Keeps the internal state of QtGui sane when it comes to which buttons
are active, etc.

Change-Id: Ic63e74d2546469e085ec46b74f4cf159dd409b07
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
2013-11-08 07:21:40 +01:00
Tor Arne Vestbø
59be0509e0 iOS: Detect/handle cancellation of subset of touch points
Change-Id: I0d345d07fe62a8c7844333bf1eed9be6d6fa432f
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
2013-11-08 07:21:29 +01:00
Tor Arne Vestbø
24d1f58414 iOS: Rename QIOSWindow's backing view from EAGLView to QUIView
Matches the cocoa QNSView and highlights the relation to UIView.

Change-Id: Idcdb17bff994c1e0aef099400c21915a7041e44c
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
2013-11-08 07:20:08 +01:00
Tor Arne Vestbø
a301e868f7 iOS: Rename m_requestedGeometry to m_normalGeometry
Matches the wording using in QWidget.

Change-Id: Ifbb4e5ffa90b47a7c179cf9ec52cb46126d7bccc
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
2013-11-08 07:19:57 +01:00
Liang Qi
b2f2636217 Cocoa: fix a crash in QCocoaFileDialogHelper
Current directory can't be nil.

Task-number: QTBUG-34561
Change-Id: I58c84da4928bd9081c916b6e5541bb86cf75ed47
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
2013-11-08 05:29:38 +01:00
Peter Hartmann
8db127b0b5 qfeatures.txt: add section about XML schema
... so the XML schema part can be disabled in the xmlpatterns module,
while still using other functionality (e.g. XPath).

Change-Id: I3599ea8f915d34e0b1ba5d6a30f3f6269a4c992e
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2013-11-07 20:13:50 +01:00
Shawn Rutledge
8aab8ccc0f Dialogs: provide the StandardButton->ButtonRole mapping in QPA
As the QPlatformMessageDialogHelper will be implemented repeatedly,
it's useful to have this mapping in one place for reuse.  Also, since
we do not guarantee that either accepted() or rejected() will be
emitted for every possible button on a QtQuick MessageDialog, it's
useful for the QtQuick.Dialogs module to have access to this mapping
to interpret individual button presses and emit the role-specific
signals such as yes(), apply(), help(), etc.

Change-Id: I7be753080794adabb784df9b95ac04aa1c29151c
Reviewed-by: BogDan Vatra <bogdan@kde.org>
2013-11-07 18:40:33 +01:00
Eskil Abrahamsen Blomfeldt
42670c7c45 Android: Allow modules to specify permissions/features
Some modules, such as Qt Multimedia, needs special permissions
to avoid getting exceptions at run-time. We should apply these
by default to the AndroidManifest.xml so that an application
using e.g. the camera will work out of the box.

Task-number: QTBUG-33953
Change-Id: Ibc1f086d249197b63e7ed1075ae7d54bdd1212f2
Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
Reviewed-by: Christian Stromme <christian.stromme@digia.com>
2013-11-07 16:37:37 +01:00
BogDan Vatra
b953e2f53f add/remove window only when the window is shown/hidden
Task-number: QTBUG-34469

Change-Id: Id77cf738f96bb94582833f6734a2a491b01e1666
Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
2013-11-07 14:56:32 +01:00
Friedemann Kleint
6ff08b7db3 Windows: Do not set transient parent on popups.
Analoguous to Window creation code.

Task-number: QTBUG-34503

Change-Id: I3cf7d58999bff5b106ca9d2e2c6f550e35f9db9a
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2013-11-07 12:57:58 +01:00
Friedemann Kleint
f48bc3ef40 Add a warning message when a WM_DESTROY not triggered by Qt is received.
Task-number: QTBUG-34503

Change-Id: I7a1e06b34deaf8e595f4986114701480bdcf219c
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2013-11-07 12:57:58 +01:00
Kai Koehne
79b975756a Revert "Add tracing to logging framework"
The tracing API still misses some real-world exposure. Let's
re-do this in dev to have more time.

This reverts parts of following commits:

466e0dff4b
7a47aebe9e
a652bab6a7
8f0654ceb8
4162522edd
32f27b4367
9ff81bdc1a

Change-Id: If97340c37b8b3363f597683336a8390d5ff386f1
Reviewed-by: hjk <hjk121@nokiamail.com>
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
2013-11-07 11:29:30 +01:00
Martin Smith
0491a7a298 qdoc: Don't include internal QML types
QML types marked \internal were appearing in the
"All QML Types" list. These links were dead because
the pages for these internal types were not being
created, which was correct. Now these internal QML
types no longer appear in the list.

Task-number: QTBUG-34506
Change-Id: I1d005459e84ed9a2afae94b797b9d39aa3e517f3
Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
2013-11-07 10:00:19 +01:00
Topi Reinio
170da92d02 qdoc: Fix output file name generation for examples
When generating output file names for examples, qdoc prepends
a module-specific prefix. Unless already defined, it defaults
to the project name defined in .qdocconf file. This leads to
wrong prefix being used in some cases - specifically, on pages
in qtdoc module listing examples in other modules.

This change takes the modulename prefix from the node, and
only uses the project name as a fallback.

Task-number: QTBUG-34581
Change-Id: Ia0a940cbc05ed819ff36c328cf9c1e30e2c65b5e
Reviewed-by: Martin Smith <martin.smith@digia.com>
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
2013-11-07 10:00:19 +01:00
Bernd Weimer
a94f61063a QNX: Fixed "normalPosition" of touch events
Pixel positions have to be set in relation to screen size in pixels,
not the physical size to calculate the normal position in the
range 0..1.

Change-Id: I6880fb64b7c3049d657fd081b564b945399b5865
Reviewed-by: Frank Osterfeld <frank.osterfeld@kdab.com>
Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com>
Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
2013-11-07 10:00:19 +01:00
Tor Arne Vestbø
96d74313fe Add missing Q_INIT_RESOURCE
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. The Q_INIT_RESOURCE needs to happen outside of any
namespace, hence the use of static initResources() functions.

Change-Id: I8f7d36b440b05809d97dd489cf8789f345633cec
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-11-07 10:00:19 +01:00
Paul Olav Tvete
aa9ca5749f Android: allow installing apps to SD card by default
Task-number: QTBUG-34423

Change-Id: I3b2c8a12b113a35f8b8454191d8ba8832d9fd995
Reviewed-by: BogDan Vatra <bogdan@kde.org>
2013-11-07 08:31:57 +01:00
Marc Mutz
6aff0c4e48 QUrlTwoFlag: add two missing constexpr
The other member functions that can be constexpr already are, only these
were missing.

Change-Id: I717c74b210b45cfb8af9168d61e27e3ff2f6a9c9
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-11-07 03:06:16 +01:00
Marc Mutz
1248b1cbe2 Q(UrlTwo)Flags: avoid undefined behavior
Loading an enum with a value that isn't in the enum is undefined,
according to Clang's usan.

So when doing logical operations on QFlags<E>, don't go through
the QFlags(E) constructor, but via QFlags(QFlag) (=int) instead.

Apply the same change to QUrlTwoFlags.

Change-Id: I5f27e22c4d831482fcbba88b97cb124fb005e3fd
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-11-07 03:06:06 +01:00
Richard Moe Gustavsen
6272a816d1 iOS: set active window upon calls to requestActiveWindow
We did not do this from before. Instead we would activate
the window when it's view became first responder. And this
would happen when the input panel was told to open.
That behavior is a fragile, since other layers higher
up (qml) would not open the input panel unless the window
was active, which also makes sense. A classic chicken and
egg problem.

So to play more along with how Qt is expected to work, we
change behavior to instead activate the window directly
when requested to do so (which also includes when the user
touches the window directly). This will also work better
for "keyboard" events like Key_VolumeUp, once implemented.

The down side is that Qt will give focus to widgets/items
(and as such, open the keyboard) whenever you touch the
window. But that is easier to fix, and will be dealt with
in later patches.

Change-Id: I9bbeb0205e7ea3c5079100c07e40ddb1c60b476b
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
2013-11-06 20:50:09 +01:00
Sze Howe Koh
1d54a502dd Doc: Fix cross-module links
- Remove Active Qt -- it's not really plugin-related
- Add QDoc dependencies
- NOTE: Can't add Qt QML because QDoc would get confused between the
  C++ and QML "Qt" namespaces.

Change-Id: I15a76dbd5235f13598a3802a815f7f49b80eac8a
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
2013-11-06 17:47:25 +01:00
Paul Olav Tvete
d8f7a2ddf4 EglFS: make sure resize events are delivered
Make sure that resize events are delivered when the platform
plugin overrides the geometry set in setGeometry().

This fixes a race condition where a widget was resized to its
sizeHint() while the window was maximized, and the content was
shown scaled on the screen.

The problem is that the widget gets the wrong size from
QWidget::setWindowState() (which calls adjustSize() in order to support
normalGeometry). This size is used to resize the backingStore. When the
QWindow is resized, it calls QEglFSWindow::setGeometry() which corrects the
size to screen()->availableGeometry(), and triggers a GeometryChangeEvent
since the size was corrected.

This ends up in QGuiApplicationPrivate::processGeometryChangeEvent() which
will not send a resize event, since the size has not changed (it is always
availableGeometry()). Therefore the widget is never resized, and the
backingStore remains the wrong size.

Task-number: QTBUG-34421
Change-Id: Iee49c53cc529de36010db2695d838d8c2284edd4
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
2013-11-06 17:47:25 +01:00
BogDan Vatra
bc302359ca Android: Fix registerClipboardManager semaphore initialization
Task-number: QTBUG-34582

Change-Id: Idc6c821f768f90adf13af2070affe2ccf89a1450
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
2013-11-06 17:47:25 +01:00
BogDan Vatra
2dd6c23395 Android: Catch any startActivity exceptions
Task-number: QTBUG-34600

Change-Id: I7147f0e6b7788df9e706e70758300d4d786032fc
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
2013-11-06 17:47:25 +01:00
Stephen Kelly
8ef5e700b8 QMetaType: Fix conversion between module types.
Change-Id: I7215b4599c3f0459139b32b6571f0a9e60182ee9
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@digia.com>
2013-11-06 16:15:15 +01:00
BogDan Vatra
417cf3fc53 Android: Fix menu on API-11+
On API-11+ if there is no hardware menu button show the action bar.
Fix menu when using the opengl android plugin.

Task-number: QTBUG-32002

Change-Id: I45bd49107621e4cab85eb6411897229e20bb8281
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
Reviewed-by: BogDan Vatra <bogdan@kde.org>
2013-11-06 16:09:30 +01:00
Tor Arne Vestbø
04ad4d7de5 iOS: Remove unused QIOSWindow methods for getting effective width/height
Change-Id: Ifdfd5881822bf56f2c8ab0742a0e257e2bd61533
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
2013-11-06 14:21:56 +01:00
Tor Arne Vestbø
8f77f9536f Clarify Q_INIT_RESOURCE in relation to namespaces
The constructor functions generated by rcc are put in the global namespace.
As there is no way to forward-declare a function in the global namespace
from within another namespace, Q_INIT_RESOURCE must always be called from
the global namespace.

Change-Id: I8b8b9451271cf2f9147164696a6df7615678ab03
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
2013-11-06 14:21:56 +01:00
Morten Johan Sørvig
762c3d87de Don't hardcode devicePixelRatio to 1.
This code path can and will be hit during app startup,
and can result in low-resolution images being used
on high-dpi systems.

Use qApp->devicePixelRatio() instead, which is more
likely to be correct.

Change-Id: Ic881cfedd8e962037d2d4af4a1242f590d56c194
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
2013-11-06 14:21:56 +01:00
Gunnar Sletta
a805aa384d Revert "Use Qt's own glyph cache with the freetype engine."
This reverts commit 8c58640fdf.

The intent was to reduce the maintenance of parallel code paths,
but this had a negative impact on performance so we need to
enable it again.

Change-Id: Ic58f7781ff076055e7c48f20fc0e7a8a2c9e51a4
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
2013-11-06 11:31:44 +01:00
BogDan Vatra
efb04c8d7d Android: prevent main activity to be recreated.
Add more config changes needed for API 13+
API 13+ is mandatory to build any Qt for Android application.

Change-Id: I595f7174dd2fc8a0865772f9780ce606e1f1fcf1
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
2013-11-06 11:31:39 +01:00
Jerome Pasion
5c389cecd0 Doc: Updated url variable in qdocconf files.
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: Ifa55fcd9e402b0e184a41e316340e46aeb7101de
Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@digia.com>
2013-11-06 11:31:39 +01:00
Gunnar Sletta
f78661b03c Make OpenGL texture glyph cache use the right freetype glyphs
The freetype font engine would fall back to rasterizing glyphs
via QPainterPath in QFontEngine::alphaMapForGlyph() which has
a rather unfortunate implementation.

Change-Id: Ic0b4095b6f17ab33f0602139f0a8fb441dfba0ee
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
2013-11-06 11:31:39 +01:00
Marc Mutz
6d45bf683e QGlobal: static_assert that sizeof(int) == 4 and UCHAR_MAX == 255
According to Thiago, Qt assumes this in a lot of places,
so make it explicit.

Change-Id: I3f4a55699379fd9fe4d792061c80b3b589c10c53
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-11-06 09:35:01 +01:00
Kai Koehne
6381c807e5 Force length fo licensee literals to be computed at runtime
Prevent compilers from computing strlen() at compile time by
passing a volatile pointer.

Task-number: QTBUG-34261
Change-Id: I5e5e80181024d57496907918d2a43d7c83841082
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-11-06 08:55:45 +01:00
Thiago Macieira
6adfca1acb Doc: Add a little more information about current dirs
Task-number: QTBUG-34300
Change-Id: Ib71d6ace77b525942ca40645299cdfd87b753d70
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
2013-11-06 08:35:29 +01:00
Frederik Gladhorn
49a3c87175 Remove two unused functions from QAccessibleTabBar
Change-Id: Ib3296a11b1bb9656f2b0c14106ea09f529311ccf
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
2013-11-06 08:34:34 +01:00
Gunnar Sletta
e7fd798af0 Disable threaded rendering for Intel HD 3000 cards.
Task-number: QTBUG-34492
Change-Id: I1848cde3fb9517679fd54a7170ed5bee40880edc
Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
2013-11-06 00:35:43 +01:00
Andy Shaw
0cdf2a8023 Revert "Ensure CSS rules are inherited from the parent tags"
Since the original change caused a problem with the CSS
rules being always inherited where in some cases this should
not be happening.

This reverts commit 6f65466137.

Change-Id: I6e9cf163d752b1869b5e967a7ab59963d655ba87
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
2013-11-05 23:04:16 +01:00
Pekka Vuorela
0c9a5698a1 Add missing \since 5.1 for QVector::takeFirst() and ::takeLast()
Change-Id: Ic2d7e82187a17e21c2ed0e81318294730c3a0930
Reviewed-by: Thorbjørn Lund Martsum <tmartsum@gmail.com>
2013-11-05 22:24:05 +01:00
David Faure
44d48862c0 QStandardPaths: add GenericConfigLocation
This is what ConfigLocation was meant to be. A directory shared by all
applications. Unfortunately when I wrote the fallback on Windows,
I picked DataLocation (which is app-specific) instead of
GenericDataLocation (which is shared between apps). This makes it
impossible to have config files shared between apps, e.g. for libraries.
It also makes ConfigLocation quite inconsistent (on Windows one cannot
use it to load another app's config file, while it works everywhere else).

All this is fixed by GenericConfigLocation, which is shared between apps.

Change-Id: I23a755131061d4fea01e13dd1038fbd8ef333a5d
Reviewed-by: Alex Richardson <arichardson.kde@googlemail.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-11-05 19:08:08 +01:00
Frederik Gladhorn
2c11a492fb Add better version checks for accessibility
We would spam the debug output on devices with api < 16 with some
warnings that the super class a11y delegate could not be found and
others.
Instead check the runtime version before trying to load the JNI code and
only load the delegate if api is new enough.

Change-Id: I52286cb99924b034b9b58c53566f15030939b0c9
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
2013-11-05 19:08:08 +01:00
Jan Arne Petersen
54ed14d5c6 Support native event filters for screen events
Change-Id: If0af4544191c513e64f582cece4a453c1ab5c8e7
Reviewed-by: Andreas Holzammer <andreas.holzammer@kdab.com>
Reviewed-by: Fabian Bumberger <fbumberger@rim.com>
Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com>
Reviewed-by: Frank Osterfeld <frank.osterfeld@kdab.com>
Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
2013-11-05 19:08:08 +01:00
Morten Johan Sørvig
fc26b053df Declare Cocoa conversion funcs in objc-mode only.
In practice, there are several ways to forward-declare
objective-c classes. Qt uses "struct objc_object",
other projects may use a plain "class". Mismatched
forward declarations will lead to compile errors,
and this is a form of header pollution.

dd5e40d9 added a workaround where Q_FORWARD_DECLARE_OBJC_CLASS
can be predefined in order to sync up the declarations.

Make forward declaration clashes less likely by
forward-declaring in objc-mode only.

Change-Id: I9f7a399d64dc88bfe05d5385b3d46b5302112aef
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
2013-11-05 17:37:05 +01:00
Gabriel de Dietrich
2eb1e28a90 Cocoa (OpenGL): If no view is attached, makeCurrent() should return false
Change-Id: Ie2869fae1549c3b0a8ef78702410e6ca0c980737
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
2013-11-05 17:37:05 +01:00
Gabriel de Dietrich
a199a87ad5 Cocoa: Don't hide views when reparenting
Commit a2bdda8e3b was meant for creation only. We should not
hide views on our own, particularly when Qt had not asked for that.

Task-number: QTBUG-33581
Change-Id: Ib35fc78a27be1498f80aabd385e7a2185475b949
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
2013-11-05 17:37:05 +01:00
Alex Merry
f2720a806e Improve documentation of QImageIOPlugin
Expanded the documentation to describe what the code in QImageReader and
QImageWriter actually expects from these plugins.

Change-Id: I04bb0cbf56d57a56ed246e723e533d73440a4d3a
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@digia.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@digia.com>
2013-11-05 17:37:05 +01:00
J-P Nurmi
71ce869825 Fix placeholder text in QTextBrowser
Task-number: QTBUG-34051
Change-Id: Ief55cda861ef293a5fdeb2e5fa287b835c729894
Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
2013-11-05 17:37:05 +01:00
Mitch Curtis
46a8885ae4 Disallow deep or widely nested entity references.
Nested references with a depth of 2 or greater will fail. References
that partially expand to greater than 1024 characters will also fail.

Change-Id: Id4e49d6f7cf51e3a247efdb4c6c7c9bd9b223f6e
Reviewed-by: Richard J. Moore <rich@kde.org>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2013-11-05 15:55:17 +01:00
Tor Arne Vestbø
1b58d9acc4 Remove Q_INIT_RESOURCE_EXTERN
It's not providing any convenience over using Q_INIT_RESOURCE, which does
its own extern, were never documented, and was added back in 2010 without
any commit message justifying its existence.

Change-Id: I1ca9a042d3f4fca34007d28b140661c50064f11b
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2013-11-05 15:41:54 +01:00
Martin Smith
2bb6fbbd0f qdoc: Eliminate qobject_cast() collision
Two template functions for qboject_cast() are defined
in qwidget.h that confuse qdoc because qdoc doesn't
handle template functions correctly. In this case, the
documentation for all qobject_cast() functions appears
in qobject.cpp where it is declared to be related to
QObject. This fix surrounds the template functions in
qwidget.h with #ifndef Q_QDOC ... #endif, since qdoc doesn't
need to see them.

This fix unmasks a linking bug QTBUG-34564, which will
be fixed separately.

Task-number: QTBUG-34505
Change-Id: I97fd32cc563bfa4a232819c097f41be56adf0114
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2013-11-05 15:40:14 +01:00
Friedemann Kleint
d1870d9036 Clean up QWindowsSessionManager.
Fix spelling error in method name and inline simple functions.

Change-Id: I7f2a67fb1951b58874b09002ee57e15e75561727
Reviewed-by: Oliver Wolff <oliver.wolff@digia.com>
2013-11-05 15:40:14 +01:00
Maciej Kujalowicz
450d3efcb1 iOS: Enable threaded OpenGL.
This change activates ThreadedOpenGL and ThreadedPixmaps capabilities
in the iOS integration. QIOSContext is expanded with a support for
a shared context.

Change-Id: I56615c870a24e17850ad2748421c54e015de3ab2
Reviewed-by: Ian Dean <ian@mediator-software.com>
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
2013-11-05 15:40:14 +01:00
Tor Arne Vestbø
aa6a0cdbf5 Clarify use of Q_INIT_RESOURCE
The Q_INIT_RESOURCE macro is needed if a library itself uses resources, in
which case the Q_INIT_RESOURCE can and should happen in the library (like
we do for eg. widget styles), or if a library exposes resources that are
supposed to be used by the library clients, in which case the macro needs
to be put in the application code.

The distinction between the two, and the fact that resources built as part
of the main executable do not need the explicit initialization, were not
all that clear.

This was evident by the lack of Q_INIT_RESOURCE in our own Qt libraries,
and the various Q_INIT_RESOURCE calls in our examples where they are not
needed.

Change-Id: I40258458e9fdf9ee5502c212971fb3d90b4fc388
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
2013-11-05 15:40:14 +01:00
Jan Arne Petersen
6802f34bed Process screen events in the main thread
Screen events are still read in the screen event thread but are
processed in the main thread to make it possible to support
QAbstractNativeEventFilter for screen events later.

Implementation is similar to the xcb platform plugin.

Change-Id: I7bade3e13e51c6d70bb608727a93bbd3aabc5d47
Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
2013-11-05 11:27:10 +01:00
Friedemann Kleint
161e8653c3 Disable clear button in read-only QLineEdit.
Task-number: QTBUG-34315
Change-Id: I6c318879aee907c080e871a541da4ba5eadd71ed
Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
2013-11-05 09:16:47 +01:00
Friedemann Kleint
142c5ef9dd QLineEdit: Fix potential crash when removing the clear button.
Remove it from the side actions list.

Task-number: QTBUG-34315
Change-Id: I70063351193b504f8656e903896d155ac74f73a6
Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
2013-11-05 09:16:41 +01:00
Bernd Weimer
e9c51a1fdc BlackBerry: Prevent superfluous removal of socket notifiers
File descriptors have always been removed from bps before adding them,
which lead to an annoying warning.
"QEventDispatcherUNIX::registerSocketNotifier()" needs to be called
after "ioEvents()" to prevent this.

Task-number: QTBUG-34536
Change-Id: If074ff7a6638fe234abc100c81d094e182de7537
Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com>
Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
2013-11-05 09:13:09 +01:00
Stephen Kelly
215e525a5c Make error messages a bit better.
Change-Id: I83b5852abfbb3437c03516bc4b36eff385ddb983
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
2013-11-05 09:07:53 +01:00
Thiago Macieira
82fe2c6c1b Add qcollator_p.h to the list of headers.
Change-Id: I91963843e10fe0c33e5f13c06562dc5f9fdc2b6d
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
2013-11-05 06:16:08 +01:00
Sze Howe Koh
16198d963d Doc: Fix broken links
Task-number: QTBUG-33360

Change-Id: Ic944cb2f575c35ebad64852ef5fc44a50ac03571
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
2013-11-05 00:29:01 +01:00
Sze Howe Koh
6b8e866391 Doc: Clean up threading examples
- Example 3 (Clock) is a collection of anti-patterns.
    - It implements a slot in a QThread subclass and then forces the new
      thread to use Qt::DirectConnection to invoke the slot in the
      "wrong" thread.
    - It talks about getting away with non-thread-safe usage
    - It uses a thread as a timer and then admits that it's an over-
      complicated approach.
- Example 4 (Permanent Thread) is over-complicated yet incomplete. A
  better one exists in the QThread class ref.
- Example 1 (Thread Pool) is covered by the QThreadPool class ref.
- Example 2 (QtConcurrent::run()) is covered in the "Threading and
  Concurrent Programming Examples" page and the "QtConcurrentRun" page.
- The undocumented "Hello Thread" example is covered in the QThread
  class ref.
- These examples cannot be accessed from Qt Creator's Examples tool.
- These examples are neither widget-related nor tutorials, contrary to
  their source paths.

Task-number: QTBUG-33360
Change-Id: Ic79cb764ee925ddbcbeafee8e1d01db7fe0f6cfe
Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
2013-11-05 00:29:01 +01:00
Allan Sandfeld Jensen
a8351096db Fix ARGB image glyphs on Open GL ES2 or big endian
Change Ie891665ad66e31692b69db02d34be8d303a7d631 accidentially removed
the condition that would ensure ARGB glyphs would get swizzled on OpenGL
ES2.

This patch readds a condition to check that, and also fixes the same on
big endian hosts by reusing the OpenGL ES2 code path.

Change-Id: I55615c498261a43c50e5a6902a7e2e24cddc4f4b
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
2013-11-04 22:46:13 +01:00
Allan Sandfeld Jensen
03aea653e2 Remove now redundant argb to rgba function
Change-Id: I293d71e12398aef91995b68a9ea22cac984917b0
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
2013-11-04 22:46:13 +01:00
Marc Mutz
770ab026a8 Revert "QTest: use nth_element to calculate the median"
This reverts commit 48586b2bac.

This causes problems in QtCreator without anyone being able to say why.

Task-number: QTBUG-34397
Change-Id: I9ea5457724d5af8d87e0bc40e6615748daf9c04c
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
2013-11-04 22:46:13 +01:00
Marc Mutz
0884802bb5 Revert "QtConcurrent::Median: add some qMove()"
This reverts commit 12bd604f24.

This causes problems in QtCreator without anyone being able to say why.

Task-number: QTBUG-34397
Change-Id: I7733c3db7d35bba2734e128476aabcb0152a91e4
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
2013-11-04 22:46:13 +01:00
Allan Sandfeld Jensen
1d07c72431 Fix major performance regression in QGLWidget on texture bind
Since Qt 5.1 we have not recognized the GL_EXT_bgra extension on desktop
OpenGL, or the GL_EXT_texture_format_BGRA8888 extension on OpenGL ES.

This patch matches the GL_EXT_bgra extension on both OpenGL and OpenGL ES
and adds discovery of GL_EXT_texture_format_BGRA8888 under OpenGL ES.

The old name for GL_EXT_texture_format_BGRA8888, GL_IMG_texture_format_BGRA8888
is also recognized.

Change-Id: I2035bfe045aee14e86a1f407f5b8556454f8bb90
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
2013-11-04 20:29:07 +01:00
Marcel Krems
c87b27f308 Silence compiler warning
warning: logical not is only applied to the left hand side of this
 comparison [-Wlogical-not-parentheses]

Change-Id: I15e283023918cd4ebc27e91812eadf95ba156d71
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: David Faure <david.faure@kdab.com>
2013-11-04 19:53:08 +01:00
Oswald Buddenhagen
8a5657b9f7 fix warnings about unused variables & parameters
Change-Id: Ia5816671267ea21dae0d90560b239c4498f9156c
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2013-11-04 19:50:05 +01:00
Friedemann Kleint
a922b94c2f Windows: Do not detect full-screen state for child windows.
Introduced by a1db174ea9 (Fix window state
handling).

Task-number: QTBUG-34477

Change-Id: I4c92edddef346f9d7c4741f2f9784e9f686e9cda
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2013-11-04 19:37:57 +01:00
John Layt
8a1bebb297 QPdfEngine - Remove Producer copyright notice
Remove the copyright notice from the PDF Producer field which could be
misunderstood. Comparison to other PDF Producers shows no other company
does this.

Task-number: QTBUG-33853
Change-Id: Ie657a356dc7c4b15f04d961978e0c8514c092a31
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Reviewed-by: Jake Petroules <jake.petroules@petroules.com>
Reviewed-by: Thorbjørn Lund Martsum <tmartsum@gmail.com>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
2013-11-04 19:28:20 +01:00
Stephen Kelly
d35c8fe521 CMake: Add the qreal typedef type to the Qt5::Core target.
This way, a Qt compiled with qreal=float and one linked
with qreal=double can not be linked by a single downstream. That is
diagnosed at cmake-time.

Change-Id: I9183dbcfef181fadea5321d3154948e8258e4a2a
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
2013-11-04 16:25:39 +01:00
Andy Nichols
c982fa3666 iOS: Prevent calling QWindow methods on native NSViews
UIViews can return nil when calling qwindow, so we must check before
trying to use the QWindow handle.

Change-Id: I72e9ddc58ebe10a3e7ea511f2356650402ba23f4
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
2013-11-04 15:56:24 +01:00
Frank Osterfeld
84a318c74f enable PPS keyboard implementation also for plain QNX
Integrating with /pps/services/input is also the way to go
for QNX.

Change-Id: If2498f2c42ed4e6e0d1cadc787cc62e80940043a
Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com>
Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
2013-11-04 15:55:41 +01:00
Jan Arne Petersen
c8df30682c Handle keyboard focus change
Call QWindowSystemInterface::handleWindowActivated when a
SCREEN_EVENT_PROPERTY event for he SCREEN_PROPERTY_KEYBOARD_FOCUS
property is received.

Change-Id: Ic2b10c5b793dd4451adac68691296f8265a71160
Reviewed-by: Andreas Holzammer <andreas.holzammer@kdab.com>
Reviewed-by: Frank Osterfeld <frank.osterfeld@kdab.com>
Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com>
Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
2013-11-04 15:55:33 +01:00
Topi Reinio
00b5dec9e6 qdoc: warn if index file for dependency is not found
Output a warning for each doc dependency that qdoc cannot
locate an index file for.

The index files are loaded for both prepare and generate
phases. To avoid duplication, output warnings only when
in generate phase.

Change-Id: I74f9ba78e4b57cb1a62e0d1c2efda01ecc85c06d
Reviewed-by: Martin Smith <martin.smith@digia.com>
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
2013-11-04 11:42:01 +01:00
Tor Arne Vestbø
a24ec6b273 Ensure QLocale's shared C-locale QLocalePrivate is never deleted
Other static data such as QTextStream might be initialized before the
static C-locale, in which case QLocale would adopt c_private and bump
the ref-count to 2, only to see it reset back to 1 when the c_locale's
static initialization happened.

The result was that at application shutdown the ref-count would fall
down to 0, and we tried deleting the static data.

This issue was observed with clang in a debug build, where the c_private
is initialized at runtime.

Change-Id: If05221a5e87886e1805ad3c1b1520483f425c0fb
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
2013-11-04 11:42:01 +01:00
Andreas Holzammer
7b2ae0db66 Better check for host builds for fails on QT_POINTER_SIZE
Change-Id: I9949565617cb62e34dd4db93acc4162b24c99ff9
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2013-11-04 11:42:01 +01:00
unknown
9927c1a2bb QPrintDialog - Fix Windows Current Page option selection
In the Windows print dialog default the print range radio button
selection to the QPrinter set value, but only if the option is enabled
in the dialog.

Task-number: QTBUG-32965

Change-Id: Ic64d86d263a2f8e31c8b32608b569499d0f24d63
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2013-11-04 11:42:01 +01:00
Tobias Koenig
1f6dfa7749 Add QSQLITE_OPEN_URI database connection flag
This flag enables the URI mode for database names in the SQLite
backend. Without this flag, it's not possible to use URIs like
    'file:somedb?mode=memory&cache=shared'
to create shared, in-memory databases.

Change-Id: I2938184dad1f27c7af454385ca305bd4f6ed1a5e
Reviewed-by: Mark Brand <mabrand@mabrand.nl>
2013-11-04 09:52:36 +01:00
David Faure
3b48a65e99 QBasicAtomicInt: fix wrong comment about non-atomic API
The public documentation for load() and store() says it's atomic,
and it is:
* using _q_value.store(newValue, std::memory_order_relaxed) in the C++11
implementation
* using a simple assignment otherwise, which is atomic (and relaxed, no
memory barriers) on all the existing C++ ABIs.

Change-Id: I40faa47120163225bd11c3a32514ac97ef8bbbd4
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-11-02 09:52:42 +01:00
Eskil Abrahamsen Blomfeldt
59569fd020 Android: Differ between ShowMaximized and ShowFullScreen
The default is now ShowMaximized which behaves as it did before,
i.e. each window will fill the screen but the status bar will be
visible. Calling showFullScreen() explicitly will now hide the
status bar to maximize the amount of screen real estate occupied
by the application.

Task-number: QTBUG-33135
Change-Id: If0d0a2ab72f8026e76818290e2b953dbc0dec156
Reviewed-by: BogDan Vatra <bogdan@kde.org>
2013-11-01 14:52:47 +01:00
Martin Smith
45b10ee02a qdoc: Don't output docs for internal things
This update to the Generator base class prevents qdoc
from writing an html file for anything that is marked
\internal if the user has not set the showinternal flag.

Task-number: QTBUG-34269
Change-Id: Ia60109d4568447501370bb9d4c1344a48f9b6113
Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
Reviewed-by: Nico Vertriest <nico.vertriest@digia.com>
2013-11-01 14:52:47 +01:00
Martin Smith
0b152831cc qdoc: Update qdoc's QML parser
Because qdoc is part of qtbase/src/tools, it is not allowed to depend
on anything outside of qtbase. But qdoc uses the QML parser from
qtdeclarative, so qdoc has its own copy of the QML parser sources. The
QML parser has been updated to the current version for Qt 5.2.

Task-number: QTBUG-34269
Change-Id: I5ac9c8ff08a3494d5c35a0014a437be88f2dc31d
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
Reviewed-by: Nico Vertriest <nico.vertriest@digia.com>
2013-11-01 14:52:47 +01:00
Martin Smith
e9fe369321 qdoc: Corrected error in QDocDatabase::findQmlType()
It was still using the QML module version number as
part of the search key. e.g. it tried to find the
type node for QtQuick.Controls::Button using
QtQuick.Controls2.Button, but now it searches without
the 2.

Task-number: QTBUG-34173
Change-Id: Ibc8b6d9ef4ceebb20c1be00ec3bc9190c51bcdf3
Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
Reviewed-by: Nico Vertriest <nico.vertriest@digia.com>
2013-11-01 14:52:47 +01:00
Martin Smith
6893a0d656 qdoc: Part 2 of fix for inheriting abstract QML types
This fix not only gets the property lists correct
but also creates correct links to the property docs.
A side effect is that QML properties, methods, and
signals whose names begin with "__" are automatically
treated as if they are marked \internal. This had been
agreed earlier but had not been implemented. It is also
required to fix this bug so it is included here.

Task-number: QTBUG-33814
Change-Id: I57de1e49774db47cb57c042f181ccc8edec62d13
Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
Reviewed-by: Nico Vertriest <nico.vertriest@digia.com>
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
2013-11-01 14:52:47 +01:00
Martin Smith
7e6ca1ef0d qdoc: Internal QML Types no longer marked public
When a QML type marked with \internal is read from an index file,
it is given private access instead of public access.

Task-number: QTBUG-34010
Change-Id: If9270372cf4db835dca9731bce8c446a2fa4e140
Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
Reviewed-by: Nico Vertriest <nico.vertriest@digia.com>
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
2013-11-01 14:52:47 +01:00
Martin Smith
b21c82908c qdoc: Snippets files no longer parsed by qdoc
The files in the doc/snippets subdirectory of each example
subdirectory are no longer parsed by qdoc as source files.
They continue to be used as snippets files.

This fix also ensures that there are no duplicates in the
list of files to be parsed.

Task-number: QTBUG-34003
Change-Id: Icec1a2a539237f24ee6bae89c6401f0dc81826d1
Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
Reviewed-by: Nico Vertriest <nico.vertriest@digia.com>
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
2013-11-01 14:52:47 +01:00
Martin Smith
9205ae8fa4 qdoc:headers and sources paths are canonicalized
This eliminates the possibility that the same file could
appear in the file list twice causing qdoc to parse it twice.

Task-number: QTBUG-34002
Change-Id: Iab63d778c9f955076515a8ae2f1bd9560099b13d
Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
Reviewed-by: Nico Vertriest <nico.vertriest@digia.com>
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
2013-11-01 14:52:47 +01:00
Martin Smith
b6a4545b8f qdoc: Include internal types in the index files
Internal types can be inherited. Documentation is not created for
internal types, but if an internal type is abstract, its properties
must be listed on the documentation page of each subtype that inherits
the internal type. This fix includes internal types in the index file.

Task-number: QTBUG-33814
Change-Id: Ib6ef7cbd92804b3c605009802ddb15d35b32692c
Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
Reviewed-by: Nico Vertriest <nico.vertriest@digia.com>
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
2013-11-01 14:52:47 +01:00
Christian Strømme
efc61299bd Android: Check for null pointer before calling ANativeWindow_release()
Calling ANativeWindow_release() with a null pointer will cause
a SIGSEGV.

Task-number: QTBUG-33955
Change-Id: If7d1afa3baea04360507eec5042b4e18a0272527
Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
2013-11-01 13:16:31 +01:00
Christian Strømme
159f086a7f Android: Avoid re-creating Random objects.
We where re-creating a Java Random object each time the seed was set,
this causes unnecessary overhead as the old objects becomes  subject
for garbage collection.

Change-Id: I7aa48f5380f86d6c0d57eaeadc71b9b2b146034d
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
2013-11-01 13:16:21 +01:00
BogDan Vatra
48dcdbe510 Android: implement a simple cache mechanism for assets dirs.
AAssetManager_openDir is a pretty slow operation, so we are caching the most used dir contents.

Task-number: QTBUG-34464

Change-Id: If198f7dae0d6961291c992e6eb46839ba5455819
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
2013-11-01 13:15:07 +01:00
BogDan Vatra
c95e1567e9 Remove unused field.
Fix crash on Android 4.4

Change-Id: Ibee584c0154b0b116af58477302e7e8385f0290d
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
2013-11-01 13:15:01 +01:00
BogDan Vatra
b7440536c7 Android: Handle virtual keyboard visibility changes.
emitInputPanelVisibleChanged when virtual keyboard visibility is changed.

Task-number: QTBUG-34347

Change-Id: Iab7374db42ff8ce6f33dcc793b23f84d3c8692d5
Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
2013-11-01 09:38:12 +01:00
Morten Johan Sørvig
d1114669e3 Cocoa: Improve cursor setting.
Implement cursor setting in terms of [NSCursor set]
and [NSView cursorUpdate] using the window tracking
area.

Refactor cursor conversion into QCocoaCursor::
convertCursor. Rename QCoocaWindow::m_underMouseWindow
to m_enterLeaveTargetWindow since it's set according
to spesific enter/leave logic. Add m_windowUnderMouse
which tracks mouseEntered/mouseExited state.

Task-number: QTBUG-33961
Change-Id: Id5e12594f5db365e09c9926a4c08d748a9afb935
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
2013-11-01 09:38:12 +01:00
Richard Moe Gustavsen
fecc820c58 iOS: bugfix touch events when not using alien
It seems that 130ee40b broke touch handling for
non-alien QWindows. For those cases, a QWindow that is a
child of another QWindow will get its own UIView to
back it up. The current code did not take this into
account when calculating the global coordinates of
touch events. Instead we need to search for the
top level QWindow it might be inside before we find the
view that acts as the "desktop" for it.

Change-Id: Ie3c19bf86c92fa3f247a0764116830e91b8322d2
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
2013-11-01 07:30:32 +01:00
Richard Moe Gustavsen
eb64c765e3 iOS: clear focus object when resigning first responder status
Instead of deactivating the window when we resign first
responder status, we now leave it focused, and
tell it to clear its focus object instead.
This will work better with the rest of Qt, which expects
a window to have focus when its in front.

Change-Id: I6fcc232467af306b791a834f4843bfd2786b206f
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
2013-11-01 07:30:06 +01:00
Richard Moe Gustavsen
cfa85c76c7 QWindowPrivate: add virtual function 'clearFocusObject'
On mobile platforms, a line edit should only have keyboard focus
when the virtual keyboard is open. As it stands, the only way to
clear focus when the user hides the keyboard, is to deactivate the
whole window. This is a bit too much, since Qt still expects the
window in front to be active/focused. What we need is a way to
remove focus from the current focus object without disturbing
the state of the window.

QWindow has a virtual function 'focusObject' from before. We now
add a virtual function 'clearFocusObject' to QWindowPrivate
that can be overridden by QWidgetWindowPrivate and
QQuickWindowPrivate. That way we can remove focus from current
focus object when the virtual keyboard is closed from the
platform plugins.

Change-Id: Ica4ec76f8a69cd6107236a8000ff8bd742e988b5
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
2013-10-31 23:37:54 +01:00
Lars Knoll
d8bf317546 make qreal double by default on all platforms
On modern ARM CPUs there is no speed difference between
float and double anymore, so let's rather use double for
qreal to avoid rounding and precision issues. Like this
we also get much better compatibility with our desktop
OSes.

This is not binary compatible on ARM, but the old behavior
can be restored by passing -qreal float to configure.

Change-Id: I2a4b61e19a3dfa6b0bd76734cecf2634c97207fc
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-10-31 22:01:40 +01:00
Lars Knoll
e696bef863 Fix compilation with QT_COORD_TYPE=double on ARM
Add a missing template specialization in the neon
drawhelper.

Task-number: QTBUG-33781
Change-Id: Iec02a93aee9403dc1275c32436db5527585b1088
Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2013-10-31 22:01:40 +01:00
John Layt
24733dea6c QDateTime - Optimize refreshDateTime()
A small optimization to the private refreshDateTime() function, improves
standard performance tests by 0.3 msecs per iteration for affected
functions, e.g. isValid() and offsetFromUtc() improve from 5.4 to 5.1.

Change-Id: Ie67812649ef244388b484af35848b09d92dee38a
Reviewed-by: Mitch Curtis <mitch.curtis@digia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-10-31 22:01:40 +01:00
John Layt
1da1259c28 QDateTime - Optimize date() and time() methods
Optimize the performance of date() and time(), resulting in a one-third
improvement, and subsequent improvements in all date/time based
functions.  Tested over 1000 iterations of the standard benchmarks, in
msecs per iteration:
                     Before  After
date()/time()        0.3     0.2
setDate()/setTime()  0.9     0.8
daysTo()             0.6     0.4

Note original performance before msecs storage was 0.06.

Change-Id: Ie838e560ddf7129281531dc965af56ac19cce91d
Reviewed-by: Mitch Curtis <mitch.curtis@digia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-10-31 22:01:40 +01:00
BogDan Vatra
e7db02e79e Remove android specific qmake variables.
Change-Id: Iba2b929ba70588ffcbcc9395501753521cfe5154
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
2013-10-31 22:01:40 +01:00