4 years agoStabilize tst_qabstractitemview
Marc Mutz [Tue, 10 Dec 2013 17:30:08 +0000 (18:30 +0100)]
Stabilize tst_qabstractitemview

Attempt to fix

 FAIL! : tst_QAbstractItemView::task200665_itemEntered() Compared values are not the same
    Actual (spy.count()): 0
    Expected (1) : 1
    Loc: [tst_qabstractitemview.cpp(1292)]

which might have been introduced by removing the absolute qWait(200) in favor
of qWaitForWindowExposed() in afe8e368, so trying to compensate with a

Change-Id: Id437acd810b54e005daaf66ffffd4dd586075ab6
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
4 years agoMove notification of layout change up from QApplication to QGuiApplication.
Robin Burchell [Thu, 5 Dec 2013 01:43:53 +0000 (02:43 +0100)]
Move notification of layout change up from QApplication to QGuiApplication.

QGuiApplication-using things (like QtQuick) need to know about this, too -- this
makes QGuiApplication::setLayoutDirection actually work.

Task-number: QTBUG-21573
Change-Id: I2d2ac7dc07f11be5c7e501a3575b1d0978d8ac31
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
4 years agoQProcess/Win: allow child processes to change modes of the stdin pipe
Joerg Bornemann [Mon, 9 Dec 2013 09:54:12 +0000 (10:54 +0100)]
QProcess/Win: allow child processes to change modes of the stdin pipe

To be able to call SetNamedPipeHandleState on stdin in a child
process, we must create a read-end pipe handle with the
This can't be done with CreateNamedPipe but only with CreateFile.
Therefore we're creating the handles for the child process always
with CreateFile now. Besides, it's conceptually cleaner to have the
server handle of the named pipe in the calling process.

[ChangeLog][QtCore][Windows] Fix regression from Qt4 in QProcess.
It wasn't possible anymore to alter pipe modes of stdin in child

Task-number: QTBUG-35357

Change-Id: I85f09753d0c924bdc8a6cef1ea5dbe6b2299c604
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
4 years agoWindows: Show context menu on mouse release.
Friedemann Kleint [Tue, 3 Dec 2013 11:45:29 +0000 (12:45 +0100)]
Windows: Show context menu on mouse release.

Introduce a hint to QPlatformTheme to control the behavior.

Task-number: QTBUG-35231

Change-Id: Ia28e153a8dd3f1931321a222d8906ca87166ed62
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
4 years agoQUdpSocket auto test: disable Socks5 over UDP for new test server
Peter Hartmann [Tue, 10 Dec 2013 10:15:34 +0000 (11:15 +0100)]
QUdpSocket auto test: disable Socks5 over UDP for new test server

... because they fail on the new test server. This commit can be
reverted once the Socks5 socket engine is fixed.

Task-number: QTBUG-35490
Change-Id: I85635d4b44d26168d40a56b7a121693297564f0f
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@digia.com>
Reviewed-by: Richard J. Moore <rich@kde.org>
4 years agoSSL: blacklist ANSSI intermediate certificate
Peter Hartmann [Tue, 10 Dec 2013 08:21:43 +0000 (09:21 +0100)]
SSL: blacklist ANSSI intermediate certificate

... because it was used to operate a man-in-the-middle proxy.

Task-number: QTBUG-35474
Change-Id: Ic7f19708b278b866e4f06533cbd84e0ff43357e9
Reviewed-by: Richard J. Moore <rich@kde.org>
4 years agoAdd QFileDialog::ShowDirsOnly to manual dialog test.
Friedemann Kleint [Tue, 10 Dec 2013 10:19:16 +0000 (11:19 +0100)]
Add QFileDialog::ShowDirsOnly to manual dialog test.

Task-number: QTBUG-35396

Change-Id: I6ccb59d6bd3857aea66911e03200f28d093e57b4
Reviewed-by: J-P Nurmi <jpnurmi@digia.com>
4 years agoDisable the eglfs input handlers by Environment variable
Dominik Holland [Mon, 9 Dec 2013 10:29:16 +0000 (11:29 +0100)]
Disable the eglfs input handlers by Environment variable

Added a Enironment variable to make it possible to disable the
automatic installation of EVDEV input handlers.

This is needed if you want to use your own generic plugin instead,
which also uses evdev

Change-Id: I17d47008c10999bf918db62a22a3b6a38d7abb80
Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
4 years agoStyles: Fix upRule used instead of downRule
Caroline Chao [Wed, 26 Jun 2013 11:51:08 +0000 (13:51 +0200)]
Styles: Fix upRule used instead of downRule

Change-Id: Icd157fa522836fab9128322f98b2916cfff35c61
Reviewed-by: J-P Nurmi <jpnurmi@digia.com>
4 years agoAdd mkspec for clang using libc++ on Linux.
Jürgen Hunold [Sat, 7 Dec 2013 13:37:10 +0000 (14:37 +0100)]
Add mkspec for clang using libc++ on Linux.

libc++ is an alternative stdlib implementation for clang.
See http://libcxx.llvm.org/ for further details.
The library is enabled by adding -stdlib=libc++ to the command line.

Change-Id: I07d09cbb69b59b579d3754c99d717d2ac6d44d67
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
4 years agoRemove unused -sse (CFG_SSE) option
Thiago Macieira [Sun, 8 Dec 2013 19:52:55 +0000 (11:52 -0800)]
Remove unused -sse (CFG_SSE) option

This is a left-over from the cleanup of MMX/3dNow!/SSE support, which we
no longer have in Qt.

Change-Id: I48388710a499bddb518ae3c2b8a4ad989482f58c
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
4 years agoCascade detection of SSE3 support and up
Thiago Macieira [Sun, 8 Dec 2013 19:58:44 +0000 (11:58 -0800)]
Cascade detection of SSE3 support and up

If SSE2 isn't supported, then SSE3 can't be either. Onwards and upwards
for SSSE3, SSE4.1, SSE4.2 and AVX. The test for AVX2 was already there.

Task-number: QTBUG-24773
Change-Id: I005258db52d8abcd407a99b8ebcc23cdea8e3d9f
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
4 years agoGitIgnore updates
Orgad Shaneh [Thu, 5 Dec 2013 08:36:00 +0000 (10:36 +0200)]
GitIgnore updates

* ANGLE artifacts
* qfeatures

Change-Id: I3cb8f78bf02119233f115ec53d536c05dd9776e7
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
4 years agoRemove unused function "quadraticRoots"
Thiago Macieira [Sat, 7 Dec 2013 06:35:29 +0000 (22:35 -0800)]
Remove unused function "quadraticRoots"

