Commit Graph

15504 Commits

Author SHA1 Message Date
Stephen Kelly
786b278f91 Generate source includes in a separate file, if needed.
The source includes shouldn't be used by installations, so
don't install the extra file, but only use it if the package
is used from the build-dir.

Task-number: QTBUG-33970

Change-Id: I08f91b8a716e935cb04d1233d44cf5c092e240ce
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
2013-10-16 15:30:13 +02:00
Stephen Kelly
e29b35024e Don't test DLLDESTDIR when calculating dll location.
The DLLDESTDIR is not related to the install location and is not
populated for prefix_build configurations.

That resulted in the CMake files attempting to find the dlls in the lib/
directory instead of the bin/ directory.

Change-Id: Iec6a7c9b6dd656278b70ab128f3df9e8c45bbe4a
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2013-10-16 15:30:08 +02:00
BogDan Vatra
5f47ce0951 Remove unused include
Change-Id: I77bd22b3e0314686450343c5a52914d7f97298d3
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
2013-10-16 15:29:24 +02:00
Andy Shaw
1f01ac8323 Restore handling of bullets for lists with a font size of > 36 pixels
This patch partially reverts ad443dfb1d,
the test that was added is still there as it can be used to compare
against Chrome and to check that indenting works correctly.

The original behavior of clipping the bullets is correct because the
specified indent is where the text itself should be positioned, the bullet
uses the available space to the side of it. This is how other web browsers
handle the same situation.

Change-Id: I63440e037d8efec356459c09228ef4817ccb9cb6
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
2013-10-16 10:32:47 +02:00
Paul Olav Tvete
d4d96c375d Android: don't set autorepeat to true by default
When we don't know if a key event is caused by autorepeat, then
the safest assumption is that it is not.

Task-number: QTBUG-30793
Change-Id: Iea6aba164e299f0f2c772547b45df6a49639b7e9
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
Reviewed-by: BogDan Vatra <bogdan@kde.org>
2013-10-16 10:32:47 +02:00
Eskil Abrahamsen Blomfeldt
f1b46a5ee0 Android: Add test script based on androiddeployqt
There are a few problems with the Quadruplor setup in Qt 5.
First of all, it doesn't work with modules, since it has
a hard coded library dependency list. Second of all, it
duplicates the application template, so changes need to also
be duplicated. This often gets out of sync. Third of all,
it duplicates a lot of deployment rules which are now contained
in androiddeployqt.

Task-number: QTBUG-33996
Change-Id: I0630a38aeba7d0075df8fae671abc311fc36de61
Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
2013-10-16 08:39:57 +02:00
Eskil Abrahamsen Blomfeldt
4be5d58203 Android: Make it possible to pass arguments via intent extras
Needed for autotest script, so that we can pass command line
arguments to Qt Test.

This can now be done by:

% adb shell am start \
            -e applicationArguments "argument1 argument2" \
            <INTENT>

Change-Id: I772209f66da055c6a0b01b709f36e33fdb5c2ed6
Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
Reviewed-by: BogDan Vatra <bogdan@kde.org>
2013-10-16 08:39:52 +02:00
Eskil Abrahamsen Blomfeldt
5c64847ba3 Android: Build autotest service against android-10
No need to default to yet another SDK here. This is a left-over
from Necessitas, which supports versions down to android-4.

Change-Id: I2e79be641288c14f92c205b30f2db6db793d783f
Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
2013-10-16 08:39:48 +02:00
Sze Howe Koh
fd82caf44f Doc: Expand thread technology comparisons
Additions/Changes:
- Add QML's WorkerScript type
- Add QFuture + QFutureWatcher
- Clarify differences between QtConcurrent::run() and the map/filter/
  reduce functions
- Reword table headings
- QThreadPool accepts a priority parameter too (although it's not OS-
  level, unlike QThread)

Rows removed from the table:
- QThread can be "reused" and "task oriented" too, depending on the
  program design. It's hard to convey this in a table though, so I just
  removed it.
- "High level" is ambiguous and doesn't really help readers choose a
  tool to use.

