Rafael Roquetto [Fri, 8 Jun 2012 13:20:35 +0000 (15:20 +0200)]
Support other platform names on configure.exe
Added three new methods, which are meant to be used internally to
configureapp.cpp:
- int platform(): returns an integer representing a platform
- QString platformName(): returns the platform name string to be used when
displaying the license agreement.
- QString qpaPlatformName(): returns the value to be defined as
QT_QPA_DEFAULT_PLATFORM_NAME.
Currently supported names are Windows, Windows CE, QNX and Blackberry. Default
is "Windows".
Change-Id: Ifa4d1b9c02cda956be9becdf8db195d3d494f1d5
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Rafael Roquetto [Fri, 8 Jun 2012 12:20:45 +0000 (14:20 +0200)]
Fix arch detection when cross compiling on Windows
When trying to detect the target architecture, configure.exe will look for a
file called 'arch.exe'. However, in some situations such as when
cross-compiling on a Windows host to a Unix host, and depending on the
toolchain being used, the output file generated by config.tests/arch may
simply be called "arch" instead of "arch.exe", causing configure.exe to fail.
This patches configure.exe to handle both naming schemes.
Change-Id: I5798f716d732388c707564d4d45c4887ab3d3d9f
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Bradley T. Hughes [Fri, 8 Jun 2012 11:32:22 +0000 (13:32 +0200)]
Cocoa: do not terminate applications prematurely
Re-enable application termination as it was in Qt 4.
QApplication::exec() must return to main() so that the destructors in
main() are run.
The QApplicationPrivate::canQuit() function from Qt 4's
qapplication_mac.mm is gone, so bring back this function in
QCocoaApplicationDelegate instead.
Change-Id: I1c21894d59061687c36ab49bcb2e4e3ae0752fa4
Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
Morten Johan Sorvig [Fri, 8 Jun 2012 11:12:59 +0000 (13:12 +0200)]
Cocoa: Compile when configured with -no-widgets
Build printing only if Qt is configured with
widget support.
This is mostly useful for testing -no-widgets builds.
Change-Id: I2d47b420e311869e85508db1f7372fe326617dec
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
Laszlo Agocs [Mon, 11 Jun 2012 09:27:05 +0000 (12:27 +0300)]
Clarify QTouchEvent docs
Mention something about touch handling with QWindow and document the
non-partialness of touch events which has been taken for granted since
4.6, but has not been documented at all.
Change-Id: I9ec75f74153bbc28e146b000d70fb26384e497a3
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Girish Ramakrishnan [Wed, 6 Jun 2012 20:57:09 +0000 (13:57 -0700)]
eglfs refactor: move window creation into qeglfswindow
This potentially allows the creation of multiple QWindows. The platform
context is now in a seperate file and the integration provides a new
instance of the context allowing creation of multiple contexts.
Change-Id: If2b6fa29b573d87c0a4cd0a8eff1f044bd1ff9b8
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Thiago Macieira [Thu, 31 May 2012 15:49:10 +0000 (17:49 +0200)]
Enable compilation of improved x86 code generation with MSVC
Now that we know the compiler flags for asking MSVC to produce SSE2 code
properly as well as AVX code (technically, just VEX-prefixed SSE2), we
may as well use it.
The SSE2 code generation is enabled by this commit. The AVX one
requires a change to configure to detect the support in the compiler.
Change-Id: Ib6970daaedf450500ee73600e6bf9722eddb9a0c
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Thiago Macieira [Thu, 31 May 2012 13:51:59 +0000 (15:51 +0200)]
Move the AVX and SSE tests to config.tests/common
This is the first step in supporting these checks on Windows.
Change-Id: I77cfd46bd733161ad2e52c2f76a6354b95ff737d
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Thiago Macieira [Thu, 31 May 2012 12:58:53 +0000 (14:58 +0200)]
Move the SSE2/AVX/Neon/etc. flags into the compiler mkspecs
This allows us to have different flags for the compilers for
supporting the same feature. For example, the official flag in GCC to
support AVX2 is -mavx2, but ICC does not support it (yet), requiring
-march=core-avx2 or -xCORE-AVX2. That flag, instead, enables support
for all the features that the "Core-AVX2" processor (codename Haswell)
will support. And clearly, the MSVC flags are different.
Change-Id: I33b6d8617520925e807747180a8dbaafd79b7a9a
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Casper van Donderen [Mon, 11 Jun 2012 10:54:42 +0000 (12:54 +0200)]
QDoc: Also allow dependant modules to be specified on CLI.
Change-Id: I25dfbadc788616a864ecbf322434a3ce45bb94e5
Reviewed-by: Martin Smith <martin.smith@nokia.com>
Martin Smith [Mon, 11 Jun 2012 09:29:31 +0000 (11:29 +0200)]
qdoc: Better error messages for QML command errors
Some error messages were not clear for these qdoc commands: \qmlclass,
\qmlmodule, \inqmlmodule, and \qmlproperty. They have been made clearer
now.
Also, qdoc now parses input files in the same order all the time now.
The order is alphabetic now. This might not be the optimal order.
Change-Id: Id53a5ec8105009c71f4bbd41973a54aed7821099
Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
Thiago Macieira [Thu, 24 May 2012 12:30:42 +0000 (14:30 +0200)]
Add a unit test to QSharedPointer being deleted by a C++11 lambda
This already worked, but let's have a test so we can be sure it doesn't
regress.
Change-Id: I358b436d216e3ec4310f05ccf4f70f9e7aad3281
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Sean Harmer [Sun, 10 Jun 2012 17:23:28 +0000 (18:23 +0100)]
Correctly detect blackberry mkspecs as cross-compiling for QNX
Change-Id: Ibcede225a0d6e421c086dba3cca5b0fcbeeafa68
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
James Turner [Fri, 8 Jun 2012 14:41:12 +0000 (15:41 +0100)]
Fix Mac menu-merging case-sensitivity.
Use case-insensitive string comparisons to deal with any combination of case in the target or menu text correctly. Fixes issues reported by BHughes in TextEdit and Creator.
Change-Id: Ic3b577bf9034659b2de4aa206757b3a5a303a7b8
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Girish Ramakrishnan [Fri, 8 Jun 2012 22:08:27 +0000 (15:08 -0700)]
configure: remove unused PLATFORMS variable
PLATFORMS is unused. Also remove the loop that printed all the
PLATFORMS when the mkspec couldn't be autodetected. Even if the
PLATFORMS variable was moved up, it wouldn't work anyway since
it detects files and not directories.
Change-Id: Id483c431a179fb01fcf680538e28c81763bc0b90
Reviewed-by: Donald Carr <donald.carr@nokia.com>
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Christoph Schleifenbaum [Fri, 1 Jun 2012 08:16:59 +0000 (09:16 +0100)]
Deprecate QMainWindow::unifiedTitleAndToolBarOnMac
Update documentation. Implementation is left for
now.
There is currently no replacement; once we have
that in place we'll update the docs agin to point
to it.
Change-Id: I8b4532702938398dc5b4eef5da2b3f9dfb68382f
Reviewed-by: Christoph Schleifenbaum <christoph.schleifenbaum@kdab.com>
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
Morten Johan Sorvig [Fri, 8 Jun 2012 10:57:04 +0000 (12:57 +0200)]
Remove QtWidgets include.
Change-Id: I39ff73ce0dbfe36634b5331538165e636f62e57c
Reviewed-by: Kent Hansen <kent.hansen@nokia.com>
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
Morten Johan Sorvig [Fri, 8 Jun 2012 10:55:55 +0000 (12:55 +0200)]
Cocoa: Remove QtWidgets dependencies.
Make the file/color dialog helpers use QCoreApplication::
translate("QDialogButtonBox", text) instead of
QDialogButtonBox::tr(text)
Change-Id: I7ee4c32f8f8b9cd002836e24b962ef1c0f2e0737
Reviewed-by: Kent Hansen <kent.hansen@nokia.com>
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
Jeremy Katz [Thu, 7 Jun 2012 12:13:14 +0000 (14:13 +0200)]
update QStandardPaths::standardLocations() documentation
Remove the reference to PATH, as it may confuse developers who expect
a separator between locations. The ordering has been made explicit,
including the position of writableLocation() if it can be determined.
Note that some implementations may allow the empty string.
Change-Id: I134db44dd8bea437824a1d0bf8ed373ec655ab04
Reviewed-by: David Faure <faure@kde.org>
Debao Zhang [Wed, 6 Jun 2012 01:54:09 +0000 (18:54 -0700)]
Make qmetaobject autotest independent of QtWidgets
Change-Id: I4340036a4e6024d9b8d0c7832ad7bfb28ec4bc99
Reviewed-by: Kent Hansen <kent.hansen@nokia.com>
Lars Knoll [Fri, 1 Jun 2012 22:38:48 +0000 (00:38 +0200)]
Use QCollator in QString and remove it from qlocale_icu
Change-Id: Ic94439943999382f8050668edfb67d3b75ac1df4
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Lars Knoll [Fri, 1 Jun 2012 21:09:31 +0000 (23:09 +0200)]
Add proper collation support to Qt
QString::localeAwareCompare() has always been a broken
way to support collation. The current implementation is
not even thread safe.
This adds a proper collation class that fixes the problems
and finally allows Qt to sort properly according to locale
rules.
The class is private for now, but is intendent to be made
public with 5.1
Change-Id: Idb4e75ff68a398c9813af622af884a90898d2be9
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Lars Knoll [Fri, 1 Jun 2012 15:51:06 +0000 (17:51 +0200)]
Refactor the ICU code for QLocale
Clean up the ICU code and make it thread-safe. Add a
QIcuData structure to QLocalePrivate, that contains
ICU specific data.
Link against ICU directly, greatly simplifying the
code.
Also fix a bug in the locale specific case conversion
code that would cause it to fail and fall back to the
QString code if the output string was larger than the
input.
Change-Id: Ie67e5ea14fa204ebc5887d7aaeb1a4f3ecaf8697
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Konstantin Ritt [Sun, 3 Jun 2012 01:17:43 +0000 (04:17 +0300)]
Regenerate the Unicode tables with UCD 6.1.0
Task-number: QTBUG-1963
Task-number: QTBUG-5472
Task-number: QTBUG-12144
Task-number: QTBUG-18360
Task-number: QTBUG-23654
Change-Id: Ida09ad657c4b012eca654fcb79608b7cdeb5d60d
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Konstantin Ritt [Thu, 31 May 2012 10:04:32 +0000 (13:04 +0300)]
Line Breaking Algorithm: handle the Object Replacement Character
See http://www.unicode.org/reports/tr14/#CB
and http://www.unicode.org/reports/tr14/#LB20 for details
Change-Id: Ice0aa2b2ce81f6e39839a353240420436eddd754
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Konstantin Ritt [Thu, 31 May 2012 10:03:51 +0000 (13:03 +0300)]
Line Breaking Algorithm: don't break inside numeric expressions
Change-Id: I8362663454e4c6604ecb6289ae8009d47c78aeb1
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Konstantin Ritt [Thu, 7 Jun 2012 22:34:14 +0000 (01:34 +0300)]
Update the Unicode Text Breaking Algorithm implementation tests
* The Line Breaking Algorithm implementation conformance tests has been added;
* The Grapheme, Word, and Sentence Breaking Algorithm implementation
conformance tests has been updated.
Change-Id: Ia1a6eef6272d580964cb23788ddf30dfd5f4a5a3
Note: the Line Break test data contains some extended cases we don't currently support;
just skip them for now.
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Konstantin Ritt [Thu, 7 Jun 2012 22:30:04 +0000 (01:30 +0300)]
Update the Unicode Text Breaking Algorithm implementation
to make it conformant to the Unicode 6.1 specifications #14 and #29.
The most important changes are:
* The implementation has been reworked from scratch to fix all known bugs;
* Separate-out the grapheme and the line breaking implementation to eliminate
an overhead due to calculating unnecessary breaks;
* Stop using deprecated SG class in favor of resolving pairs of surrogates;
* A proper support for SMP code points;
* Support for extended grapheme clusters (a drop-in replacement for the legacy
grapheme clusters as of Unicode 5.1);
* The hardcoded tailoring of UBA has been eliminated which breaks the 7 years-old
lineBreaking test. Some later, we'll investigate if such a tailoring is still needed.
Change-Id: I9f5867b3cec753b4fc120bc5a7e20f9a73d89370
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Konstantin Ritt [Sat, 9 Jun 2012 18:22:24 +0000 (21:22 +0300)]
Update the Unicode related autotests
Update NormalizationTest.txt data file with one from UCD 6.1;
Add few more QChar::unicodeVersion() testcases;
Add some line break class mapping testcases;
Add some exceptional case mapping testcases;
Add script class mapping test;
Change-Id: I164394984abb2b893c8db62fb77e7bd87aa0850b
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Konstantin Ritt [Fri, 25 May 2012 00:20:48 +0000 (03:20 +0300)]
Update the Unicode data files up to v6.1.0
Change-Id: I20b94634b1f4ebff10757c2348cfdbbd906e8797
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Konstantin Ritt [Sun, 3 Jun 2012 01:17:10 +0000 (04:17 +0300)]
Update the qunicodetables generator to deal with UCD 6.1 files
Change-Id: If22018ff83cfc6b9c984f689648da038fce11d84
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Thiago Macieira [Fri, 30 Dec 2011 16:55:23 +0000 (14:55 -0200)]
Reorganise the painting.pri file after the last round of cleanups
Change-Id: I35f5356fc59d109074d39c4fafd608540743479a
Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>
Kai Koehne [Wed, 6 Jun 2012 18:11:50 +0000 (20:11 +0200)]
Logging: Remove outdated QMessageHandler
Commit
d9a1c2dff replaced QMessageHandler with QtMessageHandler. However,
the old signature was still supported for a grace period.
Change-Id: I3141499efdc749460b77de1ceec82f312e904bec
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Kent Hansen [Tue, 5 Jun 2012 11:13:20 +0000 (13:13 +0200)]
Make qpointer autotest build without widgets
Change-Id: Ibd05a49174e7055faa89c48659130a11418b9616
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Reviewed-by: Debao Zhang <dbzhang800@gmail.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Johannes Zellner [Sun, 10 Jun 2012 01:40:33 +0000 (18:40 -0700)]
evdevmouse: send correct event position for wheel events
The current position for mouse events is synchronized in the mousemanager,
thus the wheel event needs to pick the event position from there.
Change-Id: I1e73a0154b596885c7092f0a74e6dd448deb428c
Reviewed-by: Laszlo Agocs <laszlo.p.agocs@nokia.com>
Thiago Macieira [Wed, 30 May 2012 12:48:26 +0000 (14:48 +0200)]
Add support for the x86intrin.h header on GCC systems.
This header can be included at any time on x86 systems and is present
since the GCC versiosn that also support AVX. It contains intrinsics
for instructions that have been present in x86 CPUs since the dawn of
time.
Change-Id: I9adb066c2c0b56ce8fd5ed7366716038f1254502
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
Thiago Macieira [Wed, 2 May 2012 12:49:31 +0000 (14:49 +0200)]
Use UTF-8 in the QtTest data and benchmark tags
Future-proofing. Since Qt source code is now mandated to be in UTF-8,
it is entirely possible that someone will use non-ASCII in data tags.
Though it would be interesting to see how to access them from the
Windows command-line.
Change-Id: I880fc312432b62143888ff1e1d9abbd54f704601
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Thiago Macieira [Fri, 8 Jun 2012 15:08:52 +0000 (17:08 +0200)]
Replace deprecated QGraphicsScene::itemAt() with items()
Change-Id: I33ee03db775d3cf6807372e0963748cf6a4e07db
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
Miikka Heikkinen [Tue, 5 Jun 2012 12:16:49 +0000 (15:16 +0300)]
Windows: Fix window positioning for ActiveQt servers
The toplevel window for an embedded ActiveQt server does not have
a parent QWindow, but it does have a parent HWND, so is not a real
toplevel. Enable using a QWindow property to inform windows platfrom
plugin that a window is embedded and handle geometry accordingly.
Task-number: QTBUG-25808
Change-Id: Ie26c53b587c312b1df397b25cb944019c020b8de
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Jonathan Liu [Fri, 8 Jun 2012 12:35:00 +0000 (22:35 +1000)]
QWizard/Win: Drag window on Vista with only left mouse button
The QWizard window should only be draggable using the left mouse button
on Vista.
Change-Id: Ie6ec118cbb48440c5dc6b84c4361119b1bbbd0cf
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Friedemann Kleint [Fri, 8 Jun 2012 12:34:48 +0000 (14:34 +0200)]
QWidget::destroy(): Release mouse and keyboard grab.
This used to happen in the platform widget code.
Task-number: QTBUG-26079
Change-Id: Id6de7473c2fa4381a39114d5122e06e3bde159fa
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
Friedemann Kleint [Fri, 8 Jun 2012 11:45:43 +0000 (13:45 +0200)]
Fix assert in painting demos when switching to OpenGL.
Fix creation order. The ArthurFrame receives a paint
event with OpenGL set to true when the glw-member is still 0.
Task-number: QTBUG-26084
Change-Id: Ib4b568d22ae925542e3a775403e4c983ea0b4de5
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Joerg Bornemann [Fri, 8 Jun 2012 10:29:46 +0000 (12:29 +0200)]
implement Qt::TranslucentBackground for Windows
Adapted the Qt 4.8 implementation of translucent widgets in
the Windows platform plugin. This is only working for non-OpenGL
top level Windows.
Change-Id: Ic4c1c52d33b380f530f6a07e96c0c154a0571415
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
John Layt [Fri, 1 Jun 2012 18:49:45 +0000 (19:49 +0100)]
QtPrintSupport - Add CUPS printer and options queries to plugin
Implement initial support in the CUPS plugin for directly calling CUPS
to obtain printer list and basic printer info rather than QCupsSupport.
Add api to the plugin to return any options for a printer, usually IPP
options as implemented for CUPS, but whatever applies for the host
print system.
Future changes will add support for returning the PPD options. This
api may eventually be added to QPrinterInfo, but not in 5.0.
Change-Id: I6c8bae4c9295009599e6ab31382f5fff4c93981f
Reviewed-by: Teemu Katajisto <teemu.katajisto@digia.com>
Reviewed-by: John Layt <jlayt@kde.org>
Konstantin Ritt [Fri, 8 Jun 2012 12:58:38 +0000 (15:58 +0300)]
QZip: improve reading of zip files, fix some edge cases in writing
This supercede https://codereview.qt-project.org/#change,25111 and fixes
some more cases;
The autotest crash is fixed as well (but the test itself omitted due to
.pro file misconfiguration)
Change-Id: I4a3adde18b4f9a8ac9822f700eee71d2a12b9c2c
Reviewed-by: Harald Fernengel <harald.fernengel@nokia.com>
Lars Knoll [Sun, 27 May 2012 05:41:02 +0000 (07:41 +0200)]
Remove QFactoryInterface from style plugins
Change-Id: I5c41f1c8b91b5e1117b9163c137de4bf5f51099c
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
John Layt [Fri, 1 Jun 2012 20:06:26 +0000 (21:06 +0100)]
QtPrintSupport: Move printer list into plugin base class
Move the cached printer list from the Windows plugin into the base
class so the CUPS plugin can also use it in a subsequent commit.
Change-Id: Idf5fb7fc49b1820aad58f16e8854ab9120caa193
Reviewed-by: Teemu Katajisto <teemu.katajisto@digia.com>
Reviewed-by: John Layt <jlayt@kde.org>
Miikka Heikkinen [Fri, 8 Jun 2012 07:20:46 +0000 (10:20 +0300)]
Fix crash in qt_qpa_core_dispatcher() at application exit.
In some situations it is possible to get events when QCoreApplication
has already cleared the 'self' pointer and will thus not return an
instance. For example, destroying screen at application exit when
there are parentless dialogs open will result in hiding the dialog,
which at least in Windows causes a call to
QWindowSystemInterface::handleExposeEvent() which will need the core
dispatcher down the line.
Fixed the crash by checking if the QCoreApplication instance is valid
instead of blindly using it. This should cause no problem as unhandled
events are simply queued.
Task-number: QTBUG-26061
Change-Id: Ide2350a62208433728e0271192c1da4b1efacc9b
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Girish Ramakrishnan [Fri, 8 Jun 2012 13:39:47 +0000 (06:39 -0700)]
Remove unused variable inSetParent
Change-Id: Ie65514209f14d8f8b2396c1d6e37cd8c3e4c0c1a
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Stephen Kelly [Thu, 7 Jun 2012 08:43:16 +0000 (10:43 +0200)]
Use variadic macros where available to make QSKIP source compatible.
Otherwise this is a large source incompatbility during porting, so
it makes sense to provide the option of using C++11 for that.
Change-Id: I9792b3ae2c1fa3743bc9a2e74380134ea2f24add
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Markku Heikkila [Thu, 7 Jun 2012 14:30:04 +0000 (16:30 +0200)]
Fix crash in QTreeWidgetItem::sortChildren when adding new item.
This is a cherry-pick of
4f388c383e39b598d997e21bd9a4f16d89bd0625
from February
Recursive call is caused if user code calls QtreeWidgetItem()::sortChildren and
sorting is enbled in QTreeWidget.
First call is from user code and second is caused by timer.
When timer expires second call is made.
This recursion is prevented with QTreeModel::SkipSorting skipSorting()
in QTreeWidgetItem::sortChildren();
Task-number: QTBUG-20345
Change-Id: Ibf73e69274423f31397a9e391bfba7d5c4103a3c
Reviewed-by: Markku Tapio Heikkilä <markku.heikkila@digia.com>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Girish Ramakrishnan [Thu, 7 Jun 2012 22:05:19 +0000 (15:05 -0700)]
eglfs: Disable eglfs when evdev is not present
EGLFS has a hard dependency on evdev, so don't compile it when
evdev is not present.
This also removes the check that disabled EGLFS specifically for QNX.
Since QNX doesn't have evdev, EGLFS will get disabled automatically.
Change-Id: I9fdb364b2eff9b370fa238609a8f98af6ccb7f7b
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Casper van Donderen [Thu, 7 Jun 2012 11:43:19 +0000 (13:43 +0200)]
QDoc: Only print modulename::type on collision pages.
Change-Id: I090698b106456370f6c0982006243304f87dc70c
Reviewed-by: Martin Smith <martin.smith@nokia.com>
John Layt [Fri, 1 Jun 2012 19:33:53 +0000 (20:33 +0100)]
QtPrintSupport: Move plugin access of QPrinterInfo internals to base
Move all plugin methods requiring access to QPrinterInfo internals
into the plugin base class, and remove the plugin classes as friends
from QPrinterInfo.
Change-Id: Ic527efc681e198abf19e038dd77c36bb8017d049
Reviewed-by: Teemu Katajisto <teemu.katajisto@digia.com>
Reviewed-by: John Layt <jlayt@kde.org>
Morten Johan Sorvig [Tue, 22 May 2012 10:00:29 +0000 (12:00 +0200)]
Reduce QtWidgets dependencies in the Cocoa plugin.
b8246f08 added the new menus implementation which
removes one of the major QtWidget dependencies.
Continuing on the path to QtWidget-freedom this
commit removes the following:
- qmenu_mac.h/mm. Not used.
- FORMS += filedialog.ui. Not used.
- qt_strippedText from qaction.cpp. Duplicate.
- Misc stray includes.
What is left should be the dependencies needed by
the print engine implementation. These will be
handled at a later time.
Change-Id: I0cead4cdaddcebd402d30c6112f3e889d0f28740
Conflicts:
Reviewed-by: James Turner <james.turner@kdab.com>
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
Kent Hansen [Tue, 5 Jun 2012 12:00:47 +0000 (14:00 +0200)]
Make qfont autotest build without widgets
Change-Id: I2ab344d44cb2aa8c59c1c28f7368784849d4b74d
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Kent Hansen [Tue, 5 Jun 2012 11:35:14 +0000 (13:35 +0200)]
Make qicon autotest build without widgets
Change-Id: Ic6176404076bac956d00d57c99e0bbf0ac78beca
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Friedemann Kleint [Thu, 7 Jun 2012 09:00:31 +0000 (11:00 +0200)]
Add Qt::WindowTransparentForInput to Window flags manual test.
Change-Id: If27567a93d5a2e910289c680643503d02831d742
Reviewed-by: jian liang <jianliang79@gmail.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Friedemann Kleint [Thu, 7 Jun 2012 10:37:10 +0000 (12:37 +0200)]
Fix a crash when calling effectiveWinId() on parentless widgets.
Remove the assert as it also triggers when the widget is one
that currently has no parent (setParent(0)).
Check that the WinId is != 0 in the cursor code.
Change-Id: I711fc600f1d803c8f01c15df87984e742a4c23d2
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com>
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
Frederik Gladhorn [Wed, 6 Jun 2012 13:01:59 +0000 (15:01 +0200)]
Remove widgets lib dependency on platformsupport.
Instead of the dependency add the one needed function as virtual to
the QPlatformServices in QtGui.
Change-Id: Ia4455f5ac88ec4d0480bd81635cebba62bbd8ac5
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Mitch Curtis [Tue, 5 Jun 2012 14:18:59 +0000 (16:18 +0200)]
Allow ISODate string without seconds in QTime::fromString().
According to ISO 8601 (section 4.2.2.3), seconds can be omitted
from a string representing time.
Task-number: QTBUG-2813
Change-Id: I2578f290845e46a8f49be489f1d7427984ae7f08
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
aavit [Wed, 6 Jun 2012 13:16:49 +0000 (15:16 +0200)]
Namespace the bundled zlib symbols, to avoid clash with user zlib
When Qt is being compiled and is using the bundled zlib, QtCore needs
to export the zlib symbols, since zlib is needed in other Qt
libraries as well. That gives a danger of a potentially disastrous
symbol clash if the user later on links with both Qt and an external
zlib (ref. e.g. QTBUG-15071).
This commit enables a zlib compilation flag that causes all zlib
symbols to be redefined with a prefix. Hence, they will not clash
with a standard zlib.
A minor drawback is that zlib.h will now have #defines for a few
semi-normal identifiers. Hence, a couple of more changes are done:
In the private qzip code, the identifer crc32 had to be renamed.
QHttpNetworkReplyPrivate needed no change, but as a defensive measure
the #include <zlib.h> is moved from the _p.h file to the .cpp file,
to avoid surprising compilation errors later in code that include
that header.
This commit does not in itself solve the issue of how to let Qt
libraries outside of qtbase use the same bundled zlib, but it is
a prerequisite for that.
Change-Id: If84105901a8c90d35009faffe660c85a6bd2fee5
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Lars Knoll [Sun, 27 May 2012 03:25:47 +0000 (05:25 +0200)]
Remove dependency from QFactoryInterface for the print plugin
Change-Id: Ia35890b72e7797ef655bf97b4a34af2908657c0e
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Lars Knoll [Sun, 27 May 2012 03:16:14 +0000 (05:16 +0200)]
Remove QFactoryInterface from the input plugins
Change-Id: Ia4a9dc5b4ef276dca39681848e531b4c9e4f64e2
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Lars Knoll [Sun, 27 May 2012 03:04:48 +0000 (05:04 +0200)]
Remove QFactoryInterface from bearer plugins
Change-Id: I8d6736e56f34f49041fff409d040634475eb0bf5
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Lars Knoll [Sun, 27 May 2012 02:57:31 +0000 (04:57 +0200)]
Remove the QFactoryInterface dependency from platform plugins
Change-Id: I4010e59dcd8a790e06bb9a0ccf3cc9a5c7737ed1
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Lars Knoll [Sun, 27 May 2012 02:51:45 +0000 (04:51 +0200)]
Remove QFactoryInterface from the generic plugins
Change-Id: I5a4351ca4b6605f9628496701bb8c6063cf36c78
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Lars Knoll [Sun, 27 May 2012 02:09:13 +0000 (04:09 +0200)]
Remove QFactoryInterface from picture plugins
Change-Id: I7b02cbfb850d6a9fc90c1eb1e12a9950baf61e77
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Lars Knoll [Sun, 27 May 2012 02:02:09 +0000 (04:02 +0200)]
Remove QFactoryInterface dependency from icon plugins
Change-Id: I65bed1646f3c5e89329a6bbe3dcdbdb5660b7004
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Lars Knoll [Sun, 27 May 2012 01:47:28 +0000 (03:47 +0200)]
Remove the QFactoryInterface dependency from accessible plugins
QFactoryInterface is not needed anymore and will get removed soon.
Change-Id: Ib2806200b1a7f4a45d62e2b556380946ef68f585
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@nokia.com>
Lars Knoll [Sun, 27 May 2012 01:40:00 +0000 (03:40 +0200)]
Don't inherit from QFactoryInterface for image plugins
QFactoryInterface is obsolete now that we have the new plugins loading
mechanism, where we can get the keys out of the plugin without
having to load it. Remove it from QImageIOHandlerFactoryInterface
as a first step of getting completely rid of it.
Change-Id: I856b149dd20131e1cdcdcb271c1a355c9e0da6ab
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Donald Carr [Thu, 7 Jun 2012 08:34:33 +0000 (08:34 +0000)]
Fix eglfs regression in configure
XPLATFORM_QNX was never explicitly set, yet the tests which evaluate it
assume that it is.
Change-Id: If97d2ee1f4432ada0c68e36348bf5bec85f94e43
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
John Layt [Sun, 20 May 2012 19:38:21 +0000 (20:38 +0100)]
SIC: QPrintSupport - Remove options api from QPageSetupDialog
QPageSetupDialog has an enum PageSetupDialogOption, however one option
had support removed in Qt 4.5 and the remaining 2 are actually for an
internal implementation detail that could lead to memory leaks if
changed by an app.
This change removes the enum and the api as they is now useless.
Change-Id: I9a3ab689dcab57151de894db5ebf22f6ad90d71e
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Reviewed-by: John Layt <jlayt@kde.org>
Konstantin Ritt [Wed, 6 Jun 2012 15:00:21 +0000 (18:00 +0300)]
Shift positions for lineBreakType
to keep them consistent with positions for all other flags.
This changes the internal behavior so that attributes[0].lineBreakType now means
"break opportunity at start of the text (before the first character in the string)"
and is always assigned with HB_NoBreak to conform rule LB2
(see http://www.unicode.org/reports/tr14/#LB2).
The current implementation is based on the sample implementation from tr14
that aimed to be as simple as possible rather than to be optimal.
From now, we can use pieces of the attributes array "as is"
without having to adjust some positions. Or we can analize some long text
by chunks (e.g. paragraph by paragraph) and consume less memory.
This introduces a minor overhead that will be eliminated shortly.
Change-Id: Ic873a05a9d5203b1c3d5aff2e4445a3f034c4bd2
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Konstantin Ritt [Fri, 25 May 2012 02:00:28 +0000 (05:00 +0300)]
QTextBoundaryFinder: Consider soft hyphen as line breaking opportunity
SoftHyphen enum value was added to specify such a boundary reason
Change-Id: I4248909eed6ab8cbca419de4dcf9fe917620a158
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Konstantin Ritt [Tue, 5 Jun 2012 08:19:22 +0000 (11:19 +0300)]
Set the whiteSpace flag outside the grapheme and the line breaking loop
The white spaces determination doesn't belong to the text breaking algorithm.
A proper breaking implementation shouldn't assume spaces are
break opportunities (actually, space is allowed to be a grapheme base);
However, the whiteSpace flag should never be checked alone while iterating
over the text to find the space sequence; the grapheme boundaries should always
be taken into account. This covers the SMP code points in UTF-16 text and
graphemes that consist of a space followed with one or more grapheme extenders.
This introduces a minor overhead that would be eliminated some later.
Change-Id: Ic2cc7f485631fd0b436fc256ce112ded5f94fc07
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Lars Knoll [Sun, 27 May 2012 03:34:53 +0000 (05:34 +0200)]
Remove QFactoryInterface from sql drivers
Change-Id: Ib31e6c4ce5264fc1e4281c8846df5630a6479a7c
Reviewed-by: Mark Brand <mabrand@mabrand.nl>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Stephen Kelly [Fri, 25 May 2012 08:31:03 +0000 (10:31 +0200)]
Deprecate the use of QWeakPointer to track QObjects.
The main problem with using QWeakPointer to track QObjects is that it
has API to convert to QSharedPointer, which is undefined behavior. There
is no need to overload the meaning of QWeakPointer with QObject
tracking.
QPointer is more suitable and should be used instead. Because QPointer
is implemented in terms of QWeakPointer, we need to add some overloads
which are not deprecated.
Change-Id: If0333e4800c9fd277629cc69185c9ca3e4e7e81d
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Stephen Kelly [Fri, 18 May 2012 18:10:46 +0000 (20:10 +0200)]
Expand the 'existing target guard' in generated CMake files.
This way the target will be created and have its properties
populated only one time.
I tried wrapping the whole file in an 'include guard', but that
broke the unit test in tests/auto/cmake/pass1 (and
the qt5_use_module function), because the function causes the
variables in the Config file to not exist outside of the
scope (eg for include directories), and yet, Qt5${Module}_FOUND is
still true even when the find_package was previously called in a
function, so it is not found and processed again.
The change in Qt5CoreConfigExtras.cmake does not need to be guarded
as it is only ever included from Qt5CoreConfig.
Change-Id: Iaa016563db5eb61294360ac9e003c9c923393d8c
Reviewed-by: Brad King <brad.king@kitware.com>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Samuel Rødal [Fri, 1 Jun 2012 08:32:17 +0000 (10:32 +0200)]
Added SpellCheckUnderlineStyle theme hint.
Task-number: QTBUG-25115
Change-Id: I70abbed426ad8bebca51823ed5ce16f2f300b5cc
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Friedemann Kleint [Thu, 7 Jun 2012 11:42:13 +0000 (13:42 +0200)]
Windows: Store only full-size DC's obtained by BeginPaint.
Avoid painting bugs in case the DC covers only a part of the
window and QBackingStore does a full flush.
Task-number: QTBUG-26039
Change-Id: Ic918d9898ac824690273ac59bcb1e7e546cc698a
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Kent Hansen [Tue, 5 Jun 2012 12:32:07 +0000 (14:32 +0200)]
Fix compilation of examples with -no-widgets
Change-Id: Ie0e19daf6c6476b5c5130f4930dfa3df92917384
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Kent Hansen [Tue, 5 Jun 2012 12:07:05 +0000 (14:07 +0200)]
Make qtexttable autotest build without widgets
Change-Id: Id5f93dee0c4b5978c473838559f586ced35a2981
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Kent Hansen [Tue, 5 Jun 2012 12:10:02 +0000 (14:10 +0200)]
Make sql autotests build without widgets
Change-Id: Icd4d2ef39961e2e0ec5c9e910c74b3e8a35503bf
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Kent Hansen [Tue, 5 Jun 2012 12:16:16 +0000 (14:16 +0200)]
Make "other" autotests build without widgets
Change-Id: I49e73c31b98e43259771c0e265cf13fc167c45f2
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Kent Hansen [Tue, 5 Jun 2012 12:22:12 +0000 (14:22 +0200)]
Don't build printsupport autotests when widgets aren't available
Change-Id: Ida376a75f376fc0d3696d715648c7229aec301e2
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Donald Carr [Wed, 6 Jun 2012 15:54:55 +0000 (15:54 +0000)]
Fix common device spec paths
This fixes breakage in the Raspberry Pi spec introduced in:
https://codereview.qt-project.org/#change,27536
due to incorrect depth assumptions regarding included files.
Change-Id: I802b828f1755f299939fed192dd3ca9bf1a83002
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
Kent Hansen [Tue, 5 Jun 2012 07:12:28 +0000 (09:12 +0200)]
Remove widgets dependency from xmlstreamlint example
Change-Id: I2c7609077bd18864ffd9b2ba5086eb590aff3df0
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Kent Hansen [Tue, 5 Jun 2012 12:32:52 +0000 (14:32 +0200)]
Remove widgets dependency from qtconcurrent/map autotest
Change-Id: I734ae73a530ab6eb27271586040ef910e6ad0e2c
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Kent Hansen [Tue, 5 Jun 2012 11:04:28 +0000 (13:04 +0200)]
Make animation autotests build without widgets
Change-Id: Icb0560a26973921611f697240fbce121fff518e9
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Kent Hansen [Tue, 5 Jun 2012 11:06:27 +0000 (13:06 +0200)]
Remove widgets dependency from qdatastream autotest
Change-Id: I30ce3ce2d5a0badc7a846256825b4deea8c0856a
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@nokia.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Kent Hansen [Tue, 5 Jun 2012 11:08:16 +0000 (13:08 +0200)]
Make qprocess autotest build without widgets
Change-Id: I0a428852222accbea8446ba1c284f1c44b9d4bf3
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Kent Hansen [Tue, 5 Jun 2012 12:51:05 +0000 (14:51 +0200)]
Remove widgets dependency from qstringlistmodel autotest
Change-Id: I9678f9ee3fd8b01648cf2524452145568cf6fb4f
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Kent Hansen [Tue, 5 Jun 2012 12:51:32 +0000 (14:51 +0200)]
Make itemmodels autotest build without widgets
Change-Id: I7ff1a575c111452397c3461842c15bb01105cf95
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Kent Hansen [Tue, 5 Jun 2012 11:23:39 +0000 (13:23 +0200)]
Make qstatemachine autotest build without widgets
Change-Id: I3a58cb1cbe0c86aca6e533187e85c166bf0f8957
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Kent Hansen [Tue, 5 Jun 2012 11:28:16 +0000 (13:28 +0200)]
Make qpixmap autotest build without widgets
Change-Id: Iabf1e6815a2af79d9da84c0e2bb9c2de52cb698f
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Kent Hansen [Tue, 5 Jun 2012 11:34:17 +0000 (13:34 +0200)]
Make qpicture autotest build without widgets
Change-Id: Id2047dace7b3087f1c7b83545f5e122ab936d33c
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Kent Hansen [Tue, 5 Jun 2012 11:34:33 +0000 (13:34 +0200)]
Make qmovie autotest build without widgets
Change-Id: Ie53b183e99de08c3cc35f4932b7aabf4bf5b0940
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Konstantin Ritt [Wed, 6 Jun 2012 14:51:49 +0000 (17:51 +0300)]
get rid of "uninitialized member" gcc warning
Change-Id: I486212829ec9309239645222e7f03f36ae4847f0
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
Laszlo Papp [Wed, 6 Jun 2012 16:27:38 +0000 (19:27 +0300)]
Mark the testSslOption method as introduced in Qt 4.8
Change-Id: Ibe7cb1ca9cdcedd3f09dd4f865907e3f0fa6aef3
Reviewed-by: Richard J. Moore <rich@kde.org>
Reviewed-by: Shane Kearns <shane.kearns@accenture.com>