Commit Graph

17891 Commits

Author SHA1 Message Date
Kurt Pattyn
3ff15f1e98 QOpenGLContext: Use color depth information from QSurfaceFormat
When a new QOpenGLContext is requested, the color depth
information is now also taken into account on OS X and WGL.

Task-number: QTBUG-37411
Change-Id: I69d04989a20de3ace041b009fbbdc03fa02cfdf8
Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2014-03-19 20:12:08 +01:00
Eduard Veleba
379238496d Workaround for misbehaving [UIScreen screens] in iOS 7.1
On iOS 7.1 [UIScreen screens] sometimes returns empty NSArray which
is against documentation and causes immediate application crash.
This workaround uses [UIScreen mainScreen] in case [UIScreen screens]
returns empty NSArray.

Task-number: QTBUG-37601

Change-Id: I9b341b9ca788b5fc81804489d2e0a3af84207168
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
2014-03-19 19:59:01 +01:00
Tor Arne Vestbø
aea988a3d9 Remove 'register' storage class specifier in armv6 atomics
It is deprecated, and produces warnings on recent Clang versions.

Change-Id: I83181dd12c06a600a2f0eafbd83fe6111cf7752c
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2014-03-19 19:58:47 +01:00
Gabriel de Dietrich
aae382ab3b QMenu: Enable sloppy submenu mouse navigation
Since we're in the 21st century, we set QCommonStyle to return true
to the SH_Menu_SloppySubMenus style hint. This unlocks all the logic
already available in QMenu.

Task-number: QTBUG-20094
[ChangeLog][QtWidgets][QMenu] Enable sloppy submenu mouse navigation
Change-Id: I134c87e348d98d1f46055e0bfef2b4a4a3d2993a
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
2014-03-19 19:52:41 +01:00
Gabriel de Dietrich
f5224bd4d1 QMenuPrivate: Make sloppyDelayTimer non-static
Keeping the timer static would trigger warnings when enabling
SH_Menu_SloppySubMenus in QCommonStyle in a forthcoming patch.
This would happen if we opened a second level submenu quickly
enough and get the mouse event handler to reset the timer its
parent menu started.

Change-Id: Ia768603b40b219f87138c60a595c65ef408761ae
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
2014-03-19 19:52:28 +01:00
Gabriel de Dietrich
c02cc25e83 QMenu: Sloppy menu selection should allow hovering separators
Setting the current action to 0 clears the sloppy region and
closes the submenu if we hover a separator on the way to the
submenu popup. Now, we choose not to while the sloppy delay
timer is running.

Task-number: QTBUG-20094
Change-Id: I9d1b1358fe64c259dc47f35db8fc8f2b19a73153
Reviewed-by: J-P Nurmi <jpnurmi@digia.com>
2014-03-19 19:52:10 +01:00
Friedemann Kleint
48773be981 Do not run tst_qcolumnview in parallel
Task-number: QTBUG-36395

Change-Id: Id1f5cfeca3f18d6d7d1f2354211e15d349dd7b8f
Reviewed-by: Sergio Ahumada <sahumada@blackberry.com>
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
Reviewed-by: J-P Nurmi <jpnurmi@digia.com>
2014-03-19 19:51:20 +01:00
J-P Nurmi
3a4b8cbc3d Fix tst_QColumnView::scrollTo()
The test relies on active focus, so activate the test window in
the beginning of the test to avoid undesired focus widget changes
by QApplication::setActiveWindow() during the test.

Task-number: QTBUG-36395
Change-Id: I6febec7d552224b1754aaf57520ed6d435d29563
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2014-03-19 19:50:50 +01:00
Kai Koehne
b66950b342 Fix typos in QRegExp documentation
Change-Id: I80bce716ac1c161fd87291ecdbf21eb8f3f25e5a
Reviewed-by: André Hartmann <aha_1980@gmx.de>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2014-03-19 15:43:46 +01:00
Gatis Paeglis
b19b080894 Update bundled libxkbcommon version to 0.4.0
This release comes with important bug fixes. Also we can now
remove the workaround code which was needed for libxkbcommon 0.2.0.

