Commit Graph

13142 Commits

Author SHA1 Message Date
Sean Harmer
f46787b48a Bring glgen into line with OpenGL functions and extensions code
This ensures that glgen outputs exactly what is included in

src/gui/opengl/qopenglversionfunctions.*
src/gui/opengl/qopenglfunctions_*
src/openglextensions/*

Change-Id: I7d41d9fc2bf6e5fedf11f58872c079339dac3649
Reviewed-by: James Turner <james.turner@kdab.com>
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
2013-04-05 00:14:37 +02:00
Tor Arne Vestbø
8d92244d80 iOS: Fix build on case sensitive file systems
Change-Id: I920e7320e429006aef9433db3e942dc257dc72eb
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
2013-04-04 23:50:12 +02:00
Mark Brand
c8c8093561 QTDSDriver: fix index out of range
Follow-up to 5544208e2.

Change-Id: Iba3ff291622533e8050ddc0494e4488233727ebe
Reviewed-by: Andy Shaw <andy.shaw@digia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-04-04 13:13:43 +02:00
Mark Brand
0bdc86d9ef QSqlDriver: use Q_DECLARE_PUBLIC/Q_DECLARE_PRIVATE
406c8ef6e6 introduced deriving the private SQL driver classes from
QSqlDriverPrivate. However, the drivers continued to keep their own
pointer to the private class, even though QObject provides the same
pointer. Worse yet, the private class is allocated too late and not
even passed to QSqlDriver. The result is that QSqlDriver allocates
a separate instance of QSqlDriverPrivate. This is likely to cause
all kinds of chaos.

The private class needs to be allocated in time pass it to QSqlDriver
which passes it on to QObject.

This commit covers the the base class and drivers:
    ibase
    mysql
    odbc
    psql
    sqlite
    tds

Fixes for the remaining drivers will follow.

Change-Id: Id8e7ec4205b0ca6cd00bd022c9cd24f137089245
Reviewed-by: Andy Shaw <andy.shaw@digia.com>
2013-04-04 13:13:37 +02:00
Mark Brand
708d39fa31 QSqlDriverPrivate clean-up
Change-Id: Ia6cbb37330bc0beed7498e43cd18bb2a1afb8e3d
Reviewed-by: Andy Shaw <andy.shaw@digia.com>
2013-04-04 13:13:30 +02:00
Tor Arne Vestbø
127f19c7e3 iOS: Handle UIDeviceOrientation vs UIInterfaceOrientation
The former represents the physical device orientation, the latter the
UI orientation. We need to explicitly cast between them, as they are
different enums, but with compatible values for the subset we use.

Change-Id: I2926068802f35680cb6de5ced6dcf286014fdb2e
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
2013-04-04 13:12:32 +02:00
Frederik Gladhorn
132348a864 Fix warning: qt_setDockMenu not found
qcocoanativeinterface.mm:196:5: warning:
 instance method '-qt_setDockMenu:' not found
 (return type defaults to 'id') [-Wobjc-method-access]
    [NSApp QT_MANGLE_NAMESPACE(qt_setDockMenu): menu];

Change-Id: I80838d0098e7f172d9b8124f04e91dba64764318
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
2013-04-04 12:49:09 +02:00
Paul Olav Tvete
d9170e650c Android: Don't show '&' character in menus
Strip out shortcut indicator before showing the text.

Task-number: QTBUG-30507

Change-Id: I8fa2ef8a2052f4c43d14b3babfd5aca0a08e29d5
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
2013-04-04 12:49:09 +02:00
Topi Reinio
87f890295b Doc: Fix network/torrent example to work on Qt 5
This change fixes two issues in the torrent example:

    - Correctly use a query constructed from the announce url to fetch
      the list of peers (using QUrlQuery).
    - Reimplement QAbstractSocket's connectToHost() and
      disconnectFromHost() which are virtual in Qt 5, instead of
      of using the protected connectToHostImplementation() /
      disconnectFromHostImplementation() slots.

Also removes a warning about deprecation of QHttp class as it's no
longer used in this example.

Task-number: QTBUG-30329
Change-Id: I9230cd2204bfc1a66f2ea3e98940b09681df250e
Reviewed-by: Peter Hartmann <phartmann@blackberry.com>
2013-04-04 08:37:04 +02:00
Tor Arne Vestbø
05b0565e97 Include PRECOMPILED_DIR in dirs fixed by fixExclusiveOutputDirs()
It's written to qmodule.pri by configure with a hard-coded path,
and hence need fixing up or appending, depending on which
exclusive builds are used.

Change-Id: I069c04438dc303868a76349c9bdd385adc074c0a
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
2013-04-03 18:04:37 +02:00
Konstantin Ritt
680d8aa6c5 QPA/Mac: Fix resources leaking
Having static QFont instance leads to a resources leaking, since QFontCache
is unable to clean-up font engines when the application exits.

Relates to QTBUG-25434

Change-Id: I71d91094de27c07ab2434c415e4c28b6acab3646
Reviewed-by: David Faure (KDE) <faure@kde.org>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2013-04-03 18:03:26 +02:00
Frederik Gladhorn
8b99445755 Merge "Merge remote-tracking branch 'origin/release' into stable" into refs/staging/stable 2013-04-03 17:42:03 +02:00
Tor Arne Vestbø
b2d7168313 Load sdk.prf first, if enabled, so that other features can use QMAKE_CXX
Extra-compilers such as objective_c.prf may reference QMAKE_CXX, so we
need to sysroot it before it's used.

Change-Id: I1e367b3d0816096300a441786619f298134de0a6
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2013-04-03 17:16:43 +02:00
Frederik Gladhorn
a4121a21c0 Merge remote-tracking branch 'origin/release' into stable
Change-Id: Icedabda08961326a0a447ec71f1b0f0f5df075eb
2013-04-03 15:43:39 +02:00
Venu
7a988e4c0d Doc: Replaced canConvert() with canConvert(Int)
This change amends my earlier change to make
the function reference relevant to the example
being discussed.

Task-number: QTBUG-28204
Change-Id: I841a561ba117f83a96b8b4a3661cea2a7a3e47da
Reviewed-by: Sze Howe Koh <szehowe.koh@gmail.com>
Reviewed-by: Martin Smith <martin.smith@digia.com>
2013-04-03 13:16:39 +02:00
Andy Shaw
555a5ca61b If the menu item is merged then we should not release it
When a menu item is merged then we do not want to release it as it will
cause a problem with the Application menu. Therefore we just hide it
instead.

Change-Id: Ia9f7acfe063001111769841c9a360cac369f7ed7
Reviewed-by: James Turner <james.turner@kdab.com>
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
2013-04-03 13:14:52 +02:00
Kai Koehne
e777e3f1ec Boxes: Check for opengl version in .pro file
Make sure that people get an understandable error message when
trying to compile the boxes demo with e.g. ANGLE.

Task-number: QTBUG-30406
Change-Id: I0ba0e26e424d768f95d7977862d9f2c4e85b41fb
Reviewed-by: Jonathan Liu <net147@gmail.com>
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
Reviewed-by: Thomas Hartmann <Thomas.Hartmann@digia.com>
2013-04-03 13:02:17 +02:00
Olivier Goffart
278cee7387 Changelog: add entry for QTBUG-29759
Conflicts:

	dist/changes-5.0.2

Change-Id: Ibdb85dd908368f15530db31b47c901d952bb6d93
Reviewed-by: Sergio Ahumada <sergio.ahumada@digia.com>
2013-04-03 13:02:07 +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
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
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
Kai Koehne
be90d26fc6 Fix gcc OOM error when compiling in release mode
O3 leads to gcc bailing out with OOM on e.g. MinGW with gcc
4.7.3 onwards.

Task-number: QTBUG-29099
Change-Id: I3ce49794fa4857e756d2994454d4144cfb44ce58
Reviewed-by: Jonathan Liu <net147@gmail.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-04-02 21:20:07 +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