Commit Graph

12540 Commits

Author SHA1 Message Date
BogDan Vatra
afaa6e42f0 Export QAbstractFileEngine[XXXX] classes.
We still need them for Android assets implementation.

Change-Id: I12bb809c05ac88f3c4a7d6796692b4dc3987027c
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
2013-02-27 18:02:50 +01:00
Paul Olav Tvete
023644cae1 Style fixes for android enablers
Change-Id: I0b942865c29f4bdf29f0e7f56af0d620acbc39c6
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
2013-02-27 18:02:34 +01:00
Paul Olav Tvete
1199136bd3 Fix test script
This script was completely broken, and seems to have been abandoned.

Change-Id: If307f001237609ccb054c0a469213290294161c9
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
2013-02-27 18:02:22 +01:00
BogDan Vatra
d88ec35b11 Fix compile on Android
This is a workaround for a broken compiler

Change-Id: I10c8c750caf56036419807ec4a2439bf14cf64d6
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
2013-02-27 18:02:10 +01:00
Paul Olav Tvete
660a615a37 Update the display to reflect changes by input method
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>

Change-Id: If3804f2a514ba4635f841de6377f2b328a4e928a
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
2013-02-27 18:01:56 +01:00
Gabriel de Dietrich
48d39a01a7 Cocoa: Remove qt_mac_toCGImage warnings
We got these because we were flushing the backing store with a
null QImage.

Change-Id: I372cb3fc7c82d3bdcfe735fcadfa72806d0ef39b
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
2013-02-27 17:50:57 +01:00
David Faure
e433553c1b tst_qfile: remove unused variable
Change-Id: I3c827b8a372158815cf234a548a85cf6165c189e
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-02-27 16:00:08 +01:00
David Faure
2cb2a2e29e Add ISO 8859-11 as an alias for TIS-620
(qsimplecodec.cpp says so, but is unused when ICU is used)

ISO 8859-16 is still missing though...

Change-Id: Idbccedd7bad63f9788cec2f7fc1bbfcb7a891acc
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2013-02-27 16:00:02 +01:00
Richard Moe Gustavsen
f6dc54ded4 iOS: network should not link against CoreServices on iOS
Change-Id: Ia3e21a3d73f696f0e77c427bdb263333646c48d3
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
2013-02-27 13:07:25 +01:00
Tor Arne Vestbø
8716c42ee2 iOS: Add missing QuartzCore dependency to platform plugin
Change-Id: Ic69a5a7faa9b7f9907d0325260b6b6e2389a4c3a
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
2013-02-27 13:07:25 +01:00
Tor Arne Vestbø
cb25d67f01 iOS: Don't link ios platform plugin to Cocoa
Change-Id: I2348b19617d3e342cd344bf7d0fa894118cbfae8
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
2013-02-27 13:07:24 +01:00
Tor Arne Vestbø
f2168f2688 iOS: Build platform plugin like other platform plugins
... by loading(qt_plugin)

Change-Id: I9be438b72be986a991a81c2cf1a3e5047bcf0a60
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
2013-02-27 13:07:24 +01:00
Tor Arne Vestbø
e5111d5e02 iOS: Build ios platform plugin when appropriate
Defining QT_QPA_DEFAULT_PLATFORM_NAME in qplatformdefs.h is not
neccecary, as qconfig.h will already have this define written by
configure.

Change-Id: I89d9191533f6b4e6bfd5eade6cc0dced02b50f81
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
2013-02-27 13:07:23 +01:00
Tor Arne Vestbø
a6286039ba iOS: Write default code signing identify for iOS in Xcode generator
Change-Id: Ic04da6063863585665c9133caba0279ba478fbb4
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Ian Dean <ian@mediator-software.com>
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
2013-02-27 13:07:23 +01:00
Tor Arne Vestbø
5da648043d iOS: Target both iPhone and iPad by default
Change-Id: I3122b9391c6187da17389c889a456c58210dca09
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
2013-02-27 13:07:23 +01:00
Tor Arne Vestbø
e846edff33 iOS: Allow projects to disable the main wrapper
In case they provide their own main that calls UIApplicationMain.

Change-Id: Ia050277ae5cbcbf01bc57b87ec37a74db9568059
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
2013-02-27 13:07:22 +01:00
Tor Arne Vestbø
5b99d46b39 iOS: Link to the platform plugin and iosmain plugin and define main
Ideally we'd only have to do QTPLUGIN += ios, but this doesn't work as
we need to link with the force_load linker option. Even trying to build
on QTPLUGIN and then replace the -l line with what we need will fail, as
the prl logic in qmake which runs after all the prf files does not know
about the force_load option and will then fail to resolve dependencies
from the prl file.

Since we load the platform plugin using -force_load, there's no need to
generate a cpp file that does the plugin import.

