Commit Graph

17721 Commits

Author SHA1 Message Date
John Layt
ad0163d088 QPrinter - Add page metric tests
Add more page metrics tests to expose the many bugs and inconsistencies
in the page layout handling.  No platform or pdf backend passes all
these tests so they are skipped for now, but following commits will use
the tests to ensure the re-write of the page layout handling fixes the
many problems in a consistent way for all backends.

Change-Id: Ic5b16aa08dfe2bd9a9191662fd2bbe6b913e15c9
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Reviewed-by: Andy Shaw <andy.shaw@digia.com>
2014-03-17 13:45:14 +01:00
Allan Sandfeld Jensen
cf56e066ad Revert "Make OpenGL texture glyph cache use the right freetype glyphs"
This reverts commit f78661b03c.

The reverted patch was working around that QFontEngineFT was using
the poor QFontEngine fall back. That issue was fixed in commit
0b7beaaaf2, and the work around
is no longer needed.

This also fixes a rare problem with the workaround when the fontengine
and the glyph-cache do not share the same default glyph format which
can happen with QRawFonts.

Change-Id: I150f70a003b137c1d145f6f70cda568c85633e5c
Reviewed-by: Gunnar Sletta <gunnar.sletta@jollamobile.com>
2014-03-17 13:39:09 +01:00
Laszlo Agocs
2861a4d109 Fix no-opengl build with egl
Disable eglfs and similar plugins when opengl is not enabled.
(but egl is present)

GL-dependent parts of eglconvenience need to be skipped too.

Task-number: QTBUG-37457
Change-Id: I44d49495241551bc7b1f565aa0b5ace9f310628e
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
2014-03-17 13:31:14 +01:00
Jędrzej Nowacki
ac178eae4e Fix Q_DECLARE_METATYPE macro
The macro should stringify value of the given token not the token
itself.

Task-number: QTBUG-37547
Change-Id: I90f4fa613bd13d5a581828ab13f620b40dfd3593
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
2014-03-17 13:05:07 +01:00
Morten Johan Sørvig
8212e0cfad Cocoa: Set "Stereo" OpenGL format option.
Task-number: QTBUG-35548

Change-Id: I60b633ae44b8b4b353a7328eb0922b9301e1460c
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
2014-03-17 09:15:25 +01:00
Morten Johan Sørvig
ffc8aac684 Fix high-dpi QGraphicsPixmapItem bounding rects.
QGraphicsPixmapItem did not take the pixmaps
devicePixelRatio into account when calculating the
bounding rect. As a consequence, a 512x512@2x pixmap
would get a 512x512 bounding size instead of the
correct 256x256 bounding size.

Task-number: QTBUG-37008
Change-Id: I266e418b7e5d92bf1d4c96bd9380a27708dc2b4a
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
Reviewed-by: Andreas Aardal Hanssen <andreas@hanssen.name>
2014-03-17 09:15:15 +01:00
Allan Sandfeld Jensen
0b7beaaaf2 Fix rendering of grayscale antialiased FT fonts on QGLWidget
QFontEngineFT::alphaMapForGlyph and QFontEngineFT::alphaRGBMapForGlyph
has been broken since change#65694. They always fall back to using
the path rendering of QFontEngine because we zero the scoped pointer
just before testing it.

To fix it we need to release the scope pointer after we are done using
it.

Change-Id: I8811c1f5261f286f2f3dd3c0f93c988ba0909669
Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
2014-03-15 10:46:25 +01:00
David Schulz
cc0636ea1e Remove level 4 compiler warnings from MSVC.
Task-number: QTBUG-7233

Change-Id: I52067e3a22e98a62fd87415906e54a54ff2d6b49
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Reviewed-by: Oliver Wolff <oliver.wolff@digia.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
Reviewed-by: Dave McClelland
2014-03-15 10:46:17 +01:00
Martin Klapetek
c6e271da6d QXcbWindow - inline the atom functions
Change-Id: I3a8f9efb7de21bf2301721edca49c9411c62eed0
Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
2014-03-15 10:46:10 +01:00
Martin Klapetek
2ae50d9123 Update QScreen::availableGeometry() on _NET_WORKAREA atom changes
When the window manager sets new workarea using the _NET_WORKAREA xcb
atom, QScreen::availableGeometry() does not react to that and returns an
invalid available geometry. This patch reacts to that change and updates
the QScreen property properly on xcb platform.

