Commit Graph

13650 Commits

Author SHA1 Message Date
Oswald Buddenhagen
9d48f14a3c always $-escape make commands
nmake needs %-escaping in addition to $-escaping, not instead.
this has little practical impact, so it went unnoticed.

Change-Id: I144b6142eec0151d83a22e0ac5ead7b0415cdafa
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2013-06-15 21:39:22 +02:00
Oswald Buddenhagen
c932f2cc13 fix command over-escaping in vcproj files
the vs ide executes the commands verbatim, so they must not be
make-escaped.

Task-number: QTBUG-31289
Change-Id: Ie73fd5c4da5527c2d10bc94ccdf60f8a1ca21351
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2013-06-15 21:39:17 +02:00
Oswald Buddenhagen
13e01fda19 assemble the tool commands at use time, after all
the precise syntax depends on what exactly the command is used for, so
we need to resolve it at the last moment. see followup commits.

This logically reverts commits 6f4ff81380
and 731e6bece5.

Change-Id: If285c91d7521069be86d32593b5c2ae2027b3038
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2013-06-15 21:39:12 +02:00
Shawn Rutledge
69554e4586 OSX: Disable window restoration for the Mac color panel
because if it is automatically restored it's out of the application's
control, so the user's interaction will be ignored.  Change
I8ce3cd94f5ae81d7877a346743ca4e0e188baa02 did this for normal windows
by default, but the dialog helpers generate windows which aren't
affected by that.

Task-number: QTBUG-31750
Change-Id: I636bd87b664a489a2dc8693dad5370a715b1cf7b
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
2013-06-15 19:06:26 +02:00
Shawn Rutledge
e083aede62 Cocoa color dialog cannot be modal, but should show anyway
Silently failing doesn't seem the right way to handle this.
Updated docs for DontUseNativeDialog option: it's not just for
the Mac anymore.  Ensure that the Qt dialog and Mac panel
will never be shown at the same time.

Change-Id: Ia9e80754df6c7622d9039c8dd050ac4de771a030
Task-number: QTBUG-29161
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
2013-06-15 19:06:21 +02:00
Shawn Rutledge
cf98d1e607 OSX color dialog can be accepted repeatedly
QNSColorPanelDelegate::finishOffWithCode sets mResultSet = true
and it needs to be set false again the next time the dialog is shown.

Task-number: QTBUG-31566
Change-Id: If1d4bb9d4e76273c6423f5bf2ae37790e8a9704e
Reviewed-by: Liang Qi <liang.qi@digia.com>
2013-06-15 19:06:17 +02:00
Peter Hartmann
dd050d35d7 network requests: do not access 1st byte of empty byte array
... because otherwise this would crash.
Apparently there are cases where the header name is empty.

Task-number: QTBUG-31667

Change-Id: I31b3e964502c05b7614c23876bb3752fa75ab22d
Reviewed-by: Richard J. Moore <rich@kde.org>
Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
2013-06-15 19:05:02 +02:00
Topi Reinio
19ed991e56 Doc: Remove Tweet Search demo from the list of highlighted examples
Don't highlight the example until it's updated to use a new version
of the Twitter API.

Task-number: QTBUG-31745
Change-Id: If7f9ac3391c549f48cfebcdbe6bdcd12eb4a3e13
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
2013-06-15 19:04:58 +02:00
Stephen Kelly
703cca8bb7 Adjust the cmake files to find the dlls in the bin dir.
Change-Id: I840f963c3648d123b31f79aa2c8902c0ad74e982
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
2013-06-15 19:04:53 +02:00
Shawn Rutledge
3e2cd8ef6f fix QFileSystemEngine::createDirectory race condition
During a call to QDir::mkpath(), the same path could be created
by another process, in which case the OS mkdir will fail with EEXIST.
But the docs for mkpath() state that it's not an error if it
already exists, whereas for mkdir() it is an error.  So
QFileSystemEngine::createDirectory should accept the EEXIST error
silently if it occurs while creating the sequence of parent directories
and the final leaf directory, but should fail if EEXIST happens when
it was called from QDir::mkdir(), which is when the createParents
parameter is false.  We assume the operating system mkdir() and
CreateDirectory() are atomic, so there should be no race condition
in QDir::mkdir().  It's not necessary for mkpath() to call stat()
at each level, only to check whether an existing entry is a directory
or a file.  Also added to the autotest to verify that if the
path is an existing file, creating a dir with the same name will
fail in either mkdir or mkpath.