The main wrapper is not a real Qt plugin, and doesn't have an import
function that we can call, so we link it manually instead of relying
on QTPLUGIN.

Change-Id: I0381a3c9ed7f8d41a4121e1fc0b7c0e210a8b832
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
2013-02-27 13:07:22 +01:00
Tor Arne Vestbø
77168c03ff iOS: Make Xcode output the default for GUI applications
As long as Qt Creator does not provide any iOS integration, and the
app bundle we create using the Makefile generator is not good enough
to deploy to a device anyways, producing Xcode projects make the most
sense.

We base the decicion on whether or not the project depends
on QtGui and has app_bundles enabled. This prevents configure
tests and other tools from having Xcode projects, but allows
examples and demos to build out of the box.

Instead of setting the generator unconditionally we unset it in
default_pre so that we can detect if the user set it manually. This
means the user won't be able to inspect the MAKEFILE_GENERATOR variable
from the pro file, but this is less of a use-case then overriding the
generator from the command line or prooject file.

Change-Id: I881cf3e29631445f83ea4ff0979f7a566e4810f5
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
2013-02-27 13:07:21 +01:00
Tor Arne Vestbø
c3278e3353 iOS: Replace device and simulator makespecs with single makespec
And use configure's -sdk argument to choose between the iphoneos and the
iphonesimulator SDK. xcodebuild -showsdks can be used to list the
available SDKs. Passing an SDK without a version postfix implies
the latest version of the SDK.

Change-Id: I881df754d522fc91aaa16ba3e39cf0c37a21a1f1
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
2013-02-27 13:07:16 +01:00
Mitch Curtis
a65982d659 Add snippet for QT_VERSION_CHECK.
Change-Id: I048771f21ce694329a7e9acd4dbfbebfec964b05
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-02-27 12:02:34 +01:00
Andy Shaw
4a6a066df2 Fix generation of XCode projects for XCode 4.6
When a framework is referenced in the XCode project then it is known as
a framework by the lastKnownFileType and not the reference type. This
ensures it works in both XCode 3 and XCode 4.

Task-number: QTBUG-29371
Change-Id: I434246a46d6c5bfd50ba7de1a7c710c0caf0bc0a
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
2013-02-27 12:01:28 +01:00
Mitch Curtis
6269c9a414 Fix some punctuation errors.
Change-Id: I6aa2ad2b506466fbef6a22380d151988930807c9
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
2013-02-27 12:00:46 +01:00
Paul Olav Tvete
c65ecc50ae Enablers for input methods on Android
Adding QInputMethod::inputItemRectangle()/setInputItemRectangle().

Known bugs: inputItemRectangle() not implemented for graphics view
items; inputItemTransform() implementation was already missing.

Change-Id: I72b1d43350e93858a2b374de3f2199500a96dc79
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
Reviewed-by: BogDan Vatra <bogdan@kde.org>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2013-02-27 11:24:24 +01:00
BogDan Vatra
323ba46f72 Fix thumb armv5 atomics
Change-Id: Ie9f98e5f5a08908d9d99e04bdc95fd506cc4a51e
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
2013-02-27 11:24:24 +01:00
Paul Olav Tvete
212ff4f34d Add multi-line input method hint
Enabler for input on Android.

Change-Id: I44670b95b35f773814125c5d35c67e9713567813
Reviewed-by: BogDan Vatra <bogdan@kde.org>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
2013-02-27 11:24:24 +01:00
Friedemann Kleint
cd1e245877 QStandardPaths: Use forward slash consistently.
Task-number: QTBUG-29249

Change-Id: I027f9ae18544dc47e1378214244487c8a5ae704c
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-02-27 09:24:33 +01:00
Samuel Rødal
b56caf5f4e Introduced QWindow::setMask() to expose existing platform functionality.
Task-number: QTBUG-28555
Change-Id: I2c649b6d9e9dc69be246cb7658b3edbe9682b1bf
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
2013-02-27 09:11:18 +01:00
Thiago Macieira
7b2d98d906 Fix some warnings that have crept up since I last fixed warnings
qgtkstyle.cpp:3177:103: error: suggest parentheses around ‘&&’ within ‘||’ [-Werror=parentheses]
qcups.cpp:517:66: error: ‘QString::QString(const char*)’ is deprecated
itemviews.cpp:795:13: error: unused parameter ‘actionName’ [-Werror=unused-parameter]
qeglconvenience.cpp:268:9: error: ‘cfg’ may be used uninitialized in this function [-Werror=maybe-uninitialized]

