Commit Graph

12762 Commits

Author SHA1 Message Date
Frederik Gladhorn
d3d63bb4bc Warn about accessibility interface creation failure only once
Change-Id: I0555d7d2417149f0eec54b228b842a61d0d08f85
Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
2013-03-14 19:49:38 +01:00
Tor Arne Vestbø
36a5873fac Detect Clang availability on Mac based on the SDK, not the OS X version
Since we use the Clang from Xcode's toolchain now, the OS version is
not relevant.

In practice this means we will use clang for Xcode 4.2 and up, which
means it's possible to use clang also on Mac OS 10.6 (Snow Leopard),
where Xcode 4.3 is not available.

Change-Id: I9817e237cdd82d10b93aaaa3c90e35767cdca751
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-03-14 19:49:38 +01:00
Stephen Kelly
0ec541c9ad Test the OpenGLExtensions cmake module.
Change-Id: I3cc71e035fd1c34e05ecb470f897a72a39f42ca4
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
2013-03-14 16:38:57 +01:00
Stephen Kelly
8d83911542 Remove incorrect export macro.
As this is a static library, no export macro is needed at all. With
the wrong export macro, attempting to use this library fails on Windows.

Change-Id: I618d7f02e374761fc8d8a5a0afb8d6d80e380389
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
2013-03-14 16:38:49 +01:00
Mitch Curtis
fd7b52d268 Make QCoreApplication::startingUp() return false when appropriate.
Currently, QCoreApplication::startingUp() returns true even after
a QCoreApplication has been constructed. This patch makes it return
false after it has been constructed and adds checks to QApplication
and QGuiApplication to ensure that it returns true within the
constructor of these classes.

Task-number: QTBUG-2591
Change-Id: Ie511522d35b5658c20be43dd112eae18c205277f
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@digia.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
2013-03-14 10:47:34 +01:00
Nico Vertriest
1d276c256f Doc: corrected snippet statement in qplugin.qdoc
Corrected path for snippet with Q_DECLARE_INTERFACE

Task-number: QTBUG-29101
Change-Id: I910bb339a4ec6ecf2ad1ea76eaaa73114ab65a68
Reviewed-by: Martin Smith <martin.smith@digia.com>
2013-03-14 10:26:31 +01:00
aavit
db775741ed Fixes: assert in QPainter::fillRect on very large paint devices
For devices taller than 32768, fillRect with linear gradient would
go below the cliprect.

Task-number: QTBUG-26766
Change-Id: I516ede1545909e9ce2de5812c61bb473f99f5759
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
2013-03-14 09:59:58 +01:00
Joerg Bornemann
1e97a1ad8c QProcess/Win: stop pipe readers before closing the pipe handles
The pipe readers should not operate on closed handles.

Change-Id: I6514b949e5ab2adf89633463fc599e8d02c43693
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2013-03-14 09:49:30 +01:00
Joerg Bornemann
17869a544e fix spurious QWindowsPipeWriter deadlock
We must check the return value of CancelIo(Ex) and only wait for a
notification if it was successful.
CancelIoEx can fail, if the handle is closed before the
QWindowsPipeWriter destructor is called.

Change-Id: I2dcc97052be917c69d18c277856374cbc07e2169
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2013-03-14 09:49:28 +01:00
Irfan Omair
ba75f60449 Set StyleMask to NSBorderless if FramelessWindowHint is set.
Task-number: QTBUG-29815

Change-Id: Idb93843a2ad8332c81587c245fe73aa2bf5cc661
Reviewed-by: Andy Shaw <andy.shaw@digia.com>
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
2013-03-14 07:31:00 +01:00
Stephen Kelly
2a388e503f Merge "Merge remote-tracking branch 'origin/release' into stable" into refs/staging/stable 2013-03-13 23:35:18 +01:00
Shawn Rutledge
463dac4e00 If a QWindow without a platform window is resized, emit changed signal
Needed as a consequence of I4f5e37480eef5d105e45ffd60362a57f13ec55f5
Otherwise a Window in QML doesn't get notified to update its layout
after being mapped the first time, on Linux.

Change-Id: I8b1291e16b11eb93ab045ac5c5ed6b478391cb21
Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
2013-03-13 19:11:18 +01:00
Shawn Rutledge
846cf1a13f Fix sluggish resizing for opengl windows on X11
Disable sync protocol for OpenGL surfaces in the XCB plugin.

Task-number: QTBUG-29304
Change-Id: I4cb47b04637e15e012758d3b0840abd13d27df69
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
2013-03-13 19:11:12 +01:00
Oswald Buddenhagen
a5c2ab4786 make split_value_list() a bit less sane again
let the backslash escape only quotes (and itself), after all - $$list()
(one of the main users of this function) is commonly used with (windows)
path lists, so letting it escape anything would make a royal mess.