Task-number: QTBUG-31712
Task-number: QTBUG-33732
Task-number: QTBUG-34056

Change-Id: I57caf7f803b9a01a15541a5ad82e464de3b8abbb
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2014-03-19 15:42:13 +01:00
Konstantin Ritt
c6b555dac3 Fix bundled HarfBuzz-NG build outside QtGui
On Mac, hb_coretext requires both CTFont and CGFont.
Due to not supporting the 0 tag by CoreText, hb_blob_get_data()
always fails causing the hb_coretext_shaper initialization to fail, too.
Since HarfBuzz-NG is not a part of QtGui module anymore,
there are two possibilities to workaround this: either engineer the
font data by querying tables one-by-one and generating the font
directory table, or pass CTFont and CGFont refs directly to hb_coretext
via the hb_face's user_data. This patch implements the latter.

Change-Id: I7d2e2df00818ea811642cb6a6c3b9c9abd5d7b94
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2014-03-19 04:17:01 +01:00
Friedemann Kleint
0d50efeae9 Fix QByteArray memory corruption in QIBaseDriver::open().
Rewrite code to use QByteArray::reserve(), QByteArray::append()
instead of memcpy().

Task-number: QTBUG-37508
Change-Id: I16ead153f33fa5a34bc01ee27ae4cd1b8993b65e
Reviewed-by: Andy Shaw <andy.shaw@digia.com>
Reviewed-by: Mark Brand <mabrand@mabrand.nl>
2014-03-19 04:17:01 +01:00
Mark Brand
1fad6a2483 update bundled sqlite to 3.8.4.1
The "Fixed CE build of sqlite3" patch is preserved in this change.
(ea70ec8711)

Change-Id: I9cf211785071386173a87f645773cdae08498354
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Mark Brand <mabrand@mabrand.nl>
2014-03-19 04:17:01 +01:00
Fabian Bumberger
4059e586cc QNX: Remove sending synchronous window system events
This makes some OpenGL autotests fail. Apparently we are sending a expose event before the window
is properly exposed.

Change-Id: I1710ec51605088ce594fc4676214db2d822d1cc5
Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com>
Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
2014-03-19 04:17:01 +01:00
Fabian Bumberger
ea057c8372 QNX: Fix QToolTip
The problem is that on QNX the window activation and focus
events are delayed. QToolTip can not handle this and would hide
the tool tip right after it is created.

Change-Id: I6045d1d277b73508c24174d72a05e0baa4ae6e7f
Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
2014-03-19 04:17:01 +01:00
Frederik Gladhorn
634b9b1e5c Do not run tst_qabstractitemview in parallel
This test waits for window activation and gets disturbed by mouse
movements.
The test duration is not long enough to justify the flakyness (around 10
seconds on my laptop).

Change-Id: I985044f954c09442220db3ca318045c04ef6bb77
Reviewed-by: Sergio Ahumada <sahumada@blackberry.com>
2014-03-19 01:02:03 +01:00
Frederik Gladhorn
4fc3d9ba63 Fix double release in QTimeZone on Mac
availableTimeZoneIds would release the enumerator.
This leads to a double free, so simply don't release the enumerator.

Task-number: QTBUG-37582
Change-Id: I521a9555d32545afd47095235ccee75a4f3e1974
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
2014-03-19 01:01:38 +01:00
Frederik Gladhorn
a1af25290b Accessibility Mac: fix role for links
Change-Id: Ied4dd0bf112f36065da4063857898ca4bd0eb77b
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
2014-03-19 00:53:39 +01:00
Andrew Knight
b63027867e WinRT: Fix QDesktopServices::openUrl() for local files
The passed-in URL is expected to be a file-scheme URL to be converted to
a QString using toLocalFile(), not a relative path to be prepended with
the application directory.

Change-Id: I647f351c99f0df66ef017936585f044292c16aff
Reviewed-by: Maurice Kalinowski <maurice.kalinowski@digia.com>
Reviewed-by: Oliver Wolff <oliver.wolff@digia.com>
2014-03-18 21:38:03 +01:00
Andrew Knight
9827f6d198 WinRT: Load system fonts using DirectWrite
System-installed TrueType fonts can be read into memory and loaded into
the FreeType font engine. This allows the application to be packaged
without fonts, but does not work on Windows Phone where DirectWrite is
not supported.

