Commit Graph

12995 Commits

Author SHA1 Message Date
Stephen Kelly
adcc9a196a Move the Preprocessor loop macros up with the others.
Change-Id: Iec9a6ab7cbd12902f8aeacdde9987ca52e2e2391
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@digia.com>
2013-04-05 16:52:09 +02:00
Jędrzej Nowacki
d562119ff2 Add new option to qdoc.
The -redirect-documentation-to-dev-null option allows to get all qdoc
errors, without creating full documentation. It significantly reduces
amount IO operations.

Change-Id: I80fb6f9e304eb106f1c1d1e6320a1b38d788f6fc
Reviewed-by: Martin Smith <martin.smith@digia.com>
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
2013-04-05 16:23:38 +02:00
Marc Mutz
e3e42322c0 Add some easy move constructors
These are easy, since they can be inline. Most types that would
benefit from move constructors can't have inline move constructors
because these types use smart pointers whose destructor is invoked
in the type's move constructor. Implementing move constructors
out-of-line would break binary compatibility between C++98 and C++11
builds of Qt and its users, so that is not attempted here.

Change-Id: I7f14437c2069cce54c498c7858f4e9060ff05e7b
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
2013-04-05 13:29:43 +02:00
Peter Hartmann
f4714459a8 QTcpSocket bind() auto test: return instead of QSKIP
... because SkipSingle was removed in Qt5, and a QSKIP would result in
the SSL tests not being executed.
This can be reverted once QTBUG-29972 is fixed.

Change-Id: I3663ee52f00c3f4391ce78cf63bd444656d79cb3
Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
2013-04-05 10:56:43 +02:00
Liang Qi
c5f4b5ee4e Widgets: Make QFontComboBox locale sensitive
Return correct writing system based on QLocale::uiLanguages() or
system locale.

Task-number: QTBUG-1573
Change-Id: Ia574b3772fd4d9b01bef47338498e875bf9d6aac
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
2013-04-05 02:15:59 +02:00
Frederik Gladhorn
4b069486cb Merge "Merge remote-tracking branch 'origin/stable' into dev" into refs/staging/dev 2013-04-04 14:45:28 +02:00
Jan Arve Saether
9d7ae6dfbe Fixed a bug where the MaximumSizeHint of a layout with spans was wrong
This was spotted while tracking down a similar bug related to spans.
This now also eliminates the Q_EXPECT_FAILs in
heightForWidthWithSpanning(), since it now finally works.

The problem was only for the maximum size, since the size of an ignored
row/column was min: 0, pref: 0, max: FLT_MAX (the default constructed
values for a QGridLayoutBox).

Change-Id: Ibb33c26ede40ed02edd26f596ba6133d59c9962f
Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
2013-04-04 14:23:04 +02:00
Andreas Holzammer
0f532b29bb [QNX]Add an option to not run fullscreen
Add commandline option to set the default for
fullscreen option.

Change-Id: Ieaf2be3858082fb0e572c8fbaabfd38a698f14f6
Reviewed-by: Frank Osterfeld <frank.osterfeld@kdab.com>
Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com>
2013-04-04 10:41:03 +02:00
Tor Arne Vestbø
182d6292ce iOS: Enable NEON optimizations, except for the pixman draw-helpers
We used to disable NEON completely, as the iOS toolchain does not
handle the GAS syntax of the pixman draw-helpers. But we can limit
the disabling to just the draw-helpers, which means we get NEON
optimization of eg. QImage and QString.

Change-Id: If350b06ce521cca8b24468be5a168ff21e9e7124
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
2013-04-04 06:13:16 +02:00
Jan Arve Saether
4f072e2d3d Fixed a bug where spans across empty cells got broken.
If a row/column is only used only because of the spanning of an item,
the cell should be treated as it didn't exist. We keep track of this
with the "ignore" bit array.

The old code would always start from the row/column at position 1.
In the attached testcase this made the effectiveRowSpan become larger
than actually needed.

Task-number: QTBUG-30255