qbezier.cpp(122): warning #177: function "quadraticRoots" was declared but never referenced

Change-Id: I590f59ed6e41462d0a14a9239adb8bd0acbeeae4
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
4 years agoQWidgetTextControl: drop some actions when QT_NO_CLIPBOARD
Marc Mutz [Fri, 6 Dec 2013 19:30:10 +0000 (20:30 +0100)]
QWidgetTextControl: drop some actions when QT_NO_CLIPBOARD

Drop the Cut, Copy, and Copy Link Address actions from the context menu
for QT_NO_CLIPBOARD builds. This mirrors what QWidgetLineControl already

Change-Id: Icd6e92c044a11d336fb8d7fbf54b826712bd240e
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
4 years agoQMetaStringTable: make ctor explicit
Marc Mutz [Fri, 6 Dec 2013 19:25:12 +0000 (20:25 +0100)]
QMetaStringTable: make ctor explicit

Recent commit 105d10de introduced the QMetaStringTable(QByteArray) constructor,
but failed to mark it as explicit.

The argument, the class' name, is not an equivalent representation of a
string table, so mark the constructor explicit.

Change-Id: I2f141969400b98d3253283bd6fb0b9d18f2d53b3
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
4 years agoQPrintDialog - Fix Cups printer setup sequence
John Layt [Sat, 7 Dec 2013 19:17:52 +0000 (20:17 +0100)]
QPrintDialog - Fix Cups printer setup sequence

First set up the selected output format, printer and page size, and then
setup the selected job options.  This ensures all values are correctly
setup for the requested format and printer as not all settings may be
able to persist across the change in output format or printer.

Change-Id: I67f261f4e3be479a9018139633886ee8e570f42a
Reviewed-by: Andy Shaw <andy.shaw@digia.com>
4 years agoSimplify linking to different jpeg libs.
Mitch Curtis [Tue, 3 Dec 2013 14:38:50 +0000 (15:38 +0100)]
Simplify linking to different jpeg libs.

This makes it slightly more obvious which compiler should be used with

Task-number: QTBUG-23119

Change-Id: Ie3e5cf995d686bfa846902a040668716c8b5f526
Reviewed-by: Andy Shaw <andy.shaw@digia.com>
4 years agoWindows: Fix corner case where frameless windows would cover the taskbar.
Sérgio Martins [Fri, 6 Dec 2013 15:12:50 +0000 (15:12 +0000)]
Windows: Fix corner case where frameless windows would cover the taskbar.

In commit 0c936ca83c40b73f30195a619900f2be98b9e968 we fixed the case
where the window was maximized programmatically, but if the window gets
restored by clicking on the taskbar we don't get to set WithinMaximize
flag, since we immediately get the WM_GETMINMAXINFO request from Windows.

To reproduce the problem, run tests/manual/windowflags, remove frames,
maximize, minimize, and restore by clicking on the taskbar.

Task-number: QTBUG-8361

Change-Id: I8a7cf4fccbb2c3dac5f570848501ac1e8d2c2307
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
4 years agofix Windows CE comments
Joerg Bornemann [Mon, 9 Dec 2013 10:24:56 +0000 (11:24 +0100)]
fix Windows CE comments

Change-Id: Ib42c456c236f59727dddd6a111dfe0946fff1aef
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
4 years agoReinitialize the printer after changing the custom paper size
Andy Shaw [Sun, 8 Dec 2013 12:19:46 +0000 (13:19 +0100)]
Reinitialize the printer after changing the custom paper size

Task-number: QTBUG-34276
Change-Id: Ie382c39cb7b7b8307fcd1130702ca97e80e4a4f5
Reviewed-by: John Layt <jlayt@kde.org>
4 years agoQPageSetupWidget - Fix copying of printer settings
John Layt [Sun, 8 Dec 2013 10:13:01 +0000 (11:13 +0100)]
QPageSetupWidget - Fix copying of printer settings

Don't copy the dialog settings to the QPrinter before the Print button
is pressed, in case the Cancel button is pressed instead.  The settings
already get copied in the right place.

Change-Id: I84d0053b450cf5839bf1a879af013f305a8fd377
Reviewed-by: Andy Shaw <andy.shaw@digia.com>
4 years agoQPrintDialog - Fix setting of PageOrder
John Layt [Sat, 7 Dec 2013 23:16:45 +0000 (00:16 +0100)]
QPrintDialog - Fix setting of PageOrder

The print dialog was setting the PageOrder on the QPrinter as soon as
the check box was toggled and not when the Print button was pressed,
meaning the change is not forgotten when Cancel is pressed.

Change-Id: I19637b7efacfb5388c70d2e7d9d05a05ecc5b2ea
Reviewed-by: Andy Shaw <andy.shaw@digia.com>
4 years agoDon't check the Qt version across modules in -developer-build
Thiago Macieira [Wed, 4 Dec 2013 07:25:27 +0000 (23:25 -0800)]
Don't check the Qt version across modules in -developer-build

Instead of enforcing the check, we'll simply trust developers to do the
right thing. For one, it's useful to mix libraries during testing
(regression testing, git bisects, etc.). For another, Qt developers are
faced day-to-day with binary incompatibility issues anyway, so this
check is mostly superfluous.

If there's one commit we could be sure that isn't breaking binary
compatibility, that's the "Bump Qt version" commit. And yet that's the
one that would cause the fatal to trip...

Change-Id: I8965f764a6ca1b2d125b42bce7ac6b27e3afc8ac
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@digia.com>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
4 years agoRevert "Move the glxfbconfig configtest to qpa and rename it to glx"
Thiago Macieira [Sat, 7 Dec 2013 07:49:34 +0000 (08:49 +0100)]
Revert "Move the glxfbconfig configtest to qpa and rename it to glx"