Task-number: QTBUG-33360
Change-Id: Idc5100eaf09033998c155572d44c6c0ad0ba9ef6
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-10-16 04:13:32 +02:00
Matt Hoosier
6e4ea62b0a Fix wide-char use in Posix collator
Although the C++ language builds in the 'wchar_t' datatype, the
library functions such as wcscmp() which manipulate them are not
automatically available. For these, inclusion of the <cwhar> header
is still required.

This changeset fixes build breakage observed from failure to include
the requisite system header for accessing wcscmp() and other related
functions on non-GNU standard C++ library implementations.

Change-Id: I5b2f9148ea011004e5dd00cf41698339db172de8
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-10-16 02:21:23 +02:00
Thiago Macieira
6c5e6a030d Fix loading of libresolv when the .so file (not .so.2) isn't installed
glibc is nice to us and provides a #define with the actual name. On most
Linux systems, the .so file is installed only if the glibc-devel package
is installed. For all of us Qt developers, it's installed. But for end
users, it might not be.

Change-Id: Id455371db91a074befd3bcd071f285c725d7e7e5
Reviewed-by: Ian Monroe <imonroe@kde.org>
Reviewed-by: Richard J. Moore <rich@kde.org>
2013-10-16 00:01:05 +02:00
Thiago Macieira
704616605b Remove compatibility support for sealed/override in C++/CLI
Those features have slightly different behavior as the C++11 keywords
that MSVC 2012 officially supports. When compiling in C++/CLI mode,
the "virtual" keyword must be present too.

We have not actually tested whether the official MSVC 2012 support for
C++/CLI still requires the virtual keyword. This is just going on the
assumption that C++/CLI follows the C++11 spec.

Task-number: QTBUG-34019
Change-Id: I148a443bfbff985033c555f5a9cfcd5be7f5f106
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2013-10-15 23:58:46 +02:00
Thiago Macieira
74f2a1bd47 Fix the printing of qmake's output when OPT_VERBOSE=yes
Don't discard stdout, it might contain important information. For
example, if qmake crashes, the segfault or similar notification comes
to stdout.

Change-Id: I53def75f37f134544922cf01b4f2ba7c903351cb
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2013-10-15 23:58:15 +02:00
Thiago Macieira
6cdc033c61 Use the fast operator+ (in the form of operator%)
QStringBuilder will precalculate the size of the string for us, which
avoids extra realloc() and moving data around.

Change-Id: I4e31964bb9bfffbe2083b3cb8c120e602160dfd8
Reviewed-by: David Faure <david.faure@kdab.com>
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@digia.com>
Reviewed-by: Kevin Ottens <kevin.ottens@kdab.com>
2013-10-15 23:58:09 +02:00
John Layt
688b006cc8 QTimeZone - Fix finding Linux System Time Zone
Extract the correct length sub-string from the /etc/sysconfig/clock file

Change-Id: I37b4f625a51b172ed11ecefbd1b7dc562c5bb89d
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-10-15 23:58:00 +02:00
Shawn Rutledge
0a19ee0aea set the title of the user time window not the application window
51c28cad67 resulted in setting the title
of the wrong window.

Task-number: QTBUG-34048
Change-Id: Ia22d563e0ba9b0e074ef79ae5169c1627369c70d
Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
2013-10-15 20:19:23 +02:00
Laszlo Agocs
b7d2882715 linuxfb: Do not crash with GL windows
We will show an error message saying no platform context is available
but the crash (due to GL windows having a null backingstore) is not
desirable.

Change-Id: Iba3a61bfc4eeeb89b4a0017a58c87a7dbd0895e7
Reviewed-by: Andy Nichols <andy.nichols@digia.com>
2013-10-15 20:18:20 +02:00
Simon Hausmann
557fe401ac Clean up support library linkage on Android
* The explicitly linked support libraries like gnustl_shared, etc. can be
  linked as private libs, there's no need for them to show up in the .prl files of our libraries.
* Removed the explicit linkage against libsupc++, which is a static library whos symbols
  are also available in libgnustl_shared. It is only needed when linking against gnustl_static,
  which we fortunately don't do.