Change-Id: Ief0e7018ee8e5ee36272ce075a43312ffeac7b91
Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
2013-04-03 14:52:25 +02:00
Frederik Gladhorn
814f713f01 Merge remote-tracking branch 'origin/stable' into dev
Change-Id: Id96d4076610366a7cc66c8d8382ca25c33eaa71d
2013-04-03 14:40:26 +02:00
Marc Mutz
52ebf1f191 With GCC, use __builtin_popcount{,l,ll} for qPopulationCount()
Change-Id: Ied7a98fa17404f1d9678bfbc1ced4817ab52f40e
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
2013-04-03 11:38:35 +02:00
Marc Mutz
76e0223619 Add qPopulationCount() function, extracted from QBitArray
This functionality is used in multiple places in Qt itself, so it makes
sense to have a global function for this. This also allows to map this
onto specialized assembler instructions, should an architecture provide
them, later on.

Also added comprehensive tests, using a 4-bit lookup-table implementation
as a reference.

Change-Id: I8c4ea72cce54506ebb9fbe61141dbb5f1b7a660f
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
2013-04-03 11:38:35 +02:00
Jan Arve Saether
6e7b8f79cb Fixed a typo in the comment.
The orientations involved here can be easy to mix up,
so don't make it more confusing.

Change-Id: I73c4765ebbc89feced12898ac6001eb68db0e21c
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
2013-04-03 11:38:35 +02:00
BogDan Vatra
448c3e85dd Fix Qt tests for Android.
Change-Id: I53856056a00684a9a37596a74b79f46d3b47331f
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
2013-04-03 10:15:40 +02:00
BogDan Vatra
b02b6172a2 Also version.xml needs to be installed
This file is used by QtCreator to decide if the java files
need to be updated.

Change-Id: Ib4875c32a071dd768f89950582c81ccdd420feca
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
2013-04-03 10:15:40 +02:00
Richard Moe Gustavsen
85ea2c0299 ApplicationState: Add new event class: ApplicationStateChangeEvent
This patch will follow up on e27ca37 (add more state to
QT::ApplicationState), and add a new event class
QApplicationStateChangeEvent with type Qt::ApplicationStateChange.

Change-Id: Idee724f181f1fbb2321ddad7e0df00c88b3488b1
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
2013-04-03 10:15:40 +02:00
Martin Smith
15fca980e9 qdoc: Use Q_QDOC in quuid.h to help qdoc
Some new ctor initializers were added that use
curly braces. qdoc's dumb C++ parser can't handle
curly braces in the ctor area; it thinks they are
the body of the function. In this update, the
Q_QDOC macro is used to isolate these problems
so qdoc doesn't have to deal with them.

Task-number: QTBUG-30254
Change-Id: Ie318e4ac58861f4ebd8a7b9f004d2677f850436e
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
2013-04-03 10:15:40 +02:00
jian liang
7dc622290b Make sure QThreadData and QAdoptedThread object is destroyed at app exit
Task-number: QTBUG-30134

Restore the lines in qcoreapplication.cpp removed by commit
950b35cf97 to ensure QThreadData and
QAdoptedThread object of main thread is destroyed at application exit.
We don't set QCoreApplicationPriavte::theMainThread to 0 as before since
it will be set to zero in QThreadData::~QThreadData()

Change-Id: I8ee56aff5a933ce1d812b07fb00a29ed0839ab6e
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-04-03 10:15:40 +02:00
Bernd Weimer
d20851f8ec Avoid socket notifiers on invalid file descriptors
There is potential trouble and no point in registering a QSocketNotifier
on an invalid file descriptor. This is prevented now in addition to the
existing warning.

Change-Id: I6fc3c639b167ea98d09a2738986360cc4b3fc210
Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-04-03 09:25:22 +02:00
Topi Reinio
0c7e6ac083 Doc: Fix the documentation for QWindow::focusObjectChanged()
Fix the documented function signature to match the declared one.