This reverts commit a2d3b7c99165cb5c4be6f0dd83a967e1119cf732. That
commit broke -opengl es2 builds on Linux desktops (when GLX is

/usr/include/GL/gl.h:162:17: error: conflicting declaration ‘typedef double GLdouble’
qopengl.h:97:17: error: ‘GLdouble’ has a previous declaration as ‘typedef GLfloat GLdouble’

Change-Id: Id5f48c05803be1a8c03eeffca139b80e9a85a0eb
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
4 years agoFix quadratic behavior in QMetaObjectBuilder when writing string table
Simon Hausmann [Thu, 5 Dec 2013 15:59:27 +0000 (16:59 +0100)]
Fix quadratic behavior in QMetaObjectBuilder when writing string table

QHash::key() is O(n) and we're calling it n times. That can make repeated
calls to the meta object builder very slow, as for example QQmlPropertyMap
when inserting properties repeatedly.

Fortunately this is easy to fix, as the value in the hash map is also the
index, so we can simply iterate over the hash once. With the exception of
the class name, which we have to treat specially to ensure that it is always
the first entry in the string table.

Task-number: QTBUG-32720
Change-Id: Ic954c45c454107feee83216131f601cc69d4c63b
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
4 years agoWindows: Don't cover the taskbar when maximizing frameless windows
Sérgio Martins [Thu, 5 Dec 2013 14:48:10 +0000 (14:48 +0000)]
Windows: Don't cover the taskbar when maximizing frameless windows

Brings Windows QPA on par with other platforms.

[ChangeLog][Windows] Don't cover the taskbar when maximizing
frameless windows.

Task-number: QTBUG-8361
Change-Id: Iba35132f697cb7379650a4c883b616c5c2023d4c
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
4 years agoCorrect compiler warnings for sign conversion
Kurt Pattyn [Sun, 24 Nov 2013 13:00:19 +0000 (14:00 +0100)]
Correct compiler warnings for sign conversion

qstrlen() returns a uint. When assigned to an int, the compiler warns
about sign conversions. Because these calls are used within templates,
the code appears in user generated code, and hence the warnings cannot
be suppressed by the -isystem directive. Using the -Werror flag, makes
the user code fail.

[ChangeLog][QtCore] Fixed sign conversion warnings in code using QMetaTypeId.

Change-Id: Ib7603679d6526467f8cbb9d7bcf5f56c6af47ceb
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
4 years agoQCommandLineParser: pluck some low-hanging fruit re: exception safety
Marc Mutz [Sat, 5 Oct 2013 01:20:56 +0000 (03:20 +0200)]
QCommandLineParser: pluck some low-hanging fruit re: exception safety

have transaction semantics: either they succeed, or they change nothing.
It's trivial to provide this guarantee, so do it.

Add a test for the surprising property that setDefaultValue("") resets
defaultValues() to an empty QStringList instead of one that contains
the empty string.

Change-Id: I61623019de3c7d2e52c24f42cc2e23ec5fddc4da
Reviewed-by: David Faure <david.faure@kdab.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
4 years agoQTimeZone: Fix isValidId()
John Layt [Fri, 22 Nov 2013 14:03:14 +0000 (15:03 +0100)]
QTimeZone: Fix isValidId()

Fix isValidId() which was failing valid IDs because it was splitting
name parts by \ instead of /.  it was also rejecting offset from UTC
formats names.  Add unit tests.

Task-number: QTBUG-35025
Change-Id: I4d23d2e54f4a9fac9afcc4eff0a02d6f4af21385
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
4 years agoQSpinBox: allow positive values to be entered with the '+' prefix.
Mitch Curtis [Mon, 2 Dec 2013 12:08:37 +0000 (13:08 +0100)]
QSpinBox: allow positive values to be entered with the '+' prefix.

The code was there to do it, but it was using minimumValue instead of
maximumValue to test if the '+' should be allowed.

Task-number: QTBUG-20691

[ChangeLog][QtWidgets][QSpinBox] Entering positive values with the '+'
prefix is now allowed.

Change-Id: Iff62d073e350dc9a33b7e06e4b492048c74437c4
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
4 years agoFix bad CSS color: O (the letter) is not a valid hex digit
Thiago Macieira [Wed, 4 Dec 2013 20:38:37 +0000 (12:38 -0800)]
Fix bad CSS color: O (the letter) is not a valid hex digit

Found by: Tomaz Canabrava <tcanabrava@kde.org>
Change-Id: Ia1b5b00819cf4b145d1384aacbd54ed9a23aa6a3
Reviewed-by: Dirk Hohndel
Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
4 years agoReplace the qCpuHasFeature function with a macro
Thiago Macieira [Thu, 5 Dec 2013 01:14:07 +0000 (17:14 -0800)]
Replace the qCpuHasFeature function with a macro

We want to make sure that there's a constant propagation from the static
variable that is filled in with the current code-generation options.
With most compilers in debug mode, we'd carry dead code. With MSVC, even
inlining is really bad even in release mode, and it doesn't perform
constant propagation even with __forceinline.

Change-Id: I7a95ff6622b864771243990bb5e205b2df0c33fc
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
4 years agoMerge "Merge remote-tracking branch 'origin/release' into stable" into refs/staging...
Frederik Gladhorn [Thu, 5 Dec 2013 18:53:16 +0000 (19:53 +0100)]
Merge "Merge remote-tracking branch 'origin/release' into stable" into refs/staging/stable

4 years agoMerge remote-tracking branch 'origin/release' into stable
Frederik Gladhorn [Thu, 5 Dec 2013 16:42:33 +0000 (17:42 +0100)]
Merge remote-tracking branch 'origin/release' into stable


Change-Id: Iaba97eed2272bccf54289640b8197d40e22f7bf5

4 years agoProtect implementation of QNativeGestureEvent against QT_NO_GESTURES
Andy Shaw [Wed, 4 Dec 2013 19:53:30 +0000 (20:53 +0100)]
Protect implementation of QNativeGestureEvent against QT_NO_GESTURES

The definition and usage of QNativeGestureEvent had already been
protected against QT_NO_GESTURES but the implementation had been missed
out before.

Change-Id: Ie039e08257ad5eb7705342e4248b904f6ceca8df
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
4 years agoQTextEngine: fix layouting of inline objects in right-aligned tabs.
David Faure [Mon, 18 Nov 2013 17:52:26 +0000 (18:52 +0100)]
QTextEngine: fix layouting of inline objects in right-aligned tabs.

(same thing for center- and delimiter-aligned tabs)

The width of the inline object wasn't taken into account, the code in
QTextEngine::calculateTabWidth only looked at glyph widths.

Change-Id: I303a6561c67870ff2094a685698e642fc1b53b12
Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@digia.com>
4 years agoFix radial gradient shader compilation for OpenGL ES 2.0.
Carsten Munk [Wed, 4 Dec 2013 14:43:15 +0000 (08:43 -0600)]
Fix radial gradient shader compilation for OpenGL ES 2.0.

Change highp to mediump. This qualifier is ignored on desktop, and
mediump should be sufficient elsewhere.

Task-number: QTBUG-35353
Change-Id: I79f0ed88717d45dada5dcb781e75b10e72db4bd0
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
4 years agoDoc: Moved Books SQL Example documentation
Nico Vertriest [Wed, 4 Dec 2013 12:49:00 +0000 (13:49 +0100)]
Doc: Moved Books SQL Example documentation

Moved qdoc and image file to correct qdoc folder.
Added brief and ingroup statements to books.qdoc.

Task-number: QTBUG-34749

Change-Id: I5806ffd6f116cccf10238e3e1a9fc627ad0e93a9
Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
4 years agoDoc: Fixed broken link to General Qt Requirements
Nico Vertriest [Fri, 29 Nov 2013 11:32:58 +0000 (12:32 +0100)]
Doc: Fixed broken link to General Qt Requirements

Link fixed for OpenSSL

Task-number: QTBUG-34749
Change-Id: Ic72858c730400124fb3f09d887c827d93500338f
Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
4 years agoFix compilation for embedded Android
aavit [Mon, 11 Nov 2013 10:04:16 +0000 (11:04 +0100)]
Fix compilation for embedded Android

Change-Id: If42fd83a68543d59b5a3a6b89e2c402aa452b251
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
4 years agoiOS: Explicitly use libstdc++ when C++11 support is not enabled
Tor Arne Vestbø [Wed, 4 Dec 2013 13:21:27 +0000 (14:21 +0100)]
iOS: Explicitly use libstdc++ when C++11 support is not enabled

Otherwise Xcode might choose to use libc++, eg when the deployment target
is iOS7, and this doesn't work when Qt itself was built using libstdc++.

Change-Id: I0b0f36666ed318be9aae87ebaeb0d344109566ac
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
4 years agoqtbase: Fix build error on 64bit BigEndian platforms
Vicente Olivert Riera [Mon, 2 Dec 2013 13:59:34 +0000 (13:59 +0000)]
qtbase: Fix build error on 64bit BigEndian platforms

The functions fromBytesToWord() and fromWordToBytes() are called when
building on 64bit BigEndian platforms. It fails because those
functions are disabled on the source code. Enabling those functions for
64bit BigEndian platforms fixes the problem.

Task-number: QTBUG-35228

Change-Id: I5ccacd4fb5051df05f67c8da879b3a9e49953861
Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
Reviewed-by: Richard J. Moore <rich@kde.org>
4 years agoPrevent recursive resize events in QAbstractScrollArea
Tor Arne Vestbø [Wed, 4 Dec 2013 15:38:01 +0000 (16:38 +0100)]
Prevent recursive resize events in QAbstractScrollArea

During show() of a QAbstractScrollArea we might get resize events, which
results in laying out the children of the scroll area. One of these
children are the scrollbars, and raising them to the top means creating
them, which in turn means creating all parents, including the abstract
scroll area itself. Creating the abstract scroll area means creating
a platform window, which might send synchronous resize events as a
result of creating the window, and we end up recursing.

Change-Id: I1a2813f03091d6c42e51834315835551cb2fd621
Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
4 years agoFixed a bug where toolbars sometimes could not be docked.
Jan Arve Saether [Thu, 5 Dec 2013 09:25:23 +0000 (10:25 +0100)]
Fixed a bug where toolbars sometimes could not be docked.

Task-number: QTBUG-33839

Change-Id: I542fb894c31ce38509a70a71bd0ea1bc84bb2a03
Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
4 years agoiOS: Apply default geometry to platform window if not set on QWindow
Tor Arne Vestbø [Wed, 4 Dec 2013 15:35:28 +0000 (16:35 +0100)]
iOS: Apply default geometry to platform window if not set on QWindow

If a platform window is created from a QWindow without setting a valid
size or position on the QWindow, the platform window is expected to
apply sane defaults. We use the baseclass initialGeometry() function
for this, similar to other platform plugins.

The default geometry unless otherwise set and/or calculated based on
size hints is that of the screen's available geometry.

An improvement to this is to detect whenever we apply the screen
geometry, and also apply the appropriate window state, but that
needs more testing.

Change-Id: I02b12064ce6d55c04fe0cc2cd1d2816ca1113f40
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
4 years agoiOS: Don't claim that windows with zero width and/or height are exposed
Tor Arne Vestbø [Wed, 4 Dec 2013 15:32:47 +0000 (16:32 +0100)]
iOS: Don't claim that windows with zero width and/or height are exposed

When sending expose events to Qt, Qt will ask us if we're exposed,
and we need to tell it that we're not, so that clients will not try
to makeCurrent on a CA layer that has a zero width and/or height.

Note that this only works because we flush expose events.

Change-Id: Idfbe03a2f35681084061376a3c650a8da027fda4
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
4 years agoClear QCocoaGLContext's m_currentWindow when window is hidden.
Gunnar Sletta [Wed, 4 Dec 2013 11:03:33 +0000 (12:03 +0100)]
Clear QCocoaGLContext's m_currentWindow when window is hidden.

Task-number: QTBUG-35363
Change-Id: I1b3d883ed10200af8a2d4188fb1725b36eb78022
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
4 years agoDoc: Add QJsonObject::const_iterator() to correct group
Topi Reinio [Wed, 27 Nov 2013 11:07:57 +0000 (12:07 +0100)]
Doc: Add QJsonObject::const_iterator() to correct group

Make QJsonObject::const_iterator() part of the same doc
group as the non-const variant. Also add a \since
command with the correct value.

Task-number: QTBUG-33052
Change-Id: I97fa2cc44dae93decf2b99a1384e37579b7dac46
Reviewed-by: Mitch Curtis <mitch.curtis@digia.com>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
4 years agoAndroid: use binary name when using loadClass.
BogDan Vatra [Tue, 3 Dec 2013 13:02:24 +0000 (15:02 +0200)]
Android: use binary name when using loadClass.

QtAndroid::findClass uses loadClass methods to find Qt's java classes.
The documentation says that we should use a binary name.

Change-Id: I2146789235435b7052827cde58b7719b7d62dc1d
Reviewed-by: Christian Stromme <christian.stromme@digia.com>
4 years agoAnnounce the deprecation of platforms still using qoldbasicatomic.h
Thiago Macieira [Tue, 3 Dec 2013 01:58:25 +0000 (17:58 -0800)]
Announce the deprecation of platforms still using qoldbasicatomic.h

Change-Id: I480e182c2923754142bc54ff44f798b13bbe71e4
Reviewed-by: Tuukka Turunen <tuukka.turunen@digia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
4 years agoenable path replacement in installed prl files on all platforms
Oswald Buddenhagen [Mon, 25 Nov 2013 16:52:37 +0000 (17:52 +0100)]
enable path replacement in installed prl files on all platforms

Task-number: QTBUG-33794
Change-Id: Id0d38715673b8a1c0c034e9c15783eb255c4315b
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
4 years agoproperly replace windows paths in installed meta files
Oswald Buddenhagen [Wed, 20 Nov 2013 14:14:52 +0000 (15:14 +0100)]
properly replace windows paths in installed meta files

it's bogus in the first place that the meta files contain windows paths,
but straightening that out is a prohibitive effort. so instead generate
additional s/// commands which take care of these paths.

fwiw, the generated s///i command is a gnu extension. but as we are
doing this on windows only where we are using our built-in sed command
anyway, this should be fine.

Task-number: QTBUG-33794
Change-Id: I46fcc598db12816ee56b5371ab184f6277eb3a22
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
4 years agosupport s///i option in built-in sed
Oswald Buddenhagen [Wed, 20 Nov 2013 13:12:15 +0000 (14:12 +0100)]
support s///i option in built-in sed

Change-Id: I7521699a9b833c8b1d640a843b82f213952bba5a
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
4 years agodon't install modules-inst dir
Oswald Buddenhagen [Tue, 26 Nov 2013 16:02:59 +0000 (17:02 +0100)]
don't install modules-inst dir

for in-source builds, we end up attempting to install the modules-inst
dir in case we re-run qmake after some modules have been built.

Change-Id: I50d4d394bfd6f48b9a5f5faa584919710a03dea9
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
4 years agoDocument that disconnectNotify may be called with a mutex locked
Olivier Goffart [Thu, 21 Nov 2013 09:08:45 +0000 (10:08 +0100)]
Document that disconnectNotify may be called with a mutex locked

And that connectNotify and disconnectNotify might be called from
another thread

Task-number: QTBUG-34829

Change-Id: Id118b97b92e9aa085a1d4368282294f90cfb1706
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
4 years agoQComboBox: Don't do anything if wheel event delta is zero
Gabriel de Dietrich [Tue, 26 Nov 2013 18:42:50 +0000 (19:42 +0100)]
QComboBox: Don't do anything if wheel event delta is zero

This is a consequence of us wanting to show the OS X transient scrollbars
as soon as the user touches the trackpad with two fingers.

Task-number: QTBUG-35120
Change-Id: Icf63b0ec8c32ac66108822804bb06a0762547ef1
Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
Reviewed-by: J-P Nurmi <jpnurmi@digia.com>
4 years agoQStyle: Fix painting of pixmaps with non-integer devicePixelRatio
Eike Ziller [Wed, 27 Nov 2013 16:22:56 +0000 (17:22 +0100)]
QStyle: Fix painting of pixmaps with non-integer devicePixelRatio

For example QIcon can return pixmaps with non-integer devicePixelRatio,
if there is no pixmap that exactly matches the requested size.

Task-number: QTBUG-35125
Change-Id: I76bfa2766979a454c24b1abcf9e18930f5671c1e
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
4 years agoAndroid: Fix crash caused by QJNIs classLoader code.
Christian Strømme [Mon, 2 Dec 2013 13:56:50 +0000 (14:56 +0100)]
Android: Fix crash caused by QJNIs classLoader code.

In some cases the classLoader is not able to resolve fully-qualified
names that contains forward slashes. Unlike FindClass() which expects
the fully-qualified name to contain slashes, the classLoader expects
the binary name, i.e., with '.' as separator.

This caused a crash in QtMultimedia when accessing a nested class.

Task-number: QTBUG-35298
Change-Id: I77728352fbab930ae1914bc1cb2189e458e179e2
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
Reviewed-by: BogDan Vatra <bogdan@kde.org>
4 years agoiOS: move infoPlistValue to qiosglobal
Richard Moe Gustavsen [Tue, 26 Nov 2013 09:38:21 +0000 (10:38 +0100)]
iOS: move infoPlistValue to qiosglobal

Change-Id: If237f08683290105413dc47923e23a496765bb22
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
4 years agoiOS: don't show statusbar if hidden from Info.plist
Richard Moe Gustavsen [Tue, 26 Nov 2013 10:13:56 +0000 (11:13 +0100)]
iOS: don't show statusbar if hidden from Info.plist

Currently there is no way to always hide the statusbar
on iOS other than showing a window in fullscreen. This
patch will check if the statusbar is (initially) hidden
from the Info.plist, and respect that in the application.

SubAttack is an example of an app that (because
of styling issues with MainWindow margins) manually
sets the geometry larger than fullsreen, and calls
showNormal(). In that case we still want the statusbar to be

Change-Id: Ia365d14971978360d0b39621ff0f8f82f74b57e2
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
4 years agoiOS: Handle statusbar changes to child windows
Tor Arne Vestbø [Thu, 28 Nov 2013 12:09:44 +0000 (13:09 +0100)]
iOS: Handle statusbar changes to child windows

Going through the platform window failed when the parent wasn't created
yet. We can still get the window state of an yet-to-be-created top level

Change-Id: Iaa61ddc50df037ac0bd2fd0884884c2bfce1dd9a
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
4 years agoDoc: Adjust description of the qreal typedef
hjk [Thu, 28 Nov 2013 15:08:53 +0000 (16:08 +0100)]
Doc: Adjust description of the qreal typedef

Change-Id: I038df8034ee00868eeee18b1ed09f7a70e3dd77a
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
4 years agoRevert "Cocoa (OpenGL): If no view is attached, makeCurrent() should return false"
Morten Johan Sørvig [Thu, 28 Nov 2013 22:47:29 +0000 (23:47 +0100)]
Revert "Cocoa (OpenGL): If no view is attached, makeCurrent() should return false"

This reverts commit 2eb1e28a90eaf82f4405dc65584021f16415014b,
which makes several of the OpenGL examples crash on startup.
(textures, hellogl_es2)

Change-Id: Id47d2df6f57b2396c333e478b3c062f4cb4becb5
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
4 years agoiOS: fix assert when using QOffscreenSurface
Richard Moe Gustavsen [Wed, 4 Dec 2013 12:24:21 +0000 (13:24 +0100)]
iOS: fix assert when using QOffscreenSurface

Qt defaults to creating a QWindow as offscreen surface
if QPlatformIntegration::createPlatformOffscreenSurface
returns 0. Using an offscreen surface is often done
in a background thread, which is problematic, since then
a QIOSWindow will also be created in a background thread.
According to Apple docs, working with a UIView from other
threads than the main thread should not be done. In our
case, we instead hit an assert in QApplication that
checks for the same.

As a quick fix for Qt 5.2, we remove the offending call that
causes the assert, since we anyway will call the same function
lazily when becoming first responder.

Task-number: QTBUG-35378

Change-Id: Id35462f99783a9748c688b163f6497de9bfff73e
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
4 years agoiOS: Disable drag and drop completely instead of enabling simple d'n'd
Tor Arne Vestbø [Tue, 3 Dec 2013 14:37:49 +0000 (15:37 +0100)]
iOS: Disable drag and drop completely instead of enabling simple d'n'd

The drag and drop event filters do not play nicely with touch events
or virtual keyboards.

Task-number: QTBUG-35348
Change-Id: Id4d079ae72882f48750d394f13e10700d60e4532
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
4 years agoImprove expose event handling.
Morten Johan Sørvig [Mon, 25 Nov 2013 08:03:42 +0000 (09:03 +0100)]
Improve expose event handling.

Prevent the cocoa platform plugin from sending expose
events for windows that are off-screen or has invalid

Differentiate between initial exposes and geometry
update exposes, in order that e.g. geometry updates
that happen before setVisible() don't trigger expose
events. After the initial expose geometry updates
to and from invalid geometry will trigger obscure
and expose events.

Task-number: QTBUG-35143
Task-number: QTBUG-35091
Change-Id: Ibbff20c69974f098ea7635e9ca38620597840a05
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
4 years agoMake layoutDirection pass with new expose behavior
Morten Johan Sørvig [Mon, 2 Dec 2013 22:18:00 +0000 (23:18 +0100)]
Make layoutDirection pass with new expose behavior

A QMenu with no actions gets a size of (0, 0) on OS X.
With the new stricter expose event behavior this
is considered invalid geometry and the platform plugin
won't send an expose event, causing the qWaitForWindowExposed
test to fail.

Add a menu entry since the layoutDirection test is
not really interested in testing the special case of
empty menus.

Change-Id: I5221dc3f0472ac13edf821df08bacc3a4eb5cd9d
Reviewed-by: Simo Fält <simo.falt@digia.com>
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
4 years agoDoc: Corrected link to Graphicsview Examples
Nico Vertriest [Fri, 29 Nov 2013 12:36:38 +0000 (13:36 +0100)]
Doc: Corrected link to Graphicsview Examples

Task-number: QTBUG-34749
Change-Id: I66251e4b40e2930b08ed4bd932aef60aae7ebaa4
Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
4 years agoQBBSystemLocale: Do not set fixed buffer size when reading pps objects
El Mehdi Fekari [Mon, 18 Nov 2013 17:23:26 +0000 (18:23 +0100)]
QBBSystemLocale: Do not set fixed buffer size when reading pps objects

Set dynamically the buffer size when reading pps objects since a pps file
size is not always fix.

Change-Id: I48f80389161bfbce3342e53ceec0b13bb7df0e4c
Reviewed-by: Tony Van Eerd <tvaneerd@blackberry.com>
Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
4 years agoMinimal plugin: Use a dummy font database for command line tools.
Friedemann Kleint [Fri, 29 Nov 2013 11:06:45 +0000 (12:06 +0100)]
Minimal plugin: Use a dummy font database for command line tools.

Suppress warnings like:
QFontDatabase: Cannot find font directory '...' - is Qt installed correctly?
occurring for example when using qmlplugindump.

Add option flags (similar to Windows plugin) to the integration
class to be used for QT_DEBUG_BACKINGSTORE and other functionality.

Add a dummy font database with empty populate() function to be
used unless the debug flag for the backing store is used.

Task-number: QTBUG-33674
Task-number: QTCREATORBUG-10685
Change-Id: I7eaff3025de12e6b0471a3430f986b0cd810e22c
Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
4 years agoReport hardware acceleration in default manifest
Eskil Abrahamsen Blomfeldt [Wed, 4 Dec 2013 08:45:01 +0000 (09:45 +0100)]
Report hardware acceleration in default manifest

Qt applications require the "hardwareAccelerated" flag set on
some devices or Android versions. The symptoms that this was missing
was problems when handling orientation changes. When the target
SDK version is >= 14, it is true by default, but for lower versions
it is not. There is no reason to set this to false for a Qt
application, since we don't use any of the unsupported 2D drawing
operations in the documentation, so lets just set it to true for
all applications.

Task-number: QTBUG-35293
Change-Id: Ie131a52a2a3fc5a520d0c5dd5d64f79269e9b6b5
Reviewed-by: BogDan Vatra <bogdan@kde.org>
4 years agoadded buildsystem/qmake changelog
Oswald Buddenhagen [Mon, 2 Dec 2013 21:22:54 +0000 (22:22 +0100)]
added buildsystem/qmake changelog

Change-Id: Ic1549b97fd4f71ac41f66432d40ff12bfa9d6897
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
4 years agoiOS: fix crash when focusWindow changes while keyboard is open
Richard Moe Gustavsen [Mon, 2 Dec 2013 21:32:13 +0000 (22:32 +0100)]
iOS: fix crash when focusWindow changes while keyboard is open

It turns out we cannot rely on QGuiApplication::focusWindow() to
be non-zero at all times (e.g when pop-ups are closing etc).
So instead use m_focusView.qwindow which points to a
valid QWindow. This window is the same as QGuiApplication::focusWindow
most of the time, except when a focus window closes.
For those cases we get a new call to scrollRootView immediately
after with m_focusView updated to reflect the new focusWindow.

Task-number: QTBUG-35339

Change-Id: Icb3a8d3140af1f1904495a9289c8c26ab79e70f6
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
4 years agoiOS: fix crash when application quits
Richard Moe Gustavsen [Tue, 3 Dec 2013 12:55:20 +0000 (13:55 +0100)]
iOS: fix crash when application quits

An application will sometimes crash if the keyboard
is told to hide while the application is about to
quit. This patch will ensure that we set m_qioswindow
(and [UIView qwindow]) to 0 when the window is destroyed.
We also check this pointer before telling QUIView to
resign first responder when closing the keyboard. The
latter will fix the crash.

Task-number: QTBUG-35356

Change-Id: I934088beb7e877c5b33d96225cb215a8ffd4dbb2
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
4 years agoqdoc: Fix output filenames for QML basic type documentation
Topi Reinio [Tue, 3 Dec 2013 13:42:40 +0000 (14:42 +0100)]
qdoc: Fix output filenames for QML basic type documentation

qdoc intends to prepend all html files related to QML with
a 'qml-' prefix. This doesn't work for basic QML types, as
those nodes do not have valid qml module name information.

This change fixes the issue by removing the requirement
for a qml module name, thereby always using the qml
prefix for a qml (basic) type.

Task-number: QTBUG-35229
Change-Id: If61572b2dc8a39be08140c37aa59646b88e99b29
Reviewed-by: Martin Smith <martin.smith@digia.com>
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
4 years agoFix style animations to stop when the animation target is hidden
J-P Nurmi [Mon, 2 Dec 2013 21:23:11 +0000 (22:23 +0100)]
Fix style animations to stop when the animation target is hidden

QStyleAnimation automatically stopped for hidden QWidgets, but didn't
know anything about QQuickItems and kept animating regardless of their
visibility. This change ensures that style animations stop as soon as
the animation target no longer accepts the animation update eg. it has
become hidden or the window was minimized.

Task-number: QTBUG-35319
Change-Id: Ie48191fd918c626c0d9afe2e7d2390c495efb071
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
4 years agoRepack structs with more than one padding hole
Thiago Macieira [Mon, 30 Sep 2013 01:07:23 +0000 (18:07 -0700)]
Repack structs with more than one padding hole

Sizes gained (measured on 64-bit systems)
BezierEase: shrunk 8 bytes
QRegExpCharClass: shrunk 8 bytes
QRegularExpressionPrivate: shrunk 8 bytes
QTimeLinePrivate: shrunk 8 bytes
QUtcTimeZonePrivate: shrunk 8 bytes
QTextStreamPrivate: shrunk 8 bytes
QDirPrivate: shrunk 8 bytes
QFileDevicePrivate: shrunk 8 bytes

Not done:
QRegExpEngine: 18 bytes in 6 holes (you deserve high memory usage if
you're still using QRegExp)
QTextBoundaryFinder: 8 bytes in 2 holes (public class)
QIODevicePrivate: 6 bytes in 2 holes, but there's no gain in packing
QProcessPrivate: too complex and my copy is modified
QThreadData: awaiting change from Marc

Change-Id: I2a388b5ce17dec0dafcef18ed2e80d0379aa7d1e
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
4 years agoxcb qpa: initialize EGL for non-XLib builds
Andrew Knight [Mon, 2 Dec 2013 09:15:31 +0000 (11:15 +0200)]
xcb qpa: initialize EGL for non-XLib builds

Move the EGL initialization code outside of the XLib ifdefs, so it
can be enabled for non-XLib builds as well

Change-Id: Ie025551e4e99bb0b365f025356bd9725f4283b82
Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
4 years agoconfigure: Properly report xcb-xlib configuration
Andrew Knight [Thu, 28 Nov 2013 13:38:08 +0000 (15:38 +0200)]
configure: Properly report xcb-xlib configuration

d34cae51 introduced a new configuration parameter, xcb-xlib, but did not
remember to set the internal variable after the config test was run,
resulting in a potentially incorrect reporting of the option.

Change-Id: I979589d9aad2eb5e0fac069dfcd5b329a51ae059
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
4 years agoEffects also need to markDirtyOnScreen for native widgets
Gunnar Sletta [Tue, 3 Dec 2013 12:00:47 +0000 (13:00 +0100)]
Effects also need to markDirtyOnScreen for native widgets

Task-number: QTBUG-33244
Change-Id: I95427b1fd6edaafe99738acfec28f6fd37b70cde
Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
4 years agoqdoc: Replaced hard-coded href with computed href
Martin Smith [Mon, 2 Dec 2013 09:46:21 +0000 (10:46 +0100)]
qdoc: Replaced hard-coded href with computed href

For enum types that have QFlags versions, qdoc was
outputting the documentation with a hard-coded link
to qflags.html, which only workjed in the single
directory mode. When qdoc outputs modular documentation,
the href for the link should be "../qtcore/qflags.html" .
Now qdoc computes this href correctly before it writes
the docs. The href is no longer hard-coded.

Task-number: QTBUG-35209
Change-Id: Ibdf5b11dbd063726eb77048de78f8874c65752ca
Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
4 years agoiOS: fix application hangs when opening keyboard
Richard Moe Gustavsen [Mon, 2 Dec 2013 21:34:26 +0000 (22:34 +0100)]
iOS: fix application hangs when opening keyboard

QIOSInputContext controls QUIViews first responder status
based on whether or not the keyboard should be open.
But since QGuiApplication updates focusObject before
focusWindow (when e.g a popup closes), we sometimes ended up
activating the old window upon a call to becomeFirstResponder.
This in turn led the application to hang because of
recursive dependencies in qioscontext when the focus window

So the solution for now is to avoid activating the window
when the view becomes first responder. This should be
fine since we now activate the window from
QIOSWindow::requestActivateWindow (ref: 6272a816d1)

Task-number: QTBUG-35340
Change-Id: I3068c14fec18d84d4b0b348a043c4c054e366c75
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
4 years agoQtConcurrent: Workaround GCC bug 58800 in median calculation
Nikolai Kosjar [Fri, 29 Nov 2013 13:06:50 +0000 (14:06 +0100)]
QtConcurrent: Workaround GCC bug 58800 in median calculation

1) Revert 880b614 for libstdc++ <= 4.7.3 || (4.8.0 >= ... <= 4.8.2)
2) Fix off-by-one error in reverted code for Median::_bufferSize <= 2.