Every single-file TrueType font is registered with the font database,
and then loaded into memory at the point that the font is actually used.

Task-number: QTBUG-37230
Change-Id: I804116e37a874cd146a0653ba4cc018f8b1cd6a4
Reviewed-by: Oliver Wolff <oliver.wolff@digia.com>
2014-03-18 21:37:55 +01:00
Shawn Rutledge
336cb75d8f X11: defaultDragDistance depends on screen resolution
The usual default is 10 pixels, but on a screen with resolution
exceeding 100 DPI, it will be a proportionally larger number.  The
reason is that such precise finger and mouse movements are more
difficult on higher-resolution screens.

Change-Id: I6e66299e12e6cac5c4e032251b32a34940970372
Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
2014-03-18 10:03:37 +01:00
Paul Olav Tvete
3245745cd0 Handle key release events correctly
Ignore key events that we don't actually handle.

Task-number: QTBUG-35784

Change-Id: I196a4d0d199817a7dfd32fc98207ebfe3982050b
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
2014-03-18 09:59:33 +01:00
Paul Olav Tvete
68a9229a97 Android input method improvements
Use the new inputmethod query API. and get rid of the hack where
we would move the cursor back and forwards to make sure that the
Android software keyboard noticed that the cursor had moved.

The android plugin now uses absolute positions instead of
position within the paragraph for all cursor handling (provided
that the control supports the new API).

Task-number: QTBUG-37511
Change-Id: I03463dbbcb4acbfa41e2eab06889d021d50da01f
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
2014-03-18 09:59:20 +01:00
Mark Brand
b55e0ac57f update changelog for QtSql 5.3.0
Change-Id: Ia01ed50aa1dd5a8f71b45639fbaba9b02093806c
Reviewed-by: Andy Shaw <andy.shaw@digia.com>
Reviewed-by: Mark Brand <mabrand@mabrand.nl>
2014-03-18 09:13:36 +01:00
Frederik Gladhorn
433ebd1628 AVX image code was removed
Remove a last left-over after 5e519b31dc

Change-Id: I85e73a5d81d45b4ccfc80cdaf34ab7b6c3c85bdc
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@digia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2014-03-17 23:00:50 +01:00
Konstantin Ritt
13171e7e63 Fix build on older MinGW versions
> In constructor 'QWindowsPrintDevice::QWindowsPrintDevice(const QString&)':
> src\plugins\printsupport\windows\qwindowsprintdevice.cpp:105:86:
> error: 'DC_COLLATE' was not declared in this scope

Change-Id: Ifb64c323765ae4b6abb80c32d4ba2bc3fbffa245
Reviewed-by: John Layt <jlayt@kde.org>
2014-03-17 23:00:50 +01:00
John Layt
fd6728a5bc QPrinter - Doc fix
Remove duplicated documentation.

Change-Id: I53b6430b69b0e76a04cdc12b32a6bd59756acaa8
Reviewed-by: Andy Shaw <andy.shaw@digia.com>
2014-03-17 20:53:21 +01:00
Friedemann Kleint
513a49d62c Fix translation of QtPrintSupport and QPageSize.
Add translator comments, fix spelling, reduce repetitive
messages.

Change-Id: Id4cbbc3de8fa261cf8f125c5faf735dc608e2b15
Reviewed-by: Robert Loehning <robert.loehning@digia.com>
Reviewed-by: Andy Shaw <andy.shaw@digia.com>
Reviewed-by: John Layt <jlayt@kde.org>
2014-03-17 20:53:10 +01:00
Marc Mutz
163a8d5a76 Doc: ignore Q_DECL_NOEXCEPT_EXPR and QT_DEPRECATED_X
This fixes most of the \fn-not-found errors in QtCore.

Change-Id: I61a48646c6341cb3310bbb83f190a15e9225fd14
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@digia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2014-03-17 20:52:49 +01:00
Marc Mutz
b4a427bac6 Doc: document QSharedPointer::swap() method
The function is already present for quite some time, but was never documented,
so declare it as \since 5.3.