Task-number: QTBUG-30398
Change-Id: I0d4894e2597f70e29a3edd4ceda91a4dddb9941e
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
2013-04-03 07:27:00 +02:00
Thorbjørn Lund Martsum
01b4b7f917 GraphicsView - add Q_DECL_OVERRIDE to the manual rubber band test
This adds Q_DECL_OVERRIDE to the virtual functions in the test.

Change-Id: If1b7646c9a6f50c6efe2d03d253bd8e0b4c09716
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Reviewed-by: Laszlo Papp <lpapp@kde.org>
2013-04-03 07:00:12 +02:00
Robin Burchell
6060716066 Correct location of mtdev define.
evdevtouch moved to platform support, so the location in the plugin is now wrong
(as was the file name)

Change-Id: I976f5d7ee68f5da5ed1f61773b3d5da683e12c6f
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
2013-04-03 00:37:48 +02:00
Oswald Buddenhagen
26825e2141 make bootstrapping of qdoc optional
the weird QLibraryInfo dependency is gone.

Change-Id: Iebaa5af6bc529999a2415b2ce3d2a5dca362dd5a
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-04-03 00:37:48 +02:00
Oswald Buddenhagen
a84af7425c add qcryptographichash to bootstrap lib
needed to make qdoc bootstrapping optional

Change-Id: Ie630d129ed038fd90078197588a6df723eddf553
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-04-03 00:37:48 +02:00
Ray Donnelly
7b92a84f03 Android: Portability fix for java usage on Windows.
Change-Id: Ic72957e21b2edc92d2ca8d99099f221ffeeb8c95
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2013-04-03 00:37:48 +02:00
Ray Donnelly
f4db48c232 Android: Enable configuring via configureapp for Windows.
Change-Id: If8f27f54d4d79c3530f51edafe7f8f42d685bc47
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
2013-04-03 00:37:48 +02:00
Ray Donnelly
b8c355bad2 Android: Enable the java feature on Windows.
There is a bug in dx.bat in the Google Android SDK tool where
relative paths do not work correctly. We need to use our own
version of this tool until:
https://android-review.googlesource.com/#/c/52680/
..is merged.

Change-Id: I451a3239590919d014a673f3e8e17244e96676ab
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2013-04-03 00:37:48 +02:00
Ray Donnelly
ff58c27347 Android on Windows: Add 2 missing qmake variables.
In order to build Android Qt on Windows via
cmd.exe using the unix makefile generator,
mkspecs/common/shell-win32.conf needs
QMAKE_SYMBOLIC_LINK and QMAKE_LN_SHLIB

Change-Id: I1b3eded66cec06ab131f127c1d46b99124613561
Reviewed-by: Laszlo Papp <lpapp@kde.org>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2013-04-03 00:37:48 +02:00
Konstantin Ritt
731f2a179b QTextCharFormat::setFont(): Preserve the font hinting preference
Task-number: QTBUG-22653

Change-Id: I9153486ff7793ba4427b64459896ab1328d51548
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
2013-04-02 22:29:10 +02:00
Konstantin Ritt
ef05a7d64f Apply Qt-specific changes to the bundled FreeType
Change-Id: Ia2e737b513f542c702f24986ec9fcb24b5631e36
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2013-04-02 22:28:58 +02:00
Konstantin Ritt
32983c2027 Improve QTextEngine::elidedText() in TextShowMnemonic mode
Check if the sequence is really a mnemonic and emulate grapheme cluster if so,
rather than blindly reset the next character's attributes.
This covers cases like "& ", "&<U+034F>", etc.

Change-Id: Ibb063a2d258aff6455b9bb41bbe1a58a5036d0d6
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
2013-04-02 22:23:28 +02:00
Andy Shaw
406c8ef6e6 Move the dbmstype to QSqlDriverPrivate so it can be used for all drivers
By moving it to QSqlDriverPrivate we make it easier to check what
database is actually connected which is particularly useful for the
autotests.