Task-number: QTBUG-35058
Change-Id: I9d226c2806c1cf06c3d5b9c9f371262d2d69bf2b
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
4 years agoStabilize tst_QGraphicsItem
Marc Mutz [Fri, 29 Nov 2013 09:06:20 +0000 (10:06 +0100)]
Stabilize tst_QGraphicsItem

The cursor() test was missing a QTest::moveMouse() before sending of the
mouse event (as all the following subtests do). When run on a desktop with
the panel on the left side of the screen, the mouse pointer would land over
the left item instead of in between them, as assumed by the subtest, and
the following QCOMPARE failed.

Change-Id: Ib74fdf0cfbfbc8ecb79a906610a2da5cb50c89d0
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
4 years agoiOS: Use DWARF instead of DWARF with dSYM for debug builds
Tor Arne Vestbø [Mon, 2 Dec 2013 11:44:14 +0000 (12:44 +0100)]
iOS: Use DWARF instead of DWARF with dSYM for debug builds

Generating the dSYM file takes a long time due to our relatively large
static libraries, and is not really useful for a debug build where you
are likely to have the object files and Qt libraries available on your
host system for debugging anyways.

Change-Id: Ie7549975f271de8c56ca04bd28b29e6ed65f16cb
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
4 years agoRevert "configure: Abort if Xlib isn't present when building for XCB."
Oswald Buddenhagen [Wed, 13 Nov 2013 18:14:45 +0000 (19:14 +0100)]
Revert "configure: Abort if Xlib isn't present when building for XCB."

