Commit Graph

15415 Commits

Author SHA1 Message Date
Christian Strømme
c5b2553fc2 Android: Add QAndroidJniXxx as friend classes in qjni.
The JNI classes in Qt Android Extras are changing name from QJNIXxx to
QAndroidJniXxx and they need to be friends of the private JNI classes
in core.

Change-Id: Ib5e1729f4bbba876b7d3eba5742fe750f95c48f7
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-10-09 18:22:38 +02:00
Paul Olav Tvete
85fc94db1b Android: Fix backspace bug with 4.3 stock keyboard
The Android 4.3 keyboard will cause setComposingRegion() to be called when
backspacing over an existing word. If we don't implement that, the editor
will be out of sync with the input method.

Task-number: QTBUG-32955
Change-Id: I6c4ff786269a4e74c70a093c5f03c4c5a5727dd5
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
2013-10-09 15:38:24 +02:00
Eskil Abrahamsen Blomfeldt
c376c272e6 Android: Correctly escape backslashes in deployment settings
When outputting the deployment settings on Windows, the paths might
have backslashes. These need to be escaped, otherwise they will simply
be removed by the JSON parser (or converted into whatever they happen
to represent given the neighbouring character.)

Task-number: QTBUG-33926
Change-Id: I11f1bc7d1f8082c73329bdc02fb8d653a0b5c0ee
Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2013-10-09 15:38:24 +02:00
Eskil Abrahamsen Blomfeldt
d4b30757ab Fix broken text layout with ShowLineAndParagraphSeparators
Before we add the current cluster we need to check if there's
space for it. Calling checkFullOtherwiseExtend() also has
the side effect of resetting the space data. We would add
the cluster without checking for space when showing separators,
causing broken behavior like we would count the space in the
current item as trailing space, which would make us chop the
end of the string.

Task-number: QTBUG-28832
Change-Id: I8169662218ff6e645575d4e89a57f6b234f3c4cb
Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
2013-10-09 13:52:58 +02:00
Eskil Abrahamsen Blomfeldt
96a11284f2 Android: Fix black screen when changing orientation
When targeting API level 13 or higher, you need to explicitly
subscribe to configuration changes for screen size, otherwise
surfaceChanged() will not be called when you change the
orientation of the screen.

Task-number: QTBUG-33140
Change-Id: I48fd1d298c408802d1743736f62128cd0eec8983
Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
2013-10-09 13:52:58 +02:00
Laszlo Agocs
80cd06fd9d eglfs: Separate compositor and improve raster window support
Separating the compositor into a separate source file improves the
chances of possible future reuse and paves the way to supporting
multiple GL windows. Tooltips are now working too. Implemented a few
window functions like raise() and lower(). Fixed the qFatal for
multiple GL windows to be raised in non-SDK based Android builds too.

Change-Id: Id94d2fb2a4382766f3d130eebe1e6f397a535852
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
2013-10-09 13:52:58 +02:00
Katja
8d2c6206fd *.sln not generated correctly for VS2012 and VS2010
msbuild fails to build project since sln not generated correctly

Task-number: QTBUG-33446
Change-Id: If92ea743b1b407446873210090aa8591a491abad
Reviewed-by: Andy Shaw <andy.shaw@digia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2013-10-09 13:52:58 +02:00
Friedemann Kleint
c3a171e34e Suppress automatic positioning of popup windows.
This seems to cause issues with menus on certain Windows machines.

Task-number: QTBUG-33653

Change-Id: I8c31dd3ba5ccc6eb0551048401051d819f49a8c1
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2013-10-09 13:52:58 +02:00
Thomas Hartmann
89f9bc9c5f Fix compilation for MSVC 2008 and std::tuple
For MSVC 2008 make_tuple is in the tr1 namespace.

Change-Id: I4a51f6cabdf068993869b404b12ed1484a21a9d4
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2013-10-09 13:52:58 +02:00
Mitch Curtis
dee55b026b Mention that the c++11 CONFIG flag sometimes has no effect.
It has no effect when the compiler doesn't support it.

Task-number: QTBUG-33952
Change-Id: I23b1fcdf4ec31924b1b59987846f7e0fbf17c6c9
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-10-09 13:52:58 +02:00
Tor Arne Vestbø
2043adf97c iOS: Generalize jumping event-dispatcher to handle QEventLoop:exec()
We already supported re-entering QApplication::exec(), so adding support
for handling a generalized QEventLoop::exec() was nothing more than
removing the qApplication->in_exec condition in processEvents() and
the QThreadData::current()->quitNow condition when interrupting the
event loop. Everything else is just renaming and rewording, now that
the feature is not specific to QApplication::exec().

This means dialogs such as QFileDialog opened in the main() function
will show something on screen, as we then fall back to the iOS root
run-loop handling, while at the same time supporting QApplication
exec once the dialog closes.