Change-Id: I9b8a175ff1c2ddc443363e08b92e09cf7c2f91cf
Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
Reviewed-by: John Layt <jlayt@kde.org>
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
2013-02-27 07:09:24 +01:00
Thiago Macieira
cafb02911a Make sure that the reference count for plugins is kept correctly
For systems where the Unix signature checker isn't enabled (read: Mac
and Windows), QPluginLoader must actually load the plugin to query for
the metadata. On Mac it even tried to keep the library loaded to avoid
unloading and reloading again when the user calls load().

However, that plus the fact that it was calling load_sys() (on Mac)
meant that it would bypass the reference count checking. And on all
Unix, if a library-that-wasnt-a-plugin was already loaded by way of a
QLibrary, it would have an effect of unloading said library.

So remove the "caching" of the library. We should instead invest time to
write a proper Mach-O binary decoder.

Task-number: QTBUG-29776
Change-Id: Iebbddabe60047aafedeced21f26a170f59656757
Reviewed-by: Liang Qi <liang.qi@digia.com>
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
2013-02-27 07:09:18 +01:00
Thiago Macieira
790fe22c52 Autotest: check that the plugin was actually unloaded in QPluginLoader
Change-Id: I66d26da4e86add244d37ff670ad79ff2aff17ca1
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
2013-02-27 07:09:13 +01:00
Thiago Macieira
2c51bc0289 Don't try to unload a library that isn't loaded
Both QPluginLoader::unload() and QLibrary::unload() protect against
that (they have a "did_load" member), but QFactoryLoaderPrivate's
destructor doesn't. In the past (Qt4) all plugins had to be loaded
anyway, so there was no mistake in the reference counting. With Qt 5,
we don't load plugins unless they're actually used (in
QFactoryLoader::instance).

Task-number: QTBUG-29773
Change-Id: I3278fa14bac7e26a9faaf999b4e42e950654ac9a
Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2013-02-27 07:09:08 +01:00
Thiago Macieira
f92e844b2b Stop using function deprecated in D-Bus 1.2 (raise minimum version)
The dbus_watch_get_fd function was deprecated in D-Bus 1.2 (technically,
in 1.1.1, but that was a development release) because it had a bad name.
Sockets on Windows have file descriptors, but they are not shared from
the same pool as the CRT library's file descriptors.

This commit raises the minimum required version of D-Bus to 1.2. This is
the first requirement raise since this code was introduced in 2006. For
some reason, the D-Bus 1.2.0 release seems to be missing, but 1.2.1 was
released on 04-Apr-2008. That's ancient enough for all distributions
Qt 5 is supposed to run on.

Change-Id: Ia6bbc137fffbb27c77290ed3e32d3380f0ae3c54
Reviewed-by: Lorn Potter <lorn.potter@jollamobile.com>
2013-02-27 07:09:03 +01:00
Konstantin Ritt
996db96d5e Fix QString::toUcs4() returns incorrectly resized QVector
...when the string contains surrogate code points.

Task-number: QTBUG-25536

Change-Id: I07251fee641c14f33175678768ddbe551dbe2bb1
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-02-27 03:13:30 +01:00
Konstantin Ritt
7729d89e15 QWin32PrintEngine: Fix build on MinGW + avoid dummy allocations
Don't use wcscpy_s() which is not available on MinGW but determine the utf-16
string length and pass that value to QString::fromWCharArray() instead.

Change-Id: I45d1b1969fe03255fdb6353fa9f52417af530e40
Reviewed-by: Laszlo Papp <lpapp@kde.org>
Reviewed-by: Andy Shaw <andy.shaw@digia.com>
2013-02-26 22:01:27 +01:00
Thiago Macieira
1b76cf0174 EGLFS: Replace the global static 'hooks' variable with a function
Having a global static variable in a header is a poor choice to start
with. All .cpp including that header must use that variable or the
compiler will warn of an unused static.

Second, for the case of platform hooks, it's possible that it is reading
the value of a variable that isn't initialised yet.

Change-Id: Id823c2be9cfededb9c31fb76a9080d4122577ca4
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
2013-02-26 22:01:27 +01:00
Israel Lins
bc5170f274 ODBC: improve detection of DBMS
Change-Id: Ia93c3adb54fd28e290ff6fc85cb98138514885f1
Reviewed-by: Mark Brand <mabrand@mabrand.nl>
2013-02-26 22:01:27 +01:00
Mark Brand
4da840f230 make static function a class member
Change-Id: I8c18c746185f6b7530ed985f4d482a1c9073fb10
Reviewed-by: Andy Shaw <andy.shaw@digia.com>
2013-02-26 19:48:22 +01:00
Mark Brand
63b180d390 rename private driver to privDriver
This avoids confusion now with the actual driver and avoids a
name collision in later refactoring.