the change is wrong for multiple reasons:
- it is possible to build qt (the offscreen plugin) with xlib but
  without xcb, which was impossible after the change
- the check was built in a way that if xcb is auto-detected but xlib is
  missing, configure would abort (instead of disabling xcb), which is
  unreasonable (cf. linked task)
- it should be possible to build the xcb plugin without xlib - it's
  testing for xcb-xlib and should have the correct #ifdefs. if these are
  broken, they should be fixed. if this is unrealistic, the build system
  should be adjusted to this fact ... differently.

This reverts commit 683451e7c74d23abb0268a187d28cf7dc7afd032.

Task-number: QTBUG-34382
Change-Id: I1c5811e2fb1f09b084b6aeb7350e5f376e1b9b82
Reviewed-by: Nicolás Alvarez <nicolas.alvarez@gmail.com>
Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
4 years agoUse Q_QDOC for Qt namespace declaration in Qt Gui
Topi Reinio [Fri, 29 Nov 2013 14:51:12 +0000 (15:51 +0100)]
Use Q_QDOC for Qt namespace declaration in Qt Gui

This is a workaround for letting qdoc to successfully
generate documentation for the Qt namespace. qdoc
doesn't properly handle multiple declarations for the
same namespace spread across multiple modules.

Task-number: QTBUG-35230
Change-Id: I449b17e1171d1a4481b9cf07cd48c803feed5be9
Reviewed-by: Martin Smith <martin.smith@digia.com>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
4 years agoStabilize tst_QColumnView::dynamicModelChanges().
Friedemann Kleint [Tue, 3 Dec 2013 08:01:50 +0000 (09:01 +0100)]
Stabilize tst_QColumnView::dynamicModelChanges().