Add swap() function to qsharedpointer.h so it's visible to QDoc, too.

Change-Id: I8eba420878a096392fd181a180d5751101d37a50
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2014-03-17 20:52:46 +01:00
Marc Mutz
9b58f95c63 Doc: Add docs for QtConcurrent::{Unhandled,Exception}
Change-Id: I2a9f28e572f8e59e260f659b6d17721037cbd38e
Reviewed-by: Sze Howe Koh <szehowe.koh@gmail.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2014-03-17 20:52:42 +01:00
Konstantin Ritt
4f2872c64f Make QTextEngine::setAdditionalFormats() invalidate cached results
...which ensures we're not getting the formatting/rendering
artefacts in case of QStackTextEngine.

Change-Id: Ia0696a3e67eb866cf9776c6649c43775944edd1d
Reviewed-by: Andy Shaw <andy.shaw@digia.com>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2014-03-17 16:27:55 +01:00
Konstantin Ritt
946c092554 QGraphicsSimpleTextItem: Fix drawing the outline with pen, when set
QTextLayout's setAdditionalFormats() is expected to invalidate
the shaping results, so that the layouting must be done *after*
the format range(s) gets applied.

Task-number: QTBUG-33475
Change-Id: I6b948fc179da915545a98ac36f2c20163947ec9e
Reviewed-by: Andy Shaw <andy.shaw@digia.com>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2014-03-17 16:27:55 +01:00
Laszlo Agocs
0a803dc90a Add note to docs about normalization in setAttributeBuffer
Task-number: QTBUG-37103
Change-Id: I0b1716b76e10c65871c6a96dab5d8d81c95095d7
Reviewed-by: Gunnar Sletta <gunnar.sletta@jollamobile.com>
2014-03-17 16:27:55 +01:00
Shawn Rutledge
f6d3b65e45 QFileDialog: documentation clarifications about file type filtering
*.* is not a portable file type filter.  Anyway it's better to filter
by mime types, because it's more inclusive now and may even get better
in the future.

Task-number: QTBUG-37393
Change-Id: Ide3c3dfc47cd4b4c55d842b73de5369a0596a546
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2014-03-17 16:27:55 +01:00
Ulf Hermann
a1a2a038db Warn if the time taken by QTest::qSleep() is more than 50% off
Like this we can find out more easily if autotests fail because of
flaky timing.

Change-Id: I57b10f5fc4908bed7d00990641b2ddfd4ea84a11
Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2014-03-17 16:27:55 +01:00
Tor Arne Vestbø
5be81925d7 Add notice about deprecating OS X 10.6 (Snow Leopard)
See discussion on the Qt development mailing list:

  http://comments.gmane.org/gmane.comp.lib.qt.devel/15202

Change-Id: If151e1514f64ab08e440c7e9234df448d6f6c75e
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2014-03-17 16:27:55 +01:00
Friedemann Kleint
fc3a1fba45 Windows: Allow for custom input context plugins.
Task-number: QTBUG-37556

Change-Id: I9719138e1b09026f0971f8d3eeae525fc8951c0d
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
Reviewed-by: Jonathan Liu <net147@gmail.com>
2014-03-17 16:27:55 +01:00
Allan Sandfeld Jensen
a4080e4719 Recognize RGBA8888 formats when converting to CGImage
qt_mac_image_to_cgimage incorrectly assumes any 32bit QImage format is
one ARGB32 form. This is no longer correct with the introduction of
RGBA8888 format.

This patch recognizes the formats a maps them to the native support for
them in CGImage. It also removes a duplicate method.

The codepath appears to be only used by the old coregraphics paintengine
and MIME handling. Which means RGBA images are probably printed and
copy/pasted incorrectly at the moment.

Task-number: QTBUG-36818
Change-Id: Ie6292defdbaef3e6105cf993e12911eded0918dc
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
2014-03-17 16:27:55 +01:00
Ulf Hermann
3d05fa25f2 Remove unused static const variable
clang on Mac OS complains about it.