Change-Id: I54d1c2c998919c1d54efb1b6ac9303070ece54aa
Reviewed-by: Mark Brand <mabrand@mabrand.nl>
2013-04-02 19:02:26 +02:00
Thiago Macieira
dcf9c403ba Use Bionic's __pthread_cond_timedwait_relative
The Linux futex interface uses relative timeouts anyway, so this avoids
a double round-trip through clock_gettime: once in Qt code to calculate
absolute from relative and once in libc for reversing.

Glibc does not offer such a function because its pthread_cond objects
use a kernel interface that works on absolute times.

Change-Id: I8fbcd3f73d4364a16716b0eea17e8f5f9ab5cd05
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-04-02 19:01:32 +02:00
Thiago Macieira
2fbe972a65 Add a function to do the relative waits, simplifying the code a little
More to come.

Change-Id: I108f23e94c322ad4e1466ff69100ad6af91d95e9
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
2013-04-02 19:01:27 +02:00
Thiago Macieira
786c790176 Fix build on Android: libpthread is deficient and lacks functions
Even if the monotonic clock is available, Android's Bionic lacks the
pthread_condattr_setclock function, so we can't tell it to use the
monotonic clock.

Task-number: QTBUG-30450
Change-Id: I4f53708b1e834ff5d9462b3bf778b96c22662a04
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
2013-04-02 19:01:23 +02:00
Oswald Buddenhagen
4e3b1ee6a6 fix non-bootstrapped build
Change-Id: Ic615dc3bee423e2bb05798ce861ca809ac89a23c
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-04-02 19:00:31 +02:00
Oswald Buddenhagen
779516957a move the setup of QT_INSTALL_DOCS from qdoc to qt_docs.prf
this is a qt specific option and really should not be hard-coded.

also, the implementation used undocumented api that is internal to the
bootstrapped process, which made it impossible to de-bootstrap it.

Change-Id: If706960671744e64a9a7c366437977a800a6058e
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2013-04-02 19:00:27 +02:00
Thiago Macieira
782cd9ef2e Ensure GCC prints its messages in English when we parse them
We're trying to parse GCC output, so let's make sure that they are in
English. I've seen some reports that "search starts here" was
translated to some locales.

Change-Id: If09b1f45607f65d054496db65418e413b8aa8d48
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2013-04-02 18:58:33 +02:00
Oswald Buddenhagen
d8a127fdcc don't try to de-duplicate QMAKE_DEFAULT_{INC,LIB}DIRS
the de-duplication has the side effect of sorting, which is a very bad
idea: x-compilers tend to append the host library paths at the end, and
we really want them to stay at the end.

and the lists should have no duplicates to start with. should we find a
compiler which breaks this assumption, we can use qmake's $$unique()
strategically.

Change-Id: I01560e3c33736c2dfffdb05d5c960c492439c946
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-04-02 18:58:30 +02:00
Oswald Buddenhagen
6c9e8e611f don't complain about missing macros in <module>version.h
we just generated them, and they really don't need QT_{BEGIN,END}_*.

Change-Id: Ib7b2454ae80762e644d9667106960cc7632f90fc
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2013-04-02 18:58:28 +02:00
Oswald Buddenhagen
0aa0093479 prefer 'release' for non-bootstrapped host build_all configs
... like qt_tool does. otherwise we get linker errors with debug builds
on windows.

Change-Id: I583f277ff3fb75c9fe5f305a6f1b5d066b840c07
Reviewed-by: Debao Zhang <hello@debao.me>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
Reviewed-by: Jonathan Liu <net147@gmail.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2013-04-02 18:58:24 +02:00
Frederik Gladhorn
b2ec0da956 Cache QAccessibleInterfaces.
Since there already is a one-to-one relationship
between QObject and QAccessibleInterface it makes
little sense to create and destroy the interfaces
on each call to queryAccessibleInterface.

Add a cache and keep created interfaces around for
the lifetime of the corresponding QObject.

This changes the memory management rules: accessible
interfaces must no longer be deleted. If you get an
QAccessibleIntrface pointer that pointer will stay
valid as long as the corresponding QObject is not
deleted.