Use QTest::qWaitForWindowExposed() and QTRY_COMPARE() instead of
hardcoded timeout.

Task-number: QTBUG-35308
Change-Id: I27eee9932dd3b6087db4ad13b1a4fb184a487f57
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
4 years agoCocoa: Mouse enter events on window activation.
Christoph Schleifenbaum [Mon, 25 Nov 2013 18:45:06 +0000 (19:45 +0100)]
Cocoa: Mouse enter events on window activation.

This patch tells the window system that it should create a mouse enter
event if a window was activated when the mouse was inside. This wasn't
working and was a regression.

Task-number: QTBUG-35109

[ChangeLog][Cocoa] Fix enterEvent not being called on activate.

Change-Id: I4e4662b4a4c58dafa8d0a2c09458ab88f678d243
Reviewed-by: Liang Qi <liang.qi@digia.com>
4 years agoAdd PBXCopyFilesBuildPhases to main target, not preprocessing step
Tor Arne Vestbø [Tue, 26 Nov 2013 13:48:02 +0000 (14:48 +0100)]
Add PBXCopyFilesBuildPhases to main target, not preprocessing step

Otherwise the 'Wrapper' destination of the PBXCopyFilesBuildPhase
will be empty, and the files end up outside of the application

Task-number: QTBUG-34457