We still don't hadle recursive QEventLoop:exec() at the root level,
as that would require multiple stacks and detailed application
knowledge about when to create them.

Change-Id: I334a362d85796341a343ce82f3104ff5866bdc3f
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
2013-10-09 11:50:53 +02:00
Tor Arne Vestbø
54c5a79fd0 iOS: Handle qApp re-exec after application termination from iOS' side
If the user for some reason spins a new QApplication event loop after
an initial one has been exited as a result of the application being
terminated by iOS we need to prevent further event loops from starting.

Change-Id: Ief8a69cebacebd5be63a1aca87a2a1babc809879
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
2013-10-09 11:50:43 +02:00
Tor Arne Vestbø
dbecdb83dc iOS: Cleanup, remove unneeded Q_UNUSED
Change-Id: Ie7c03270279ee0b0b7daf7945b5eb6fd834c3404
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
2013-10-09 11:50:35 +02:00
Tor Arne Vestbø
6408bb6b45 iOS: Update Xcode check to include Xcode 5.0
Change-Id: Icfd3a47c8bac91e66625cbeb6dd9b56a0d5f5e79
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
2013-10-09 11:50:29 +02:00
Topi Reinio
d6b2608be1 Doc: Remove Plug & Paint plugins from the list of examples
These example projects are plugins that cannot be run
stand-alone. Remove them from the list of examples
in Qt Creator's Welcome mode.

Task-number: QTBUG-33889
Change-Id: I65b5b91a6c5b73616c10c91b7ab3f5bddbe6e6fe
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2013-10-09 11:01:35 +02:00
Shawn Rutledge
51c28cad67 xcb: every window should have a title in debug mode
Qt creates various invisible windows for internal purposes.
Giving them all titles makes the output of tools like
xprop and xwininfo more readable, which makes solving certain bugs
(like transient-window bugs) easier.

Task-number: QTBUG-33644
Change-Id: I9d37b40d3339fb0f81ffeae64949b88ecb655474
Reviewed-by: Uli Schlachter <psychon@znc.in>
Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
2013-10-09 08:19:26 +02:00
Oswald Buddenhagen
d3ba95f5c1 don't unnecessarily use qtgui
Change-Id: Ia4162d75ef6ebf87f36d40163d5ffc89eae64dc6
Reviewed-by: Mark Brand <mabrand@mabrand.nl>
2013-10-08 20:39:03 +02:00
Jerome Pasion
934fbfc6cf Doc: Added external page link to "The LLDB Debugger".
-needed by an overview in qtdoc

Change-Id: I25a9b1a68de60d2ba155dbba667f4ef8054e728f
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@digia.com>
2013-10-08 16:02:58 +02:00
Mitch Curtis
b14d761f49 Document c++11 CONFIG flag.
Task-number: QTBUG-33952
Change-Id: I752c85ba1a6d42d9794c18fb3f3198df50952c61
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
2013-10-08 16:02:10 +02:00
Andy Shaw
f0b950144d Ensure lastPixel.y is also initalized to -1 when necessary
Task-number: QTBUG-31579

Change-Id: Ia4916ac0d384ea523bbfad0dafbc90044da7ec3e
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
2013-10-08 15:51:13 +02:00
Kai Koehne
5db49141a5 Fix "Empty or null file name(s)" warning text
Remove '(s)' for methods taking only one path argument. The '(s)' has
been dropped in other places already ...

Change-Id: I9dc0d1cfa1e02f60bce901a309835f4bbfadde6d
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2013-10-08 09:18:24 +02:00
Lorn Potter
ef7284a148 Update ofono backend
The dbus interface has since changed, and I missed this when I updated.

Change-Id: Iea3363b276a92f4a97d1ddfbae572515abac9417
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
2013-10-08 04:30:32 +02:00
Thiago Macieira
583d05863e Reorder the members in QThreadData to avoid padding holes
Before this change, this struct had size 104 and a total of 21 padding
bytes. Now it's down to 88 bytes and only 5 bytes of padding.

pahole report on a 64-bit system:
    class QAtomicInt          _ref;                  /*     0     4 */
    /* XXX 4 bytes hole, try to pack */
public:
    class QThread *            thread;               /*     8     8 */
    HANDLE                     threadId;             /*    16     8 */
    bool                       quitNow;              /*    24     1 */
    /* XXX 3 bytes hole, try to pack */
    int                        loopLevel;            /*    28     4 */
    class QAtomicPointer<QAbstractEventDispatcher> eventDispatcher; /*    32     8 */
    class QStack<QEventLoop*> eventLoops;            /*    40     8 */
    /* --- cacheline 1 boundary (64 bytes) --- */
    class QPostEventList      postEventList;         /*    48    32 */
    bool                       canWait;              /*    80     1 */
    /* XXX 7 bytes hole, try to pack */
    class QVector<void*>      tls;                   /*    88     8 */
    bool                       isAdopted;            /*    96     1 */
    /* size: 104, cachelines: 2, members: 11 */
    /* sum members: 90, holes: 3, sum holes: 14 */
    /* padding: 7 */