Change-Id: I83055213f3a7b7998640662d49ba33749fdadd18
Reviewed-by: Andy Shaw <andy.shaw@digia.com>
2013-02-26 19:48:18 +01:00
Mark Brand
ad211acae4 qpsql: simplify expression
Change-Id: I1cff816ca5e8f683015186a2b5815e564ad454e6
Reviewed-by: Andy Shaw <andy.shaw@digia.com>
2013-02-26 19:48:12 +01:00
Friedemann Kleint
176383f3ec tst_qfileinfo: Fix invalid preprocessor directive.
Introduced by 5ec342fefd .

Change-Id: I28f9e093567ef1abf3898146e7183a90888262ad
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
2013-02-26 19:24:36 +01:00
Sean Harmer
a2ddf3dfe0 Add a new static lib and module for OpenGL extensions
The complete set of OpenGL extensions is large meaning that any attempt
to incorporate them into a shared library such as QtGui would bloat the
size of that library.

The typical usage pattern for OpenGL extensions is to use only a very
small number of extensions from the total available set. A static
library suits this situation very well as an application will only
compile in the executable code for the extensions actually used. Thus
makign all of the functionality available to those that need it but with
zero cost to those that do not.

Change-Id: I49fdac7e9d2e0b190b7ea04b776018dd63c3065f
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
2013-02-26 16:27:39 +01:00
Sean Harmer
10aa64d74c OpenGL: Add a set of version and context specific OpenGL classes
This commit adds part of the output of utils/glgen and some simple
modifications to QOpenGLContext to allow easy access to classes
containing functions specific to a given OpenGL context and version.

This allows compile-time detection of mis-use of OpenGL features.
For example, trying to use glBegin(GL_TRIANGLES) with an OpenGL 3.2
Core Profile context will be detected by the compiler rather than at
runtime.

These capabilities make it much easier to add functionality to Qt and
applications that relies upon core features of OpenGL from specific
versions e.g. geometry shaders.

Change-Id: Ieb584a489792595f831bc77dee84935c03bb5a64
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
2013-02-26 16:27:30 +01:00
Tor Arne Vestbø
67f925701b iOS: Include clang-mac.conf instead of defining precompile flags ourselves
Change-Id: I1a3b9ad16e54457068d3451c066a8d7965a622df
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
2013-02-26 14:28:23 +01:00
Tor Arne Vestbø
2aeb742a58 iOS: Use sdk.prf to set -isysroot based on the chosen SDK
Change-Id: I4683ab422ad886b86604fbd68f8dfb4cf6bfc06e
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
2013-02-26 14:28:01 +01:00
Paul Olav Tvete
4b1332783e Compile fix when QT_NO_PRINTDIALOG is defined
...but QT_NO_PRINTER isn't.

Change-Id: I888c177cfdd2245eb55de766dfd93f6acd4293e9
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
2013-02-26 13:31:45 +01:00
Frederik Gladhorn
f6af0dad5b Fix typo.
Change-Id: Ia3fd460e77d8da5dca634872e3f786d5ad30289d
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
2013-02-26 13:31:45 +01:00
Thorbjørn Lund Martsum
717a0a9d04 QGraphicsView - emit signal when rubber band changes.
The rubberBandRect function is nice to have, but this patch
makes it easier to track the rubber band by emiting a signal
on change.

That makes it easier (and less clumsy/hacky) to show information
related to the rubber band.

Change-Id: If65eb85d743a1804be3fdb823a821423411e9745
Reviewed-by: Andreas Aardal Hanssen <andreas@hanssen.name>
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
2013-02-26 13:31:45 +01:00
Thorbjørn Lund Martsum
c56f73cc1e QGraphicsView - add function to get RubberBand rect
In many situations it is handy to know the rubberband rect.
There are many situations where we want to show something
related to the rubberband.

Regardless how that is done the rubberband area is needed.
(Not having this is a flaw that can force people to do make
a customized rubberband just to get this information)

Change-Id: Ia854db4c0022b6a97b150af2b4bb78fd5e974991
Reviewed-by: Andreas Aardal Hanssen <andreas@hanssen.name>
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
2013-02-26 13:31:45 +01:00
Tor Arne Vestbø
6e594a9451 iOS: Move device/simulator conditionals out of common mkspecs
Instead we deal with any differenced by setting variables in the top
level makespecs, that are used by the common makespec configs.

Change-Id: Iae1fb5fef8c95778511ed400008731989b446f3c
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
2013-02-26 13:19:01 +01:00
Tor Arne Vestbø
d898689300 iOS: Disable NEON until LLVM handles the GAS syntax of the draw-helpers
The LLVM version in Xcode 4.5 and below does not handle the GNU
assembler syntax in the pixman assembly file.

A possible alternative workaround is to include a preprocessed assembly
file using https://github.com/hollylee/gas-preprocessor.

Change-Id: Id95add669c60d3a7da823e5975afdd1f88f71977
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
2013-02-26 13:18:29 +01:00