Change-Id: I8f0b4a27bab0ce450fb7393f4d9a56f3ce9a4ea1
Reviewed-by: Uli Schlachter <psychon@znc.in>
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
2014-03-15 10:46:05 +01:00
Liang Qi
eadaaf69fb Cocoa: added queryKeyboardModifiers() in platform plugin
Task-number: QTBUG-37181
Change-Id: I9256d0c9b83d6e5982864dc747586cbe2322b60c
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
2014-03-15 10:45:59 +01:00
Kari Pihkala
5334a2cea7 Mac: Add support for high-dpi custom pixmap QCursors
For pixmaps with devicePixelRatio greater than 1,
create a native cursor that has a normal and a high-dpi
representation.

Task-number: QTBUG-34116
Change-Id: I1c014d65749add25f2b828837555a1844ede97c1
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@digia.com>
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
2014-03-15 10:45:53 +01:00
Morten Johan Sørvig
4d56c86f80 Cocoa: Disable the zoom button when appropriate
Disable the zoom (maximize) button for fixed-size
windows and customized windows with the MaximizeButton
flag not set.

Task-number: QTBUG-37078
Change-Id: I6da88496474713de37b48aa65742203632ba99d6
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
2014-03-15 10:45:47 +01:00
BogDan Vatra
f9e1e595a9 Android: Delay the set of the BackingStore if window->handle() is null.
Task-number: QTBUG-37458

Change-Id: Idddfe1876aff3d14d8c6c060d04236c5dc611bce
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
2014-03-15 10:45:42 +01:00
Eskil Abrahamsen Blomfeldt
287fa94fe2 Android: Fix another "QApplication not on main() thread" crash
The assets file engine is created before main() is called, thus
prepopulate was called before main(). In this function, we created
a QDataStream which internally created a QBuffer which inherits
from QObject. This caused the main thread pointer to be initialized
early, and the old "QApplication is not on the main() thread" warning
and crash returned. The fix is to prepopulate the first time the
file engine is used instead.

Task-number: QTBUG-37444
Change-Id: I2c6e5f1a8ca88b5dc7d8e145fffeb7587dc0e623
Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
2014-03-15 10:45:36 +01:00
Richard Moe Gustavsen
de51854726 iOS: update keyboard rectangle when scrolling the screen
When we scroll, the keyboard will change position relative
to QScreen, even if it appears to stay put. For that
reason we also need to update the keyboard rect after
doing a scroll.

Change-Id: I9bda2ab5b5e4970f488d3e69e44cf58e273f8fcd
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
2014-03-15 10:45:31 +01:00
Friedemann Kleint
7b8d4cdb10 Windows native file dialog: Allow for omitting name filter description.
Task-number: QTBUG-37329

Change-Id: I644595a292e5b1890b2088b68be595bfcdba9d4d
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
Reviewed-by: Oliver Wolff <oliver.wolff@digia.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2014-03-15 10:45:24 +01:00
Friedemann Kleint
037bc9b638 Add verbose messages to tst_qnetworkreply.
Task-number: QTBUG-37449

Change-Id: Ib3802ddd51b908a68d8c893ce49010aeeb117db8
Reviewed-by: Peter Hartmann <phartmann@blackberry.com>
2014-03-15 10:45:17 +01:00
Laszlo Agocs
3d2160056e Resurrect QGLWidget::renderText()
The variant taking x, y, z has been broken in all Qt 5.x releases.
This is now corrected by making the GL2 paint engine capable of applying
a Z translation.

Task-number: QTBUG-31156
Change-Id: I119566e9e9577f6cdf7e8bae56cac1e34995e622
Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
2014-03-15 10:45:10 +01:00
Morten Johan Sørvig
77bf302ce2 Prevent DrawTextItemDevice::metric warning on Mac
Implement PdmDevicePixelRatio.