Change-Id: I799db28185a6c5d3d940602914fd8ba14c538bf2
Reviewed-by: Caroline Chao <caroline.chao@digia.com>
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
4 years agoDefault to 5.2 source repository for Qt 5.2.x
BogDan Vatra [Mon, 2 Dec 2013 14:48:18 +0000 (16:48 +0200)]
Default to 5.2 source repository for Qt 5.2.x

We can't use latest anymore because the qreal change
is not back compatible and all the apps that used latest
will stop to run when Ministro will upgrade the libs.

Change-Id: I5286e72eccf86b4dead773a637aa28e29d120605
Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
4 years agoUse case insensitive comparison when checking platform plugin keys.
Friedemann Kleint [Fri, 29 Nov 2013 11:35:52 +0000 (12:35 +0100)]
Use case insensitive comparison when checking platform plugin keys.

Change-Id: Iff44698dcc941ca244b476f0e6c6a993f2ad75f3
Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com>
Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
4 years agoDoc: invalid reference to Qt for Linux/X11
Nico Vertriest [Thu, 28 Nov 2013 13:04:14 +0000 (14:04 +0100)]
Doc: invalid reference to Qt for Linux/X11

Task-number: QTBUG-34749

Change-Id: I8274e41bc4c29650b22bb6ca5da264687aa70e4a
Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
4 years agoDoc: fixed invalid reference
Nico Vertriest [Thu, 28 Nov 2013 13:03:01 +0000 (14:03 +0100)]
Doc: fixed invalid reference