Change-Id: I2dae2e4508903e62c190c1497da68d53978118e7
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2013-03-13 18:40:26 +01:00
Oswald Buddenhagen
62266ef813 make testlib's toString() use local8Bit, not latin1
this is consistent with what qDebug does. consequently, this makes the
code usable with 8-bit strings in the first place.

note that some {to,from}Latin1 is left - this is where we know that we
are dealing with ascii-only text.

Change-Id: I26cfdf3622250b8bf95ebfe221465ca89d7cd082
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2013-03-13 18:40:26 +01:00
Oswald Buddenhagen
de5562ff38 make stubbed QCoreApplication::translate() resolve %n
Change-Id: I36326d0f11e71580977d6589c9810ffa252a0fa7
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-03-13 18:40:26 +01:00
Oswald Buddenhagen
203f2800c0 make Q_DECLARE_TR_FUNCTIONS() compile with QT_NO_DEPRECATED
Change-Id: I9cde256347e5b59f7754bc578e56c60227c926ab
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-03-13 18:40:26 +01:00
Oswald Buddenhagen
1188885fdf QStandardPaths::displayName() is unavailable when bootstrapped
reflect that in the class definition

Change-Id: I1224ed851b220abae38c62a4d3dbea8ddbd40b83
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2013-03-13 18:40:26 +01:00
Oswald Buddenhagen
cb22d3bbba consolidate syncqt invocations
Change-Id: Ic28ea95201501b05c4a62366d1f70fa120161927
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2013-03-13 18:40:26 +01:00
Frederik Gladhorn
9fe16e0ee9 Window deactivation should set focus reason.
Change-Id: Iccc46880278bc5f7fe2b706efcdf9b4e6483c3e6
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
Reviewed-by: Caroline Chao <caroline.chao@digia.com>
2013-03-13 18:40:26 +01:00
Axel Waggershauser
3c2748afd5 Improve warning messages (and readability) of connectSlotsByName()
While adding a test case for the new behavior, two issues
with the connectSlotsByName implementation came up:

  1. for auto-connected slots that don't exactly match a signal,
     a 'compatible' one is searched. There might be more than
     one of those. The implementation randomly picks any.
  2. The "No matching signal for %s" warning gets printed even for
     slots that can never be connected via connectSlotsMyName
     anyway (e.g. "on_something"). This is inconsistent.

This fixed both: an explicit warning is printed if more than one
'compatible' signal is found and the "No matching signal for %s"
warning is only printed if the slot adheres to the full
"on_child_signal()" naming convention.

In the process I added comments and changed the code slightly to
make it more readable and explicitly hint at non-obvious behavior.

Change-Id: Icc8e3b9936188d2da8dfff9f0373c8e5c776eb14
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2013-03-13 18:40:26 +01:00
Oswald Buddenhagen
2f0756a63c remove pointless DBUS_PATH includes
nothing sets this variable. QT_CFLAGS_DBUS contains the relevant -I
flags.

Change-Id: I888b81f2110c5966550efd4313e74fe6f76ab06b
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-03-13 18:40:26 +01:00
Tor Arne Vestbø
c45595d648 Use tools from the SDK's toolchain instead of the ones in /usr/bin
For Mac OS X we currently specify build tools without an absolute path,
which means we end up using the ones in /usr/bin. This is wrong, we
should be using the tools from the toolchain of the chosen SDK.

For iOS we do specify an absolute path, by resolving the toolchain
path in the iOS makespecs.

To solve the situation on Mac OS X, we move the logic of resolving the
toolchain path to sdk.prf, and share it between OSX and iOS.

For configure we need to duplicate some of the logic from sdk.prf, as
configure pulls out QMAKE_CC and QMAKE_CXX for running some initial
tests and building qmake. The new macSDKify function also solves
the issue of missing sysroot and deployment version in the flags.

Change-Id: Ib1d239c9904cf3ccee5214b313cf6205869a1462
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2013-03-13 18:40:26 +01:00
Tor Arne Vestbø
e9837f7938 Teach configure's pro-file parser to understand host_build scopes
Is needed now that we write QMAKE_MAC_SDK with a !host_build scope
in qdevice.pri.

Change-Id: I298cc660b496460190337c175aef684a5522d5cb
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
2013-03-13 18:40:26 +01:00
Tor Arne Vestbø
e11c2165c5 Simplify how we resolve the SDK root on Mac OS
We now take advantage of the fact that xcodebuild -version allows you to
pass the key that you're interested in, to only print that single value.
This technique is used by Apple's own build scripts as well.

Change-Id: I57b8424590d4137a0e7f263a318e17ee2e0dfad4
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
2013-03-13 18:40:26 +01:00
Tor Arne Vestbø
c9eb0f9b49 Don't include custom qopengles2ext.h on iOS
This fixes the build after ec9c0faefd (Update gl2ext.h with the
latest version from Khronos).