For QtQml on Android this is more than just cleanup. Without the first change, the libgnustl_shared
comes early on in the link line, because it is a dependency of for example Qt5Network. Anything that
qml.pro itself adds to LIBS comes afterwards. That is not intended, we want libgnustl_shared to come
at the end of the link line, in order to make sure that the linker finds an overriding symbol from
another library earlier in the link line first.

The explicit linkage against libsupc++ affects the same, as that's the library
that contains the symbol we want to override locally (__cxa_end_cleanup).

(needed for QTBUG-33892)

Change-Id: Id6dff733d6610ae8b15aa72f9cf60ae2c7834194
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
Reviewed-by: BogDan Vatra <bogdan@kde.org>
2013-10-15 20:17:50 +02:00
Jerome Pasion
b5d01a9dfc Doc: Adding "\keyword Signals and Slots" to "Signals & Slots" page.
-many articles link to the page using the "and" or the "&"
version, causing missing links.

Change-Id: I6447149befce169cfafff29164172290a7c15f0c
Reviewed-by: Sze Howe Koh <szehowe.koh@gmail.com>
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@digia.com>
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
2013-10-15 18:22:10 +02:00
Friedemann Kleint
8178a6cab1 Add missing operators QMargins -=,+= (int).
Task-number: QTBUG-34079

Change-Id: If61cc01ba70345b01f13072769d3a38f23e8cefc
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-10-15 18:20:37 +02:00
Tasuku Suzuki
a3a1bd755f Fix build when fwrite() is declared with attribute warn_unused_result
Task-number: QTBUG-33921
Change-Id: I58dded1f54239e4c5cfd5f4f5c1655dbf879b2c8
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-10-15 17:53:32 +02:00
Laszlo Agocs
52c8d9ffba linuxfb: Adapt to initialize() pattern
Migrate to the new 5.2 pattern: Prevent relying on the event
dispatcher in the constructor by performing initialization later
in initialize() instead.

Change-Id: Ifa6024affc35e995d6e33a63fa813da9df0c491b
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
2013-10-15 13:17:48 +02:00
Kai Koehne
0008a6f400 Fix compilation of ANGLE on MinGW
This broke with commit  89f9bc9c5f.

Task-number: QTBUG-34080
Change-Id: Ib3c7a3c90db7dc04f417eba4c1328390f45e5e5f
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2013-10-15 13:13:30 +02:00
Kai Koehne
dd2e1c58a7 Document %{category} for qSetMessagePattern
Change-Id: Ib6ad515ce4ba27d501538ba45fd65e60ce5332df
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-10-15 13:13:23 +02:00
Kai Koehne
816e7f11f1 Avoid other threads blocking for Q_GLOBAL_STATIC constructor on Mac
The compiler inserts __cxa_guard_acquire, __cxa_guard_release calls around
the initialization of local static objects to make the initialization
thread safe. However, the implementation of _cxa_guard_acquire in Apple's
libc++abi uses a global lock, which means that only one thread can
initialize a local static variable at a time. This can be a problem if
e.g. the constructor of the variable is blocking while waiting for another
thread ...

This behavior has caused issues so far in webkit and the qml debugging
infrastructure. Better avoid it by using our custom lock implementation.

__cxa_guard_acquire implementation:
http://www.opensource.apple.com/source/libcppabi/libcppabi-24.2/src/cxa_guard.cxx

Task-number: QTBUG-33967
Change-Id: I0d50531ed91ddd074aa07f61f6bf7791e23d990b
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-10-15 13:13:14 +02:00
Andy Shaw
89c01c3242 Only emit messageChanged() if the message has actually changed
This fixes QStatusBar so it is back to the original behavior of only
emitting the signal when the message has changed. The intention of the
code that caused this to break in the first place is kept intact.

Change-Id: I2f57c2abec01246ed924626ad954ac9ff9889855
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2013-10-15 13:01:59 +02:00
Jan Arve Saether
4684f2179b Change return type of imagePosition to QPoint
QAccessibleImageInterface already has an API to return the
size of the image.

This function ensures that their API's are not overlapping.

Alternatively, we could merge both functions into
QAccessibleImageInterface::imageRect(), but the assumption is that
images change position more often than their size.