Link to "Getting started with qmake" was invalid

Task-number: QTBUG-34749

Change-Id: I782dc99f5182f2fe7661377eb82f35ebb50a46cf
Reviewed-by: Martin Smith <martin.smith@digia.com>
Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
4 years agoavoid vcX0.pdb files for qmake
Oswald Buddenhagen [Thu, 21 Nov 2013 13:33:01 +0000 (14:33 +0100)]
avoid vcX0.pdb files for qmake

let the compiler use qmake.pdb, as the linker will.

Change-Id: Ifafdfeff5a7d0ea91d796f76fbdc018c87cf8b78
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
4 years agodon't install qt dlls into lib/ any more
Oswald Buddenhagen [Wed, 27 Nov 2013 16:58:02 +0000 (17:58 +0100)]
don't install qt dlls into lib/ any more

bin/ is entirely sufficient.

Change-Id: Id587e0e97b46aa977dae59baaea02ecc6e64a67a
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
4 years agomake compiler use the project's pdb file
Oswald Buddenhagen [Mon, 18 Nov 2013 20:39:43 +0000 (21:39 +0100)]
make compiler use the project's pdb file

this avoids the nasty and conflicting vcXX0.pdb files in the build dirs.
VS will already do that.

Change-Id: I7bddaecf3f478edc78cd6654b5a1038db4fe04ff
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
4 years agocomplete implementation of force_debug_info
Oswald Buddenhagen [Mon, 18 Nov 2013 20:39:08 +0000 (21:39 +0100)]
complete implementation of force_debug_info

that means further detaching the generation and installation of debug
info from the thing calling itself A Debug Build.

Task-number: QTBUG-32412
Change-Id: I4d79d1ae4806c8e4a2d6a7ccd030fb88385dd7d4
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
4 years agodisable incremental linking for release_with_debug_info builds
Oswald Buddenhagen [Mon, 18 Nov 2013 20:46:20 +0000 (21:46 +0100)]
disable incremental linking for release_with_debug_info builds

it's very unlikely that these artifacts will need rebuilding during a
debugging session (these pdbs are meant to support crash dump analysis).

Change-Id: Ia8138f9298355b402d8dd3f042f85b669693de64
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>