Task-number: QTBUG-30046
Change-Id: I926352f10654fdf3b322c8685bb85ad8b8844874
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2013-06-14 16:57:57 +02:00
Friedemann Kleint
0bc96d1d6b Widgets: Do not create QWindow in createTLExtra().
QWidget::setWindowIcon() and similar call createTLExtra()
which creates a QWindow without setting the native attributes
on the parent, which can cause crashes when setParent_sys()
decides to delete the window.

Task-number: QTBUG-31672

Change-Id: I4c40ee12741be88b2281df90329ffb698d4009eb
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
2013-06-14 14:40:18 +02:00
Shawn Rutledge
b6f2442371 Fix another type of crash when dragging QDockWidget in and out
QDockWidgetPrivate::mouseMoveEvent calls q->move() which can result
in a call to QDockWidgetPrivate::endDrag(), which will delete the
state struct.  Therefore mouseMoveEvent needs to check whether it's
null or not before accessing it.

Task-number: QTBUG-31672
Change-Id: I91a31620f16a80b31b65b2742e7937ae8960f0fd
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2013-06-13 12:01:08 +02:00
Friedemann Kleint
443253cf11 Let QTemporaryDir::stressTest() run in temporary directory.
Task-number: QTBUG-31618

Change-Id: I60aaa4f57710816cd0e22ea9b097c7e85466fd0c
Reviewed-by: David Faure (KDE) <faure@kde.org>
2013-06-12 14:12:05 +02:00
Kai Koehne
eab6700ec0 Fix crash for pressing Ctrl+C in a message box
This fixes a regression introduced with e34dccc9e

Task-number: QTBUG-31635
Change-Id: I7c991f3b98f5c51e5fb3c12db04d3ace7be87010
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Mitch Curtis <mitch.curtis@digia.com>
2013-06-12 14:11:58 +02:00
J-P Nurmi
2d9cd8eef8 Fix xkbcommon.pri not to override QMAKE_CFLAGS
Task-number: QTBUG-31585
Change-Id: I6628a8eececc34aef4cd358ad2c8b246d8845602
Reviewed-by: Jani Heikkinen <jani.heikkinen@digia.com>
Reviewed-by: Andy Shaw <andy.shaw@digia.com>
2013-06-12 10:18:27 +02:00
Oswald Buddenhagen
6bf5ef044f remove overquoting of extra compiler arguments
qmake automatically escapes the ${expandos}.

Change-Id: If74b6d2f2c68ff50785fdcbb66351122a273051f
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2013-06-12 10:10:50 +02:00
Oswald Buddenhagen
7f6c864157 remove overquoting of extra compiler commands
the commands are already quoted appropriately for the shell.

Change-Id: I746bb5fba2cd6548c5dc7ef81087c69a200ecbb8
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2013-06-12 10:10:47 +02:00
Oswald Buddenhagen
aa3f1cc8c6 fix QMAKE_COMPILER fallback for clang specs
in the actual specs, we also set 'gcc' for clang.

Change-Id: Ifc6b27d56596f34c944205795d665f545d090f80
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
Reviewed-by: Jake Petroules <jake.petroules@petroules.com>
2013-06-12 10:10:44 +02:00
Oswald Buddenhagen
e2765098db don't claim that we need perl for shadow builds any more
amends 0a1b89bff, which took care only of the unix version.

Change-Id: Idb82881a9c47e67c973500721fd499bcf41a848b
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2013-06-12 10:10:41 +02:00
Gabriel de Dietrich
d8f4abec71 Cocoa: Make QWidget::showNormal() work on minimized windows
Cocoa sets the NSWindow hidden when it's minimized, and we don't
propagate that further to QWindow or QWidget (QWidget's 'visible'
documentation is quite ambiguous about that state).