Just like Mac OS X, iOS is a controlled platform, and we should include
the system headers instead. The OES_EGL_image_external extension is
not yet in the system headers though, so we provide our own typedef
to make the qopenglextensions.cpp code build, and the extension will
work out of the box once Apple includes driver support for it.

Change-Id: Ib6ba09d400ba38f05d91c90d4c9e54a8626889e1
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
2013-03-13 18:40:26 +01:00
Friedemann Kleint
696281bf08 Add qpainfo manual test.
Print out available information from QLibraryInfo, QStandardPaths,
QSysInfo, QPlatformIntegration, QStyleHints, QPlatformTheme
and QScreen.

Change-Id: Ia0bdc6174a1748c539acee18ba16a27a48d58ee5
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
2013-03-13 18:40:26 +01:00
Sérgio Martins
1975e65d73 Reorder for performance reasons.
isSymLink() can be expensive in a few cases.

Change-Id: I6f84414cf7057453d62225ab4f45dcdf92ed017b
Reviewed-by: David Faure (KDE) <faure@kde.org>
2013-03-13 18:38:19 +01:00
Mark Brand
e3c5351d06 postgresql driver: escape backslashes only when server requires it
Task-number: QTBUG-30076

Change-Id: I408cda941884f01484d0edfa82c91fc19cb8718c
Reviewed-by: Israel Lins Albuquerque <israelins85@yahoo.com.br>
Reviewed-by: Sergey Blagodarin
Reviewed-by: Andy Shaw <andy.shaw@digia.com>
Reviewed-by: Andras Mantia <andras@kdab.com>
2013-03-13 17:28:07 +01:00
Israel Lins
36b6d4afc9 ODBC: fix loss of milliseconds when binding QDateTime
Caused by operator precedence error.

Follow-up to commit b8b79a0f37

Task-number: QTBUG-2192
Change-Id: I17decd18c469b48a0bc938ae05c16cced8042219
Reviewed-by: Mark Brand <mabrand@mabrand.nl>
2013-03-13 17:27:57 +01:00
Marko Kangas
18be0749eb Fix for Sql query aliases with dots
Task-number: QTBUG-14904

Change-Id: I98a02d4bbf28522cd5c2f65ea606b6b26977e8e6
Reviewed-by: Mark Brand <mabrand@mabrand.nl>
2013-03-13 17:27:36 +01:00
Joerg Bornemann
7ec521a373 QProcess/Win: do not treat all negative exit codes as crash
Only exit codes that are likely to be in the range of
EXCEPTION_* and STATUS_* codes are treated as crash.

Task-number: QTBUG-28735

Change-Id: I36ae6dc4be28df0c6b6b7361df2c2d0203ee7919
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-03-13 17:25:07 +01:00
David Schulz
92f59be2b4 qmake: fix library path on windows.
Convert '/' to '\' in library pathes.

Change-Id: I0cf8a522a901199fddd59c863c932f214e1ab968
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2013-03-13 17:24:49 +01:00
Josh Faust
ebd8ca146d Fix size of HB_FontRec in qharfbuzz_copy_p.h
HB_FontRec was defined in qharfbuzz_copy_p.h as a void* typedef,
which is incorrect, and is the wrong size. This caused things
accessing QFontEngine data after an HB_FontRec to read from the
wrong offset. The visible consequence of this was incorrect text
rendering in OpenGL in Linux.

Task-number: QTBUG-29966

Change-Id: I71e6a6c5b4ef7b2c8a92631d2b9540537afc56b1
Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
2013-03-13 17:23:47 +01:00
Friedemann Kleint
cc58912acd Stabilize tst_qscroller on Windows.
Change-Id: I2331f140e19ed6a2f78e48c91c653f483d8f3347
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
2013-03-13 17:17:54 +01:00
Stephen Kelly
91cd2009bd Generate a Qt5ConfigVersion.cmake file.
This allows finding a minimum particular version of Qt 5.

Change-Id: I96112f1be90f397ec60a2b233989ac0e0380bef9
Reviewed-by: Alexander Neundorf <neundorf@kde.org>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
2013-03-13 16:07:09 +01:00
Stephen Kelly
7cf603e92e Fix openglextensions module depends.
It requires the QtGui module. Just remove the QT line and allow
the default to be used.

Change-Id: Ie6dffaa0621c7ececd31ff0b696814bc82a2a764
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
2013-03-13 16:07:01 +01:00
Jens Bache-Wiig
7b5ee9cb80 Improved appearance of mac toolbar handles
The old ones were too heavy and cluttered to fit on mac.