Change-Id: I55c25cdff187b9f497828f04cfd5f969cfbc451f
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
2013-10-15 12:42:17 +02:00
Richard J. Moore
23833629fa Update changelog for QtNetwork 5.2.
Change-Id: I3d6c416cd3213282224ea9251a5506b1f0713b24
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Reviewed-by: Sergio Ahumada <sergio.ahumada@digia.com>
2013-10-15 12:37:29 +02:00
Frederik Gladhorn
52d0f9b1e4 Remove stray semicolon
Change-Id: I6f2d6df5eac2ce66bf2140c2e96c8945cdb439ef
Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
2013-10-15 12:34:18 +02:00
Morten Johan Sørvig
c1417023d5 Correct PrefixPath on iOS.
The iOS bundles are "flat", do not insert "/Contents/"
like we do on OS X.

Change-Id: I4e848f4425482b92cac04d940e5bce06b7199fc6
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
2013-10-15 12:34:14 +02:00
Allan Sandfeld Jensen
b8da27bc90 Update keycode mappings of multimedia keys
Updates keycode mappings for evdev, directfb and android.

Change-Id: I6789f13dbb662da4261a3c947757644e12306dd9
Reviewed-by: BogDan Vatra <bogdan@kde.org>
2013-10-15 12:26:48 +02:00
Mark Brand
407ac121b9 configure: gif driver is always bundled code, so say so
Change-Id: Ibd228cc63b1f4feb6364e052daa239be14253ec0
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-10-15 12:16:26 +02:00
Thorbjørn Martsum
5482881b8a QMap - improve docs a bit (mainly by adding more time complexities)
Change-Id: I8a361ef09c338bbba228fd774b2bfd938869adc5
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-10-15 12:10:09 +02:00
Thorbjørn Martsum
499957eb8b Improve implicit shared documentation a bit
Task-number: QTBUG-27061

Change-Id: I66e000a9f59fda3654066013e6e78c3ba6fd27fe
Reviewed-by: Mitch Curtis <mitch.curtis@digia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-10-15 12:10:01 +02:00
Thorbjørn Martsum
cfb717d654 QList - fix a few doc issues
Though some of it was mensioned in the introduction to the class,
we are not in O(1) if we modify a shared container.

Change-Id: If63b4cb4bdfc98d6b1333bae307e5650341e5484
Reviewed-by: Sze Howe Koh <szehowe.koh@gmail.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-10-15 12:09:55 +02:00
Shawn Rutledge
37ca2224ec QFileDialog: don't create widgets if the platform dialog will be used
This is a performance and memory optimization which also fixes bugs
that are related to creating widgets, file system models etc.
despite using platform native dialogs.  Similar to
785bc64f8e for QColorDialog.

Task-number: QTBUG-33039
Change-Id: Ia1aa7ec1f43b47006b9ebd377aed15c958538a17
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2013-10-15 08:14:48 +02:00
Andy Shaw
5c301f4121 Account for QPolygonF type when loading/saving the QVariant
When the QPolygonF type was added to QMetaType it did not bump up the
values in load() and save() for QVariant.

Task-number: QTBUG-33981

Change-Id: I7ad99cda70620c5449c15527c3daf920972d047f
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@digia.com>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
2013-10-15 08:14:48 +02:00
Simo Fält
cd13fe44cd Skip tst_QGraphicsItem::paint() on Mac OS X 10.7
The test is randomly failing on CI when ran on 10.7.

Task-number: QTBUG-31454
Change-Id: I79fce9a37616c6abaee960e338f8eea8fe6f31cf
Reviewed-by: Jani Heikkinen <jani.heikkinen@digia.com>
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
2013-10-15 06:20:01 +02:00
Laszlo Papp
fe1cbe9ca7 Add qWarning when trying to read or write a closed device
Change-Id: Ifda057d122a30d88749c6401185457f1900a913b
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Richard J. Moore <rich@kde.org>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-10-15 04:29:19 +02:00
Harri Porten
2c7ad71adb Fixed narrowing conversion compile error with SwizzleValue cast.
I got the following compile error with gcc 4.7.0:

  error: narrowing conversion of ‘r’ from ‘QOpenGLTexture::SwizzleValue’ to
  ‘GLint {aka int}’ inside { } [-Werror=narrowing]