Task-number: QTBUG-36419
Change-Id: I4d2822d01e08c80e9b829d5f524e8e761e694fba
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
2014-03-15 10:45:04 +01:00
Allan Sandfeld Jensen
19532eec2a Fix casting and overallocation in qregion.cpp
The POINTBLOCK struct in qregion.cpp is badly defined. By using ints
as the base storage of the internal array it forces not only bad casting
from int to QPoint, but also allocates an array four times too big.

This patch changes to char, since a char pointer may alias anything and
this gives the right size of the array.

Change-Id: I608eaf39ac7306c71314a139bed6e2352249c0ab
Reviewed-by: Gunnar Sletta <gunnar.sletta@jollamobile.com>
2014-03-15 10:44:56 +01:00
Gabriel de Dietrich
4b0016f045 Cocoa: Get rid of the forward window pointer asap
As soon as we receive an event not related to dragging
a QDockWidget out of its area (or a similar use case),
we no longer need the forward window.

Task-number: QTBUG-37265
Change-Id: I310e9cc2cf099c76e7a88427826d4b97ca0cd9b9
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
2014-03-15 10:44:52 +01:00
J-P Nurmi
49b14f7a8b Remove the _qt_filedialog_xxx hooks
These internal and obsolete hooks are no longer used. The correct way
to provide platform dialogs in Qt 5.x is to implement a platform theme
plugin, as was done for GTK+ 2.x.

Change-Id: I3f1474fbf760130106b3c47173eaedd2f1a919bf
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
Reviewed-by: David Faure <david.faure@kdab.com>
2014-03-15 10:44:47 +01:00
Friedemann Kleint
51e5378113 Use QCommandLineParser in example dnslookup.
Show how use QCommandLineParser with additional
parameter checking for custom options and positional
arguments.

Also explain how to display help in GUI applications.

Change-Id: I03513e09b7dd5b150259593da0af2ef2a281cab2
Reviewed-by: David Faure <david.faure@kdab.com>
2014-03-15 10:44:41 +01:00
Oswald Buddenhagen
00fe7bd975 make property name doc match reality
it's QT_INSTALL_CONFIGURATION, not QT_INSTALL_SETTINGS.
probably the most useless of all properties, but anyway.

Change-Id: Ia1e739ab4ed59e2bcd3199914caed2b3db9070ee
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2014-03-15 10:44:34 +01:00
Lorenz Haas
4b0ad2fcc8 Doc: Fix syntax/compiler error in QThread snippet
Change-Id: If64e01099b50f15b5cf7cdb0890dfa4f7625126d
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
2014-03-15 10:44:29 +01:00
Kai Koehne
82fd626ded Document %{if-category} in default message pattern
Commit 15ddb91b introduced %{if-category}, and changed the default
message pattern. Adapt the documentation accordingly.

Change-Id: I1d500122300c4d62171de3607553b3a5a822d4a7
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
2014-03-15 10:44:25 +01:00
Laszlo Agocs
7fba691110 Docs: Clarify QOpenGLFunctions::functions()
Change-Id: Ifb6fdc3de7f93a1632b396eaaa14078546cac4dd
Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
2014-03-15 10:44:20 +01:00
Peter Hartmann
2bbdc6358f HTTP internals: keep consistent state in channel and protocol handler
It could be that the channel has its reply already reset to 0, while
the protocol handler thinks the reply is still active, which might
lead to weird behavior including hard to reproduce crashes.

Task-number: QTBUG-37424

Change-Id: I89b65d34caaa546a343edc2ee205aa76425de88f
Reviewed-by: Richard J. Moore <rich@kde.org>
2014-03-15 10:44:16 +01:00
Eskil Abrahamsen Blomfeldt
61fda89cd1 Android: Turn off thumb for armv5 again
The 4.8 compiler in the Android NDK sometimes produces uncompilable
code for armv5. In change b4252802b3
we reintroduced thumb instructions on armv5 with a work-around for
a particular case of this bug. However, the compiler now breaks
for Qt Script. There's no time to try to find a work-around for
this case, so we need to disable thumb again. It actually also
seems that this is completely broken with this compiler, so it would
probably be best to keep this disabled until the compiler is fixed.
Especially since armv5 will become part of the CI builds now, so the
compiler bug can end up blocking critical changes in the future if it's
re-enabled :/