The obvious fix is to check for QWindow's visibility. However, this
might need to be corrected later if we truly want the visible state
to be in sync.

Task-number: QTBUG-31117
Change-Id: I457452eff75e6ea746a0ef5351104f8bbb65f98b
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
2013-06-12 10:09:18 +02:00
Gabriel de Dietrich
bfab741cb7 Cocoa: Make sure internal minimized state is up to date
Refactors some code from previous changes addressing the same issue
for maximized and fullscreen states.

Change-Id: I8a27274a90e6610b424ea7af3269369a1d724c48
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
2013-06-12 10:09:16 +02:00
Gabriel de Dietrich
b8c007ede0 Cocoa: Update window state when maximizing from the title bar
There's no NSWindow notification we can listen to, but we can override
behavior from its delegate.

Change-Id: I61cebf4119f83c770fe4e7f45ff0d4e8bf9d0df9
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
2013-06-12 10:09:13 +02:00
Gabriel de Dietrich
7ee15bfbb8 Cocoa: Make sure we update internal window fullscreen state
We update the internal/synched state by assigning it its QWindow's
state. Since that one is not a flag, it can only be in one state at
a time, meaning that we may lose the maximized state (but we've been
losing it for some time).

Task-number: QTBUG-30139
Change-Id: Idf30713c6ae912cafe3bbdd7be18214cf4de34f7
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
2013-06-12 10:09:11 +02:00
Gabriel de Dietrich
3b5954e405 Cocoa: Remove compilation warning
Change-Id: Ib530e7ef4643de07aec91c4af0de8bbedef9882a
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
2013-06-12 10:09:07 +02:00
Jake Petroules
80d24a737a Update support status for older Mac OS X platforms.
Change-Id: Ifdf487fbae8acbffb32b6db5f8dd93e9eb213d77
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
2013-06-12 10:08:45 +02:00
Nico Vertriest
c47b665893 Qdoc: replaced example file qt.qdocconf with qtgui.qdocconf
Task-number: QTBUG-31574
Change-Id: Idf8509395dd5f16c696473d1eeb91fb86f2b97e7
Reviewed-by: Martin Smith <martin.smith@digia.com>
2013-06-12 10:08:32 +02:00
Kai Koehne
70cb5db4f2 Fix gcc warnings about unused-value
Fix multiple gcc warnings about statements in accessibleDebug arguments
have no effect.

Change-Id: I34bf05d911707f0b50592bf76442a3805c560d56
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
2013-06-12 10:08:17 +02:00
Gunnar Sletta
85b4f0d2d3 Avoid floating point exceptions in rasterizeLine.
Task-number: QTBUG-16757

Change-Id: I3ef988f1e039c12529d62197d85a62f201e4ae12
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2013-06-12 10:08:11 +02:00
Paul Olav Tvete
425af59f53 Disable long press on Android
Remove the mapping from press-and-hold to right-mouse-button
press. This logic was implemented in the android plugin, and
there was no way to disable it for applications that needed
to handle long presses in a different way.

Add an environment variable to enable the mapping for those
who really need it, but do not advertise it. (We want to
add a proper API for this in 5.2)

Task-number: QTBUG-31644

Change-Id: Ia5ae75d6147485b73c78b7c3fa88d11af5d84c06
Reviewed-by: BogDan Vatra <bogdan@kde.org>
2013-06-10 23:30:02 +02:00
Gunnar Sletta
900cccfd45 Fix drawing of 0-width polylines from outside the devicerect.
This was broken by a previous fix which aimed to fix gaps in
polylines with tiny line segments. The result was that we
skipped updating the origin point when stroke() didn't produce
pixels which accidentally included the case of the line
being completely outside the deviceRect. I fixed this
by returning the value of clipLine in drawLine to the caller
so we could still update the origin for this case.

Task-number: QTBUG-31579
Change-Id: Iac29436f042da7658bbeaf9370351dc6f2c95065
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2013-06-10 23:29:58 +02:00
Stephen Kelly
1937012b3e Don't test existence of private header directories for mac frameworks
These directories are not currently part of the Qt installation for mac
frameworks.