The compiler must being going through the route of treating the enum
as an unsigned int and thus choking on the conversion to a signed int.

Change-Id: I35c15673d0371c69984bdec80622066f792527ba
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-10-15 00:06:54 +02:00
Friedemann Kleint
4c8f194ade Fix synqt-warnings in QTestLib.
QtTest: WARNING: qtestmouse.h includes QDebug when it should
include QtCore/QDebug. Introduced by
c210668346 .

Change-Id: I33918c82fddeedef90597bf02c93167348d6b279
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
2013-10-14 17:30:14 +02:00
Friedemann Kleint
12b68ed072 Stabilize tst_qmenu on Mac.
Position cursor outside and move once more.

Task-number: QTBUG-33972

Change-Id: If060f1359361981cf1243d8d2a4ebef181689d74
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
2013-10-14 17:29:37 +02:00
Tor Arne Vestbø
535e356749 iOS: Remove check for unknown Xcode versions
We assume new Xcode versions and toolchains won't break anything, just
like for toolchains on other platforms.

Change-Id: Idb723dbcdbc82e85db1c55b19cd5fe863ca90933
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
2013-10-14 17:28:54 +02:00
Tor Arne Vestbø
401510dbbe iOS: Move qmake features out of the generic features and into the makespec
As they are closely tied to the macx-ios-clang mkspec and can't be shared.

Change-Id: Icb59304cc1e4be12732f50175f3f84be289300c2
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
2013-10-14 17:28:48 +02:00
Arthur Krebsbach
17ebcd2b46 Windows: Fix tablet position in relative (mouse) mode.
When in "mouse" or "relative" mode with the pen position information
would not be calculated correctly resulting in a significant offset
between the tablet pen location and the mouse cursor location. Logic
was added to detect when the two were not in sync and use the mouse
location when this happens.

Change-Id: Icb7129e8cce186c0099953769e215649d9347c8e
Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
2013-10-14 15:05:55 +02:00
Frederik Gladhorn
f86ffab402 Accessibility: simplify dockwidget accessible
This patch merges the two classes that were used to make
dock widgets accessible into one.
The title bar does not need to be represented by its own
accessible object.

In addition the buttons on the toolbar are now labelled.

Task-number: QTBUG-33946
Change-Id: Id90d8c09f15ed683e64dbe3f6ac55bca7a0b300f
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
2013-10-14 15:00:15 +02:00
Gunnar Sletta
9ebd76b021 Avoid calling convertFromGLImage on a null image.
Task-number: QTBUG-34017

Change-Id: If51ef4b1f906677e26d14b5a92799097d18ac437
Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
2013-10-14 14:58:00 +02:00
Laszlo Agocs
4ba1072f3f linuxfb: Make the mouse cursor visible and working
Change-Id: I58bae7235ae714da551da1337ee6340fc712aaa5
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
2013-10-14 12:08:12 +02:00
Laszlo Agocs
a662d42125 linuxfb: Pick the correct framebuffer device on Android
Try also /dev/graphics/fb0 in addition to /dev/fb0.

Change-Id: I9c7682af0c92ebdca806b7c9f60c67d4a732ff41
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
2013-10-14 12:08:08 +02:00
Laszlo Agocs
99b20ce0b9 Update QPA cursor only for non-synthetic mouse events
Unhandled touch events cause QGuiApplication to generate synthetic
mouse event by default. This is good but on embedded systems, where
there is no windowing system and thus the platform cursor
implementation relies solely on QGuiApplication pushing position
updates via pointerEvent(), this causes odd behavior when there is
both a touchscreen and a mouse present.

The patch changes QGuiApplication to call pointerEvent() only when the
event is not synthetic. This will prevent the mouse cursor from
jumping to the position of the touch when using the touchscreen. It is
needed also because moving the mouse later would make the cursor jump
back to its previous, "real" mouse position anyhow which is extremely
annoying. This is now avoided.

Change-Id: I807a173bff7e2afa7eb66961a7ecc88b2c0430ca
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
2013-10-14 12:08:00 +02:00