Task-number: QTBUG-37376
Change-Id: I9e1b050ce596717ba1fa7ec2f5e8a3ce3581a3af
Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
2014-03-14 22:40:49 +01:00
Laszlo Papp
c42ac8173e Fix a probably copy/paste issue from drawImage in the drawPixmap snippet
Change-Id: Ia2b34e3ee6954342501a805f9e047cb90078e9d5
Reviewed-by: Martin Smith <martin.smith@digia.com>
Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
2014-03-14 22:40:40 +01:00
Friedemann Kleint
176342e70a QWindowsXP/VistaStyle: Fix detection of item view delegate line edits.
The old code tried to check the 2nd parent for inheritance from
QAbstractItemView. This also triggers for line edits on a QDialog parented
on the item view. Introduce convenience function that checks for
top levels in the chain.

Task-number: QTBUG-37504

Change-Id: I932f8efdb4764e9b1eea84c802bf7e8718338e1d
Reviewed-by: J-P Nurmi <jpnurmi@digia.com>
Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
2014-03-14 22:40:36 +01:00
Andrew Knight
9ceeaaac79 WinRT: Add debug message handler for winrtrunner
By placing debug messages in shared memory, the application can share
debug messages with winrtrunner (or any utility which passes -qdevel
to the app and opens the corresponding shared memory area).

Task-number: QTBUG-37308
Change-Id: Id0e04cfd5f0f701d552a448f780788c7cbf9b438
Reviewed-by: Oliver Wolff <oliver.wolff@digia.com>
2014-03-14 22:40:32 +01:00
Richard Moe Gustavsen
60f0a97edd iOS: fix build failure __IPHONE_NA not defined
__IPHONE_NA was previously defined to 9999, but with
iPhoneOS7.1.sdk it is now undefined. From Availability.h:
"__IPHONE_NA is not defined to a value but is uses as a
token by macros to indicate that the API is unavailable"

This causes Qt to evaluate QT_MAC_PLATFORM_SDK_EQUAL_OR_ABOVE
to true when given __IPHONE_NA as argument. And then the
build will fail.

Change-Id: I11f1d0285329d90c633c00c0c4d446ef5cd8089b
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
2014-03-14 22:40:28 +01:00
Andrew Knight
42afaa992a d3dcompiler_qt: Remove control file semantics
This simplifies the compiler control semantics by always using the
packaged compiler if it is available. With no packaged compiler, the
service is assumed to be running if the directory structure is present.
Use of a packaged library can be overridden by setting the environment
variable QT_D3DCOMPILER_DISABLE_DLL to 1.

When the runtime compiler is used, the source will no longer be
logged, and the compilation output will no longer be cached.

Change-Id: Ib07f517e7043d7785bdfa9da55abd34df518eeed
Reviewed-by: Oliver Wolff <oliver.wolff@digia.com>
2014-03-14 22:40:24 +01:00
Samuel Gaist
bcfc68f9cd Use Uniform Type Identifiers to detect OS X bundles
Following Apple's documentation, the first step to identify a
bundle is to check if it has a known extension. Currently, it's
done using string comparisons ored in an if statement. The list
is not complete and new types, whether provided by a system update
or other means, can't be detected.

The new approach is to use Uniform Type Identifier which queries
the OS directly to check whether the extension conforms to
kUTTypeBundle. That includes e.g. applications, frameworks etc.

Task-number: QTBUG-31884
Change-Id: Ief73a83904adf27ccb71b0070e67cba081d1fd4a
Reviewed-by: Jake Petroules <jake.petroules@petroules.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2014-03-14 22:40:19 +01:00
Laszlo Agocs
6b56b2ddb2 Disable QtOpenGL in dynamicgl builds
Migrating this is out of scope for the time being.

Change-Id: Iac4a98d8db8e132a6ffa28075548fe2af76637fc
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2014-03-14 22:40:15 +01:00
Laszlo Agocs
f1f603bd0b Fix dynamic opengl build
Some ifdefs were slightly incorrect.