Task-number: QTBUG-31641

Change-Id: Ifef372cc2ebb692f9ae5a7b1f8dba5f683d1e7eb
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
2013-06-10 23:29:49 +02:00
Martin Smith
f2ea45363d qdoc: QGLFrameBufferObject::bindDefault() was marked \internal
The \internal is removed.

Task-number: QTBUG-31638
Change-Id: Ib1b65783599fe50e907373e3223a0774f17ac65e
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
2013-06-10 23:29:44 +02:00
Stephen Kelly
e1109df7a9 Remove the use of CMAKE_FIND_ROOT_PATH.
This is actually a list in CMake, not a value to be prepended
to paths. Specify the QT_SYSROOT instead to root the location
of include directories. CMake will soon get a CMAKE_SYSROOT
variable which will replace this.

Change-Id: I239f69f127f3676a3835aa4f29638f44ef209819
Reviewed-by: Volker Krause <volker.krause@kdab.com>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2013-06-10 23:29:40 +02:00
Fawzi Mohamed
d7b79ff3ef mkspecs/qml_plugin: adding -nonrelocatable flag to qmldump call
nonrelocatable adds the full uri to the exported type information
which is the correct thing to do for the qt plugins (and 99% of
the cases).
This way import bla.x 1.0 works correctly in the code model.

Change-Id: Ia06873dd8b2ea4627e3297a98e8df87275ceaf73
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2013-06-10 23:29:36 +02:00
Friedemann Kleint
a90d93285a Windows save file dialog: Set default suffix only once.
IFileDialog::SetDefaultExtension() needs to be called for the dialog to
automatically update the suffix when the user chooses a new file type.
Calling it IFileDialogEvents::OnTypeChanged as introduced by
42760e43ea causes it to use the previous
suffix when switching.

Call in setNameFilters() using the first available suffix instead.

Task-number: QTBUG-31381
Task-number: QTBUG-30748
Change-Id: Idd532e4190c752aa80abce963dd0389be7d22a34
Reviewed-by: Andy Shaw <andy.shaw@digia.com>
Reviewed-by: Oliver Wolff <oliver.wolff@digia.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2013-06-10 23:29:33 +02:00
Gatis Paeglis
b2a0a14370 Fix issue when QKeyEvent::text() was returning empty string
The code that sets 'text' variable was executed only for KeyPress
events. This patch moves 'text' initialization higher up where it
will be run for both - KeyPress and KeyRelease events.

Task-number: QTBUG-31285
Change-Id: I140de9ef5d29beedad276d348bed964ecdf46f9d
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
Reviewed-by: Andy Shaw <andy.shaw@digia.com>
2013-06-10 23:29:28 +02:00
Topi Reinio
074c5c94f6 Doc: Fixed snippet issues in QDoc documentation
QDoc uses .qdoc files as snippets in other .qdoc files. These snippet
.qdoc files are also parsed, which is not the intent. This change
resolves the issue by renaming the files to have a different
extension.

Task-number: QTBUG-31574
Change-Id: I399c8b714478b9c4b8fbe2db53f601e6a1386cea
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
2013-06-10 23:29:24 +02:00
Topi Reinio
45d8bf327e Doc: Mark QOpenGLFunctions_4_1_Core as a wrapper class
The class documentation missing the \wrapper command, making QDoc
complain a lot.

Change-Id: Iad8fa3d2facadfb3393642dc08ff4dc416bdccc7
Reviewed-by: Martin Smith <martin.smith@digia.com>
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
2013-06-10 23:29:17 +02:00
Oswald Buddenhagen
4fd568fa06 redo include path logic for pre-generated headers
make the include dir in the source tree the "main" include path, as
that's where the majority of the headers is. then selectively add the
shadowed dirs.

Change-Id: I03ad13cfcf77175c141b94d41b1221740d851faf
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2013-06-10 21:12:29 +02:00
Oswald Buddenhagen
f3331e14e6 reshuffle path setup
rename MODULE_PROFILE_DIR to MODULE_BASE_INDIR.
force MODULE_BASE_OUTDIR to be always the shadow of the above.
rename MODULE_BASE_DIR to MODULE_SYNCQT_DIR (the former is still
recognized for backwards compat with webkit).