Change-Id: I5d9f1a8801992026af65af4c6b2aeae3a03a9f5c
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
2013-03-13 15:16:22 +01:00
Jens Bache-Wiig
99b032e132 Improve the look and feel of Mac extension arrow
This adds an improved extension arrow as well as a graphic
for retina macs.

Change-Id: Ie7395bbd87d6d354437bdbcc0cf258a27c09a360
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
2013-03-13 15:16:15 +01:00
Jens Bache-Wiig
51216956b2 Draw StatusBar with gradient on mac
We can safely remove code applying to 10.3 on mac.
We also should draw the gradient even on non unified toolbars.

Change-Id: Ia97c3c93daf7a711c3ce4b61b74a5eb1d914519b
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
2013-03-13 15:16:08 +01:00
Kevin Ottens
03e2ea2ac0 Add convenience for section actions in QMenu
Those actions are just separators having also text and potentially icon.
It is very convenient to create titled sections in a menu, or give a
title to a context menu.

Obviously requires support for them on the style side, but modern styles
like fusion or oxygen handle them just fine. For legacy styles it
properly falls back to a regular separator aspect. That's why a specific
style hint is also introduced. It is used by QMenu to know how the
sections will be treated and take care of them correctly when
eliminating duplicated separators or separators at the beginning of the
menu.

Change-Id: Iad00a93422b7983dc90dfc4b4b1c360122e47610
Reviewed-by: David Faure (KDE) <faure@kde.org>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2013-03-13 15:00:52 +01:00
Friedemann Kleint
bad1918cb4 Fix build with Windows SDKs pre 7.0.
Check whether the IShellLibrary interface exists.

Task-number: QTBUG-29447

Change-Id: I93fc54a1e6d5c090f7c1768c756571ba57a7b2d2
Reviewed-by: Andreas Holzammer <andreas.holzammer@kdab.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2013-03-13 14:55:53 +01:00
Jan Arve Saether
75614792fa Fixed bug in QTimeLine::setPaused(false)
The problem was that the elapsed timer was not restarted,
causing the currentTime() not being adjusted for the time
it was paused.

Task-number: QTBUG-30108

Change-Id: Ib9b2c5a0dea52762109e0b25f1068dd7c88e15ba
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
2013-03-13 14:51:05 +01:00
Friedemann Kleint
f75b7e78a3 Manual file test: Add permission and compile with Qt 4.8.
Change-Id: I604b3107d3e049af5cd14ae5bf5bd6785330eac7
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
2013-03-13 14:46:26 +01:00
Konstantin Ritt
39b4955da3 QTextEngine::itemize(): Minor optimization
Avoid using script_to_hbscript() in generateScriptItems()'s loop.
This is absolutely unnecessary due to hbscript_to_script(script_to_hbscript(..))
in QTextEngine::itemize().

Change-Id: I44e710d010f8e57043a6c74dd80f3164e95e18e6
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2013-03-13 14:46:26 +01:00
Konstantin Ritt
0194fa135b Hide Harfbuzz from the outer world
Don't export, don't generate private headers, don't mention HB in API.

Change-Id: I048ebd178bf4afaf9fda710a00933b95274cf910
Reviewed-by: Josh Faust <jfaust@suitabletech.com>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2013-03-13 14:46:26 +01:00
Konstantin Ritt
cfa663d62b Avoid using HB types in QFontEngine API
This affects HB_Font and HB_Face.

As of now, the Hurfbuzz API usage is concentrated in qfontengine(|_ft).cpp
and qtextengine.cpp, thus it is a lot easier to switch to Hurfbuzz-NG.

Change-Id: Ie06959efd5d6080fe44c407d9f5de0a07dd1c210
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Reviewed-by: Josh Faust <jfaust@suitabletech.com>
2013-03-13 14:46:26 +01:00
Stephen Kelly
d89fe1c7b3 Test that the ConfigVersion.cmake files work.
Invoking find_package with a version but without the version
file present results in an error.

Change-Id: I29d662081ad5dbd7b2259abeec06affda97cbb6a
Reviewed-by: Alexander Neundorf <neundorf@kde.org>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
2013-03-13 09:48:58 +01:00
Stephen Kelly
8cdcff460d Clean up the CMake dbus module test.
The DBus module is aware of its QtCore dependency, and it doesn't need
to be found explicitly. This test probably dates from when that was not
the case.

Change-Id: I3c78997660efed14d84b062d38d8c68dd4f7ae56
Reviewed-by: Alexander Neundorf <neundorf@kde.org>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
2013-03-13 09:48:26 +01:00
Friedemann Kleint
74494ea29e Fix building of the manual tests.
Adapt to API-changes, exclude network/SSL-tests for Windows.

Change-Id: I80d5ef1bd81e149a2f04fa7644376a8a88b1f7b9
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
2013-03-13 06:23:27 +01:00