Change-Id: I5ffb162becb040c91ed56f36c6126c59f67c367a
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
2014-03-14 22:40:11 +01:00
Alejandro Exojo
d7eb0a632a Fix one bogus print to stderr: use toLocal8Bit()
Change-Id: I86341ccbd0251a9c858a5e1a9b7ea291d73cda01
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
2014-03-14 22:40:07 +01:00
Dmitry Shachnev
d5dcd6d166 Add AArch64 support to qfilesystemwatcher_inotify.cpp
Based on a patch by Marcin Juszkiewicz <marcin@juszkiewicz.com.pl>,
licensed under CC0 (aka Public Domain) or BSD license.

Change-Id: I60815d6893c7a9d2873864ff626b865881ec5ee9
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2014-03-14 22:40:02 +01:00
Janne Anttila
391c2c12ab Introduce GENERATED_TESTDATA variable and fix qresourceengine test.
testcase.prf cannot be loaded from pro file for various reasons,
see qtbase commit history for details.

Moved runtime testdata logic from pro file to testdata.prf, and
thus made is reusable in other test cases as well.

Change-Id: I500d08dc4951e4eda862071e4ddd3e0f6de8c3d2
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2014-03-14 22:39:58 +01:00
Fabian Bumberger
02abe7921b QNX: Fix touch position
Change-Id: I8e4f83f58fbb31f7cffdf74b0ce431a6fd46f13b
Reviewed-by: Bernd Weimer <bweimer@blackberry.com>
Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
2014-03-14 22:39:54 +01:00
Bernd Weimer
2aee54c738 BlackBerry: Add button color to dark palette
Change-Id: I35191841e4d606042375ab8af442a339d6a701dd
Reviewed-by: Fabian Bumberger <fbumberger@rim.com>
2014-03-14 22:39:51 +01:00
Paul Olav Tvete
80d4a19f51 Android: Use proper empty strings in key events
A key event with no unicode would get a text of "\0" instead of
the empty string. This would lead to various widgets interpreting
the Key_Back event as text input, meaning that it would be grabbed
by the widget instead of being propagated.

Task-number: QTBUG-35784
Change-Id: Ibdb0e491572e41dd1aaf3b03ae1a780731f0559a
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
2014-03-14 22:39:48 +01:00
Paul Olav Tvete
1567699c0e Handle key release events correctly
Properly ignore key events that we don't actually handle.

Task-number: QTBUG-35784
Change-Id: Ibd3e72c76367a1dc3b1f2d39538fcf8441082ff2
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
2014-03-14 22:39:44 +01:00
Paul Olav Tvete
08ba111719 Don't block Key_Back in file dialog
Update the 10 year old FIXME hack to allow Key_Back (which will
close the dialog on Android). Also clean up nearby code that has
been dead for seven years.

Task-number: QTBUG-35784
Change-Id: I609858afb2caefe7025e421406288ae56717fea5
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
2014-03-14 22:39:39 +01:00
Oswald Buddenhagen
61f865be00 properly replace windows paths in installed plugin prl files
amends 53f48a4b.

Task-number: QTBUG-37399
Change-Id: I599ba612af760891cd99283560ccc9240125db39
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2014-03-14 22:39:35 +01:00
Oswald Buddenhagen
2c90d97a7b enable path replacement in installed plugin prl files on all platforms
amends 08a2d8df4.

Task-number: QTBUG-37399
Change-Id: I113ddf632d2ce3f7f2c92e079fd2fa3a1a640c1a
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2014-03-14 22:39:31 +01:00
Friedemann Kleint
f83ce63fe3 Add GL information to qpainfo.
Task-number: QTBUG-31611
Change-Id: Ibf9bcb74ed8dbf8625e77ef0870d758a77ea65cb
Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
2014-03-14 22:39:27 +01:00
Markus Goetz
f202cd8408 iOS: Create folder for SUBDIR projects
In case of a SUBDIR qmake project, it tried to cd into a directory
that did not exist yet. I needed to run qmake twice to get it working.
This fixes it.

Change-Id: I6d322e9a7c96a9d82df77b9ba5f19711a8180ed0
Task-number: QTBUG-37429
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
2014-03-14 22:39:23 +01:00