Change-Id: I1fc88e0b312f38eccdea440734fd37e0519285a2
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
2013-10-08 02:45:16 +02:00
Jerome Pasion
4533cc9944 Doc: Adding mark-up to boolean default values.
Default values should have mark-up to denote that they are code.
This commit changes:
-"property is true" to "property is \c true".
-"Returns true" to "Returns \c true".
-"property is false" to "property is \c false".
-"returns true" to "returns \c true".
-"returns false" to "returns \c false".

src/3rdparty and non-documentation instances were ignored.

Task-number: QTBUG-33360
Change-Id: Ie87eaa57af947caa1230602b61c5c46292a4cf4e
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
2013-10-08 00:46:27 +02:00
Eskil Abrahamsen Blomfeldt
50dd0232b6 Android: Default to toolchain version 4.8 on Windows as well
The default has already been changed in the configure shell script,
but configure.exe needs the same change to be compatible with the
current NDK (which no longer contains the 4.7 toolchain)

Change-Id: Icd6474c3c9b9bbefbba5a1273a466c7ff099b7e0
Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
2013-10-07 22:54:14 +02:00
Oswald Buddenhagen
86163308e4 clarify intended operator precedence
Change-Id: I176bf225d4cb388f1d328ac140741fe32667e89c
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2013-10-07 21:01:31 +02:00
Oswald Buddenhagen
1627ddbbed add default branch to switch in platformToolSetVersion()
Change-Id: Icf399ffd7e41aca207ea3b4b08b9e3dead7c821a
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2013-10-07 21:01:31 +02:00
Oswald Buddenhagen
50a90720be make setting a bad $$[QMAKEFEATURES] not crash qmake
Task-number: QTBUG-29642
Change-Id: I9cc209eb313f03bf342bcb64b1de3005755700a7
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2013-10-07 21:01:31 +02:00
Sergio Ahumada
51c04e292e iOS: Skip qtconnectivity and qtlocation modules
These modules don't build for iOS or don't have a backend yet
Also organizing the list a bit while we are it.

Change-Id: Ic72e897325c9478f66af8e8f879fe6342eb327dc
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
2013-10-07 19:09:37 +02:00
Sebastian Schuberth
ac5f4a8e76 Allow to use short names for Windows Registry root keys
Change-Id: I58b7681bb49e93b7577bc559d754c81d3c6f007b
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2013-10-07 19:09:37 +02:00
Laszlo Agocs
cf092abdfc QPA: Fix event dispatcher dependent operations in platform integration
999e5162ec breaks QPlatformIntegration
implementations that perform tasks in their constructor that rely on
the event dispatcher. For example creating a QSocketNotifier is not
possible anymore since the event dispatcher is created later on.

This is fixed by introducing an additional virtual in
QPlatformIntegration that gets called after createEventDispatcher().

Two broken platform plugins have been identified so far: eglfs is
creating socket notifiers to read events from input devices and xcb's
input context plugins may use dbus. Both are updated accordingly.

Task-number: QTBUG-33768
Change-Id: I5badb623958a52ab5314ff93dd7d60061f5df70a
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
2013-10-07 19:09:37 +02:00
Kai Koehne
8a383c585f Require Windows Vista
The structure FDAP is only available as Windows Vista, and MinGW-w64
do not actually define it if _WIN32_WINNT isn't set.

Needed to fix compilation with latest MinGW-w64 headers (version 3).

Change-Id: I566ea6bd4c3d8d5a495b644aedffb7de42a6d6e4
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2013-10-07 17:07:35 +02:00
Kai Koehne
409526b8a6 Fix typo in define guards
Needed to fix compilation with latest Mingw-w64 headers (version 3)

Change-Id: I70c7ff3d833e15e99a915a2df83f04d03a968300
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2013-10-07 17:07:30 +02:00
Kai Koehne
55880e6c18 Remove default label for QtMsgType
Adding another category will most likely require a dedicated
handling anyway, so better let the compiler warn about it.

Change-Id: I323ca1250d82e33c086f1930e1df0a6337d6f16f
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2013-10-07 14:24:37 +02:00
Kai Koehne
4162522edd Improve QLoggingCategory documentation
Change-Id: I142e954cc3622643d80b8efd3b1d659c11d4e239
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
2013-10-07 14:24:32 +02:00
Andy Shaw
b1bd4021f3 Fallback to the original application font handling
When Qt is built for 10.8 but then used on a machine before 10.8 then
it was not falling back correctly when an application font was added.