Change-Id: I7a385eb520c5098cf61a0d8c2e1de0731db2e1ae
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
2014-03-17 14:11:10 +01:00
Jani Heikkinen
23b47a8d4e Merge "Merge remote-tracking branch 'origin/release' into stable" into refs/staging/stable 2014-03-17 13:48:12 +01:00
John Layt
2c175d3748 QPrinter - Expect failure of QPrinter page size test
The page size test can get confused when two printer papers have the
same size, but the code being tested is actaully correct.  Put a temp
QEXPECT_FAIL on the test and some debug statements so we can see why it
fails and fix the test as required.

Change-Id: I160ba2ed7344500d89bdcb9bb416863713fef84b
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2014-03-17 13:46:29 +01:00
John Layt
833a43d56c QtPrintSupport - Fix QT_NO_PRINTER build
Fix the QT_NO_PRINTER build for issues that have accumulated over last
few months, and in the new changes already approved.

Change-Id: I9aed21dee861837fd1a68a96692c873a4f5be293
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2014-03-17 13:46:26 +01:00
John Layt
69e9b12001 QCupsSupport - Remove obsolete CUPS code
All code directly using CUPS is now in the QPA plugin and QCupsSupport
is no longer needed, other than the utilities for setting CUPS options
which do not need direct access to CUPS.  Delete all the obsolete code.

Change-Id: I561ad8af2415a9b745e2d35fd0624a5acdf27648
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2014-03-17 13:46:23 +01:00
John Layt
aa76fcc301 QPrintDialog - Remove CUPS specific code
We no longer use QLibrary to load CUPS, so remove checks.  Switch from
using QCupsSupport and QPrinterInfo to QPlatformPrintDevice.  The
remaining use of QCupsSupport is only for utilities to set CUPS specific
options which don't need to link to CUPS directly, these will be
replaced later with generic cross-platform API.

Change-Id: I6e3d9e9a59633c33af0555eb28443a9fc192b27c
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2014-03-17 13:46:20 +01:00
John Layt
9393f744d4 QPageSetupDialog - Use QPageLayout and QPageSize
Convert the Linux / CUPS version of the QPageSetupDialog to use
QPageSize and QPageLayout internally.  As this is an almost complete
re-write of the internals the liberty has been taken of doing renames
and code moves that would normally be done in separate commits, but in
this case would have been mostly pointless done separately.

Change-Id: I6eaa7c1fbf0a04cb3425f1d322fcae89239e83b7
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2014-03-17 13:46:17 +01:00
John Layt
1ffd79bfb7 QPrinter - Fix winPageSize() on Mac and Linux
Using QPageSize internally provides the Windows ID on all platforms so
remove the conditional compile on the QPrinter api and add support to
the print engines.

Change-Id: I31e23d5090a9b6ceb087c29dead050b0ee1855a5
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2014-03-17 13:46:13 +01:00
John Layt
dbc50e06df QPrinter - Use QPageSize and QPageLayout
Use QPageSize and QPageMargins to get/set values in the print engines,
add api to directly set the values, and rewrite the docs to make the
paper-based api obsolete instead of the page-based api.

Add new PPK keys to pass QPageSize, QPageMargins and QPageLayout to the
print engines to ensure no level of detail is lost, e.g. for custom
sizes passed to QPrinter.

[ChangeLog][QtPrintSupport][QPrinter] QPrinter can now use QPageSize
and QPageLayout in the public api to control the page layout for a
print job.

Change-Id: Iee39a4042bcd6141d29b0a82b49066d7a7a78120
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2014-03-17 13:46:10 +01:00
John Layt
70081096a1 QPrintEngine - Switch Windows to QPageLayout
Switch the Windows QPrintEngine to use QPageLayout.

Change-Id: I2b617fe103980c4efbb0ed367547e436f2d8a5e2
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2014-03-17 13:46:07 +01:00
John Layt
ab42391cd0 QPrintEngine - Switch Windows to QPlatformPrintDevice
Change the Windows QPrintEngine implementation to use the
QPlatformPrintDevice to obtain device information, and use QPageSize to
obtain page size conversions.  A following change will use QPageLayout
to store that page size.

Change-Id: I990943e2b62ab6dab2c4d4a292c7ed7261beadf2
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2014-03-17 13:46:04 +01:00