the idea behind these changes is making the variable names and override
possibilities reflect their actual use.

Change-Id: Ica4062d7231a0ce13241670e0d0f43e6b1b97160
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2013-06-10 21:12:24 +02:00
Oswald Buddenhagen
81b942f0d1 use correct variable for library base path
Change-Id: I6d621db2c4d5365a9c9a7284026b464e663a4cc6
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2013-06-10 21:12:20 +02:00
Oswald Buddenhagen
f533941179 update some comments relating to forwarding module pri files
Change-Id: I3486f949fee2ac977e3cde669188790e5f4b3167
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2013-06-10 21:12:17 +02:00
Oswald Buddenhagen
b35ea875a1 put ANGLE includes in a QtANGLE subdir
otherwise even non-angle builds with pre-generated headers will get them
into their include path, which is Not Good (tm).

Change-Id: Ie98354297baf3564ef82b3d4a32e5763e625b8f2
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2013-06-10 21:12:13 +02:00
Oswald Buddenhagen
366d276f8c allow modules to extend their MODULE_{,PRIVATE_}INCLUDES
Change-Id: I5e401edbe891846579cf6d9ff84427d16783923b
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2013-06-10 21:12:09 +02:00
Oswald Buddenhagen
150408e37d don't process ANGLE and zlib headers like real qt modules
we run syncqt on them only to get normal forwarding headers and the
headers.pri file. the module master include header and the module
version header are useless, and scanning for qt class names just wastes
time.

Change-Id: I58e8d1eb36cea5c31cbd46ce673438316d1963dc
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2013-06-10 21:12:05 +02:00
Oswald Buddenhagen
69fa0012c7 use qtconcurrent instead of qtgui in test code
this works with -no-gui, and doesn't interfere with our upcoming ANGLE
hackery.

Change-Id: I2985cc0acd1fbf185b8967ffe58606b1b7dd9d1e
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
2013-06-10 21:12:01 +02:00
Thiago Macieira
ebea15cb33 QEventLoop: Remove the test that checked throwing from an event handler
In Qt 5, we declared that throwing from event handlers is undefined
behavior. So stop testing this.

We will try our best to capture and pass along std::bad_alloc, but even
that might not work, depending on compiler settings. In particular,
after the upgrade to MinGW/GCC 4.8 with DW2, this test stopped working.

Task-number: QTBUG-31615
Change-Id: Ibf5fb2ce0c48b983549096bf7aac434b6ed3ac2e
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2013-06-08 23:00:50 +02:00
Sergio Ahumada
9ef24ff8ed test: Mark tst_qopengl as insignificant on Win7 + Angle
This only marks tst_qopengl as insignificant on Windows 7 32bit
with the Angle configuration.

Task-number: QTBUG-31611
Change-Id: I1876b6fdc32fef93edf34c2bd61d03cc9ba11135
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@digia.com>
2013-06-07 18:07:26 +02:00
Allan Sandfeld Jensen
21356b3ec3 RecalcAdvances and DoKerning should agree on when to use design metrics
QFontEngineFT::recalcAdvances uses design metrics if hinting is disabled
or slight. QFontEngine::doKerning only follows the QFontEngine::DesignMetrics
flag. This means in some instances the advances will be calculated in
subpixels but kerned in full pixels.

This patch makes QFontEngineFT decide if it should request design metrics
from QFontEngine::doKerning or not.

Change-Id: Ia0236efde2d7269623f690a6074afbe26e07c458
Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
Reviewed-by: Pierre Rossi <pierre.rossi@gmail.com>
2013-06-07 18:07:21 +02:00
Friedemann Kleint
1828ab8557 Windows: Send a geometry change after Window creation.
Task-number: QTBUG-30996

Change-Id: I03b5e1fdbbdd779f86541291c13e9eb6840ff3c6
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
2013-06-07 11:47:12 +02:00