Change-Id: I0f05226cdbcfa36621bb1b3aa2f2cd60e714dfdf
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
2013-10-07 14:00:57 +02:00
Andy Shaw
2cfca47d56 Fix QScreen::grabWindow for multiple screens on Mac
QScreen::grabWindow() would only with the primary screen on Mac, if you
tried to grab a secondary one then it would end up with a blank pixmap.

Change-Id: I24f604051835db96286c693f5ed60a2633b6528e
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
2013-10-07 13:57:46 +02:00
Marc Mutz
ae4c7be67d QCommandLineOption: declare as shared
QCommandLineOptions are held in a QList in QCommandLineParser,
so they better be declared movable, which is one of the things
Q_DECLARE_SHARED enables.

Change-Id: I75c8185534b4e9c1ea4417a9507095c8a6512aab
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
2013-10-07 01:08:09 +02:00
Ivan Romanov
6bbaeefb90 Fix typos of QWheelEvent example
Just fixed typos with event and numPixels.

Change-Id: I8191d7e812ae9d3975a142d198d709d4f9f85b7f
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-10-07 01:08:09 +02:00
Stephen Kelly
d5e62f8169 Output the CMAKE_CXX_LIBRARY_ARCHITECTURE when reporting missing dependencies.
Change-Id: I5d2d53b9899636dee9f30ab179727de82b78afd5
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
2013-10-06 23:13:55 +02:00
hjk
32f27b4367 Replace QLoggingCategory::isEnabled by non-template functions
This yields the same results as previously and is more in line
with existing interfaces.

Change-Id: I0bf0372bf18f3bfde579385cddbe594bf71e3c52
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
2013-10-06 19:47:31 +02:00
Sebastian Schuberth
09a11069e7 Improve the QWinSettingsPrivate constructor's performance
This is mainly achieved by modifying the program flow to require
fewer string comparisons and conversions.

Change-Id: I9887623b9c05fe76460fc725d6534d16bd9f9e59
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2013-10-06 13:50:19 +02:00
Sze Howe Koh
dc6852ca63 Doc: Expand on thread synchronization details
- Introduce the concept of "mutual exclusion"
- Rewrite/add explanations on how synchronization happens and how to
  use these tools
- Remove similar content from the "Thread Basics" page
- Fix links to examples

Change-Id: Id008a8fc3f68bf242cae1704c5c8318149d908b4
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
2013-10-06 01:08:58 +02:00
Sze Howe Koh
370b642092 Doc: Generalize problems and solutions of mutex use
These apply to other locks too, not just mutexes.

Move from "Thread Basics" to "Synchronizing Threads"

Change-Id: I6d7051cb225a8c836fb591a28b65d3de8fab4083
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
2013-10-06 01:08:36 +02:00
Sze Howe Koh
2524cafc8e Doc: Remove convoluted details of uncommon QMutex use case
Change-Id: If80068f44fef7ab0692b9dad99aa7e1a30cb72a6
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
2013-10-06 01:08:27 +02:00
Sze Howe Koh
a15bc0e714 Doc: Show both low- and high-level thread syncing on the same page
Move text from "Thread Basics" to "Synchronizing Threads" for a more
complete overview.

Change-Id: Ib87259ed551fa77278b57c5922df7f4b774a829a
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
2013-10-06 01:08:11 +02:00
Sze Howe Koh
525712b75e Doc: Rewrite section on threaded event loops
- Focus on signals instead of events; programs rarely need to call
  QCoreApplication::postEvent() manually
- Mention QMetaMethod::invokeMethod()
- Reduce verbosity

Change-Id: I170b96bd0134c0bc102ef1a344d4f0b88e504f86
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
2013-10-06 01:08:01 +02:00
Sze Howe Koh
3b45dfe6e6 Doc: Discuss the concept of thread affinity in more detail
- Create a section dedicated to this concept, which is fundamental to
  signal/event handling
- Move relevant content from the very broad "Thread Basics" page to the
  QObject class ref
- Flesh out existing content, including distinguishing signals from
  events
- Address the common misconception that "member" = "child"; this has
  been encountered several times in the Qt Project forums

Change-Id: I5e7e6c848596e72c0bb623f8442c8389b81ad9ef
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
2013-10-06 01:07:52 +02:00
Frederik Gladhorn
4e337ee703 Add Q_DECL_OVERRIDE to accessibility classes
This actually shows two completely unused functions in QAccessibleTabBar
(fixed in follow up patch).

Change-Id: If6f464c022617b2ee1db654936e3ff9931103eb6
Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
2013-10-05 12:19:02 +02:00
Marc Mutz
0206c1e4e7 QtConcurrent: remove a using declaration in a header file
See Sutter/Alexandrescu, Item 59, for rationale.

Change-Id: Ie689e2a00f9ed0fce1ccfdb77c943dd1b1beb4dc
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
2013-10-05 00:25:26 +02:00