This also re-enables accessibility for Mac.

We limit the range of the IDs so that they are
useable for Windows directly.
That means we can get rid of the event cache there.

This is based on: Iebf2f374916fc70a9dd29e95f45a6444b85f6cee

Change-Id: I9fe6531812c0dbc5b41101ac05830a6dd75e13a3
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
2013-04-02 14:32:25 +02:00
Mark Brand
8dfe1385b5 QSqlTableModel: expose methods for getting primary values
These methods are very useful in subclasses.

Change-Id: Ifdfee9d90cbdad97f349e46b587582f1d9e7cd7a
Reviewed-by: Andy Shaw <andy.shaw@digia.com>
2013-04-02 14:31:59 +02:00
Mark Brand
4131bfb2c2 make QSqlResultPrivate::fieldSerial() virtual
The Qt psql driver has its own implementation of fieldSerial() it uses
when it invokes positionalToNamedBinding() to generate a query using
its native naming style. Now that QPSQLResultPrivate is derived from
QSqlResultPrivate this can be implemented more conventionally using
a virtual function instead of pointers to static functions.

Note that this change preserves the current behavior of
executedQuery() which will continue to return the query with
positional syntax that is presented to virtual prepare() by
QSqlResult::savePrepare(). Since the driver does not have the
NamedPlaceholders feature, QSqlResult::savePrepare() will not use
positionaltoNamedBinding() to set executedQuery. Although
QPSQLResult::prepare() calls positionaltoNamedBinding(),
it does not put the result into executedQuery.

Change-Id: I7740f386cbfec9eadd9e4d6a7df3e590294655a5
Reviewed-by: Israel Lins Albuquerque <israelins85@yahoo.com.br>
Reviewed-by: Mark Brand <mabrand@mabrand.nl>
2013-04-02 14:31:47 +02:00
Mark Brand
db6190d6fe QPSQLResultPrivate inherit QSqlResultPrivate
Follow the usual pattern that a subclass's private class inherits
its base classes's private class. This will allow the private class
to use virtual functions.

Change-Id: Iafdf1cb5db672d973ad1f60bdd7e37b9072fbb1b
Reviewed-by: Israel Lins Albuquerque <israelins85@yahoo.com.br>
Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
Reviewed-by: Mark Brand <mabrand@mabrand.nl>
2013-04-02 14:31:44 +02:00
Mark Brand
7565f6fe0a QPSQLResultPrivate: do not duplicate reference to private driver
The "private driver" is already known, so don't keep an extra reference
to it.

Change-Id: I34ec4108694bfbc3da3107f79598ae50a699911c
Reviewed-by: Israel Lins Albuquerque <israelins85@yahoo.com.br>
Reviewed-by: Mark Brand <mabrand@mabrand.nl>
2013-04-02 14:31:40 +02:00
hjk
6361227846 Reduce the likelihood of underflows in qFuzzyCompare
As indicated in the discussion of the bug report, this
does not address the real problem but only reduces the
frequency it occurs.

Task-number: QTBUG-26453
Change-Id: I20ac3f41f52effb674bee6924ccdfd2f641576ef
Reviewed-by: Andy Shaw <andy.shaw@digia.com>
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-04-02 14:10:54 +02:00
Peter Hartmann
9efd40bd77 QNetworkAccessManager: track online / accessible state without session
In particular, set online state right upon construction of the
QNetworkAccessManager instance. Therefor, QNAM needs an instance of a
QNetworkConfigurationManager internally.
Before, this would only work properly if a network session was created.
Now, networkAccessible() returns the correct status.

Change-Id: I7ff9ccfd18ad376a131fc5977843b55bf185fba0
Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
2013-04-02 10:46:23 +02:00
Peter Hartmann
16269904a2 QNetworkAccessManager: store QNetworkConfiguration instead of identifier
In case a network session is not required, we need access to the
configuration object rather than to the QString.

Change-Id: I05945525ce8247e343d0bebd7ec15e0e162ed826
Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
2013-04-02 10:46:17 +02:00