Commit Graph

36253 Commits

Author SHA1 Message Date
Gatis Paeglis
c9b46a130e qtestlib: restore qWaitForWindowActive() its original semantics
This patch removes a bad hack for Unity issue described in QTBUG-67757.
The workaround from 243a0660e1 caused
even more problems, see QTBUG-63542.

Besides causing more problems, the usage of this hack was inconsistent.
The goal was to get stable geometry before continuing further in the test
function. The same logic should have been used in qWaitForWindowExposed().
It was never documented that only qWaitForWindowActive() has this tweak.
Also this hack was needed only for Unity, instead being unconditionally
executed for all platforms.

Task-number: QTBUG-67757
Change-Id: I7b7fb4b09151c4ab4807282006d7f956b18f60ad
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Kari Oikarinen <kari.oikarinen@qt.io>
Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
Reviewed-by: Ville Voutilainen <ville.voutilainen@qt.io>
2018-05-02 11:42:04 +00:00
Qt Forward Merge Bot
7de400052f Merge remote-tracking branch 'origin/5.11' into dev
Change-Id: Ia082e20e2eb4b76afd4c1a1584ff4e5514655d7a
2018-05-02 13:15:15 +02:00
Karim Pinter
2803cdf758 Fix for mouse with modifiers handling
Modifier keys are saved in qinputdevicemanager such way that both evdev
and libinput can use it the same way, it is also handling the repeating
modifier key events. Evdev support is important for VxWorks support
because it is using it.

Task-number: QTBUG-60694
Change-Id: I49038cb7fe2ad5134b3a37167c19953867ea31c3
Reviewed-by: Andy Shaw <andy.shaw@qt.io>
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
2018-05-02 10:41:43 +00:00
Friedemann Kleint
ae618e0694 Manual touch test: Add handling for multiple touch screens
- Add a display label showing the screen parameters.
- Add a menu option to launch secondary windows and restructure
  the code accordingly

Change-Id: I2bdb76da0b0a00e62db41e674aa93cef9598fe67
Reviewed-by: Andy Shaw <andy.shaw@qt.io>
2018-05-02 09:36:19 +00:00
Johan Klokkhammer Helsing
a058e56a86 Docs: Mark vsp2SetLayerAlpha as preliminary
Add the missing documentation.

Change-Id: I5bc7fb191a7c073ed0d9e17e682d8ac808c10e96
Reviewed-by: Martin Smith <martin.smith@qt.io>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
2018-05-02 09:36:16 +00:00
Friedemann Kleint
7a1df39010 Tests: Fix clang warnings about unused variables and captures
tst_qline.cpp(170,12):  warning: unused variable 'baseB' [-Wunused-variable]           ^
tst_qline.cpp(169,12):  warning: unused variable 'baseA' [-Wunused-variable]
tst_qheaderview.cpp(3329,14):  warning: lambda capture 'this' is not used [-Wunused-lambda-capture]
    waitFor([this, &header, defaultSectionSize]() { return header.sectionSize(0) == defaultSectionSize; });

qheaderview.cpp(3338,14):  warning: lambda capture 'this' is not used [-Wunused-lambda-capture]
    waitFor([this, &header, defaultSectionSize]() { return header.sectionSize(0) == defaultSectionSize; });

Change-Id: I0245a7b66d15b896e864b488f7a58e8513fbdc6c
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2018-05-02 09:36:00 +00:00
Friedemann Kleint
9b8fc8dd13 Examples: Fix Clang warning about hiding QGraphicsItem:::advance()
In file included from edge.cpp:52:
./node.h(76,10):  warning: 'Node::advance' hides overloaded virtual function [-Woverloaded-virtual]
    bool advance();

Change-Id: I9d437059362c367e452b1b4f16077d4e0abd18de
Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
2018-05-02 09:35:49 +00:00
Mathieu Velten
23b139038a xcb: round down the scale factor for values < 0.8
This solves huge UI on some (most ?) HD 13 inches that have
a calculated scale factor around 1.75.

Task-number: QTBUG-53022 QTBUG-57211
Change-Id: I6cc22d3e47d38cb1d5a0daf5646a936256664e48
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
2018-05-02 09:31:39 +00:00
Jan Arve Saether
c1ead32a84 Fix crash in QMacPanGestureRecognizer
The reason it crashed was this:
1. Button was pressed => _panTimer started with the graphics view as
   destination.
2. Button was released => the graphicsview is destroyed
3. 300 ms later: Qt tries to deliver TimerEvent from _panTimer to the
   graphics view. Unfortunately, the graphics view is deleted, but Qt
   doesn't know that... (*crash*)

We therefore chose to start the timer with a destination we are controlling the
lifetime of: the QMacPanGestureRecognizer. Inside the timerEvent of that we can
check if the actual target is already destroyed.

Task-number: QTBUG-60404
Change-Id: Iff8f5b7217de42c4c5cf551ca507f0cff1c99a78
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
2018-05-02 09:16:22 +00:00
Stephan Binner
364bd6ca74 Convert features.toolbar to QT_[REQUIRE_]CONFIG
Move declaration of pick/perp helpers up the dependency chain

Change-Id: I7084ed829a057a0c45d60445c416fb07f2cb5624
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
2018-05-02 09:07:03 +00:00
Kari Oikarinen
3761d99512 tst_QTabWidget: Add unconditional qWait() back
paintEventCount() is currently flaky on macOS. It gets extra paint events after
qWaitForWindowExposed() returns, which causes the following assertions to fail.

Add the wait that was removed in 0cb940b1d3 back
to fix those failures.

Task-number: QTBUG-68032
Change-Id: I68e0b6008de40922ec740291dfdd1842e0f62f89
Reviewed-by: Sami Nurmenniemi <sami.nurmenniemi@qt.io>
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
Reviewed-by: Ville Voutilainen <ville.voutilainen@qt.io>
2018-05-02 09:04:14 +00:00
Gabriel de Dietrich
8b098e6544 tst_QMenuBar: Remove obsolete warning check
This warning was removed when we refactored QCocoaMenuItem::sync().

This change amends 8412009de6.

Task-number: QTBUG-68013
Change-Id: I0d65109dff5f82db530b6bdced96c05692af6b4b
Reviewed-by: Liang Qi <liang.qi@qt.io>
2018-05-01 17:11:16 +00:00
Daniel Teske
259648f876 QItemSelectionModel: More fixes for is(Column/Row)Selected
Replace the code for isRowSelected and isColumnSelected with
a much simpler algorithm for deciding if a row/column is selected.

In a model with a cross-hatch of unselectable indexes, the return values
of is(Column/Row)Selected would depend on the order in which the
selections were done.

Task-number: QTBUG-18001
Change-Id: I6aa4b1df7c07fae469a686041927fa8c42bc9b16
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
2018-04-30 19:01:14 +00:00
Daniel Teske
edf6debbab QitemSelectionModel: Fix a bug in isColumnSelected
Previously the code for isColumnSelected and isRowSelected differed
slightly, in how unselectable indexes would be treated.

This made isColumnSelected return false for a column, which mixed
unselectable indexes and selected indexes. Thus in some situations,
the user could not deselect a column via a QTableView header.

By copying the isRowSelected code to isColumnSelected, rows and
columns behave identical.

Task-number: QTBUG-18001
Change-Id: I6ca85ac64b31a481fafeaa3bec958b18283eed8d
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
2018-04-30 19:01:01 +00:00
Daniel Teske
d6b9cba812 tst_QLineEdit: Use correct keys to move to Start/End of Line
Home/End don't actually work on macOS. The "select all and delete" key
was not actually testing anything at all.

Change-Id: I44d3e9dd27da418afd699bf8720d5369325d20df
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Reviewed-by: Andy Shaw <andy.shaw@qt.io>
2018-04-30 19:00:34 +00:00
Antti Kokko
a7863a5854 Add changes file for Qt 5.11.0
Done-with: Thiago Macieira <thiago.macieira@intel.com>
Done-with: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
Done-with: Richard Moe Gustavsen <richard.gustavsen@qt.io>
Done-with: Timur Pocheptsov <timur.pocheptsov@qt.io>
Done-with: Mårten Nordheim <marten.nordheim@qt.io>
Done-with: Lars Knoll <lars.knoll@qt.io>
Change-Id: I7584f8d010ab6abffcd5c92ac6192a04dc20074d
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
2018-04-30 11:54:51 +00:00
Friedemann Kleint
578c96f0bb Polish the manual touch test
Introduce C++11, nullptr, for, port to Qt 5 connection syntax.

Change-Id: I2d233ccd68bad533af8d4674d91236b2c049e997
Reviewed-by: Andy Shaw <andy.shaw@qt.io>
2018-04-30 11:46:19 +00:00
Sergio Martins
dbc0a5ba70 Remove assert from QFormLayout::takeRow()
Having rows without fields is a supported use case so it shouldn't
assert. Code works quite well in release mode, but crashes in debug
mode.

Change-Id: I1c4f736318489bae09780fcdb56136181afcac17
Reviewed-by: Samuel Gaist <samuel.gaist@edeltech.ch>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
2018-04-30 11:41:57 +00:00
Mårten Nordheim
51e14787d5 Stop rejecting cookies which have a domain that matches a TLD
... but only if the host it came from is an EXACT match. Also only apply
the cookie if the url is an EXACT match.

[ChangeLog][QtNetwork][QNetworkCookieJar] Cookies will no longer be
rejected when the domain matches a TLD. However (to avoid problems
with TLDs), such cookies are only accepted, or sent, when the host name
matches exactly.

Task-number: QTBUG-52040
Change-Id: Ic2ebd9211c48891beb669032591234b57713c31d
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
2018-04-30 11:18:43 +00:00
Friedemann Kleint
2677ad78e6 Vulkan Examples: Fix Clang warnings about initialization of VkClearColorValue
hellovulkanwindow.cpp(97,38):  warning: suggest braces around initialization of subobject [-Wmissing-braces]
    VkClearColorValue clearColor = { 0.0f, m_green, 0.0f, 1.0f };
hellovulkantexture.cpp(771,38):  warning: suggest braces around initialization of subobject [-Wmissing-braces]
    VkClearColorValue clearColor = { 0, 0, 0, 1 };
..\shared\trianglerenderer.cpp(455,38):  warning: suggest braces around initialization of subobject [-Wmissing-braces]
    VkClearColorValue clearColor = { 0, 0, 0, 1 };
renderer.cpp(896,38):  warning: suggest braces around initialization of subobject [-Wmissing-braces]
    VkClearColorValue clearColor = { 0.67f, 0.84f, 0.9f, 1.0f };

Change-Id: I3c2403699059dac2f88541f2a2102b774db0c887
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
2018-04-30 08:35:15 +00:00
Kari Oikarinen
fe670fc0f0 tests: Include qglobal.h in EmulationDetector
Checking for Q_OS_LINUX, Q_PROCESSOR_ARM and use of QT_CONFIG() checks should
only happen after qglobal.h is included. Otherwise the header will be broken if
included before something that uses qglobal.h

Change-Id: I052e46784f7b174e74e8894e1b7c5b7528420f5d
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
2018-04-30 06:18:06 +00:00
Volker Krause
9ac9bea16c Fix handling of QDBusMessage in qdbuscpp2xml in bootstrapped mode
In bootstrapped mode QDBusMessage isn't available, so looking up the type
via QMetaType wont work. QDBusMetaTypeId has this special-cased, but that
alone isn't enough for qdbuscpp2xml to produce the same result as in non-
bootstrapped mode.

The effect of this has also been described here before in detail:
http://lists.qt-project.org/pipermail/development/2017-February/028756.html

Change-Id: Id309a3a910f971c6150cdc6d06f2b48f1b95c787
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2018-04-29 16:44:32 +00:00
Jussi Witick
9fdbd9dce9 Specify that you need an instance of QNetworkAccessManager per thread
The class is not thread safe, so one instance is not enough for whole
application. Mention that QNetworkAccessManager instance can only be
used from the thread it belongs to because it is a QObject.

Change-Id: I56184e4f8fbd36aca3f6677310431eab88346e6e
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
2018-04-27 07:50:32 +00:00
Paul Olav Tvete
6cece0f43a Fix for input method commit that ends with newline
If the input method event contains a commit text that ends with a
newline, text, the commit string is inserted first. This changes the
current block.

This change makes sure that we apply the formatting changes (including
removing the old preedit text) to the old block in this specific case.

Task-number: QTBUG-67836
Change-Id: Ia83963780fb14b3c571dbbe3eb81fbbe20fbf412
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
2018-04-27 07:47:13 +00:00
David Faure
8d7af27e42 QMimeDatabase: check 128 bytes rather than 32, for text vs binary
As per today's change in the MIME spec.
https://bugs.freedesktop.org/show_bug.cgi?id=97372

Change-Id: Iba4fdd95c3ebec8a042404956db3466a46c97f1d
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2018-04-27 07:27:21 +00:00
Kari Oikarinen
b7d810a7cc tst_QFocusEvent: Add qWaitForWindowActive() to checkReason_focusWidget()
checkReason_ActiveWindow() started failing on Windows when run together with
other tests, but still passed on its own.

The offending tests was checkReason_focusWidget(), which showed a window but did
not wait for it to be active.

After adding this wait the whole test executable passes on Windows as well.

Amends fd87c8da82.

Change-Id: I384bc45176fcd7bf6f491a4f39b46464ba45693b
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
2018-04-27 07:16:11 +00:00
Mikhail Svetkin
194a404490 Make the use of -fdata-sections and --gc-sections more generic in Qt
Add qmake feature and configure option, which optimze the size of static
exectuable. Use for static build.
Enabled via configure --gc-binaries, or CONFIG += gc-binaries in 3rd party
projects.

Change-Id: I3c25b02caaef6a4afc6019afc9c67122dd11696d
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
2018-04-27 06:47:35 +00:00
Ulf Hermann
67aa365d41 Do emit CMake declarations for existing private headers
We need to make sure we don't emit CMake declarations for private
headers if those headers are absent. However, most of the time we have
private headers and should add them.

Task-number: QTBUG-37417
Change-Id: I639eb93d008de27928dedac540894af70c1883b9
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
2018-04-27 06:43:11 +00:00
Thiago Macieira
ff029a9ca8 tst_QString: remove old HP aCC workaround
Change-Id: I3840d727dee443318644fffd15291b1d77dca2fc
Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
2018-04-27 07:07:45 +00:00
Ulf Hermann
e0b5ff4ad5 QWidgetWindow: Immediately forward close events to QWindow
This way the platform window is destroyed in a timely manner, preventing
redundant close events from the window system.

Task-number: QTBUG-43344
Change-Id: Ifdfca59ceacef54405f1c227c493dc514a1b27ea
Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
2018-04-27 07:00:13 +00:00
Kari Oikarinen
e69b6d2dbc tst_Gestures: Use QTest::qWaitForWindowExposed()
Instead of a local wrapper for it.

Change-Id: I0708dfad44b3db0c7a13e75ba5b4193ab50ac315
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Gatis Paeglis <gatis.paeglis@qt.io>
2018-04-27 06:20:48 +00:00
Morten Johan Sørvig
18d2619224 QGraphicsView: Improve high-DPI item caching
Scale cache size by target paint device devicePixelRatio.

Add manual test for the cache modes.

Change-Id: I9f3a2b4c4cf12571aefe54ebf534009a2448fb48
Done-with: MihailNaydenov <garfieldhq@yahoo.com>
Task-number: QTBUG-26795
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
2018-04-26 23:39:46 +00:00
Morten Johan Sørvig
19950b3267 QGraphicsView: Create high-dpi background pixmap
Scale pixmap size by the viewport devicePixelRatio,
and make sure scrolling deltas and expose regions
are correctly scaled.

Change-Id: Ibeac34c5ecd531ca7c09802f0b5e1f45b8e31b65
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
2018-04-26 23:39:04 +00:00
Thiago Macieira
2660aefdbc Remove hack that violates ODR
GCC with LTO sees through our hack:

qprintdialog_unix.cpp:212:7: warning: type ‘struct QPrintDialogPrivate’ violates the C++ One Definition Rule [-Wodr]
qabstractprintdialog.cpp:49:7: note: a different type is defined in another translation unit

This hack was there so that the QPrintDialog functions in
qabstractprintdialog.cpp could use the d pointer. So instead of hacking
around the issue, just use the class that this file has access to:
QAbstractPrintDialogPrivate.

Change-Id: I3840d727dee443318644fffd1528e2e8b814e983
Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
2018-04-26 20:04:36 +00:00
Gabriel de Dietrich
8412009de6 Cocoa Menus: Refactor QCocoaMenuItem::sync()
And move some logic into detectMenuRole(), where it belongs.

This refactoring will enable fixes for the issues below.

Change-Id: Id03bb5c26d7dd0bb3b94f01e69935e1f3321bb95
Task-number: QTBUG-17291
Task-number: QTBUG-30812
Task-number: QTBUG-38705
Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
2018-04-26 17:51:18 +00:00
Gabriel de Dietrich
25d5c8fe5d Cocoa Menus: Clean up code
In this edition:

  * Use Objective-C properties where appropriate.
  * Use recently introduced qt_objc_cast().
  * Remove uses of foreach.
  * Update copyright headers.

Change-Id: I2a07a7b6cab27b833e4deaeedf9563463ff55914
Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
2018-04-26 17:51:53 +00:00
Christian Ehrlicher
b2a282d7c7 QToolButton: Elide text when constraints prevent from showing whole text
When a QToolButton has a fixed width and the text is too long, the text
was cropped which made the button look ugly.
Fix it by eliding the text in the middle in this case.

Task-number: QTBUG-64132
Change-Id: I7bc46d1edcf4e67b5e1a5b651d4793f9ffa15310
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@qt.io>
2018-04-26 16:37:21 +00:00
Thiago Macieira
26e3dfd4ab Improve padding hole issues in QAbstractPrintDialogPrivate
Placing a boolean between two pointers means we'll have a 7-byte padding
hole (64-bit). So move it to the bottom of the class, consuming the tail
padding that needs to be there anyway on 64-bit systems.

On 32-bit Unix systems, the better place would be at the top, as the
parent class (QDialogPrivate) has a 3-byte tail padding. But that's
fragile, as QDialogPrivate can change, doesn't apply to MSVC's ABI and
doesn't gain us anything on 64-bit.

Change-Id: I3840d727dee443318644fffd1528e4f05f4142bd
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
2018-04-26 16:15:30 +00:00
Giuseppe D'Angelo
fcc94b1442 QColorDialog: deprecate rgba()
It was already deprecated in the documentation, just use
the QT_DEPRECATED macros.

Change-Id: Ie9ba7dd36af8e4eb5bddb7429182db98c7c638f5
Reviewed-by: Christian Ehrlicher <ch.ehrlicher@gmx.de>
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
2018-04-26 16:01:52 +00:00
Liang Qi
b3ebe8713b Merge "Merge remote-tracking branch 'origin/5.11' into dev" into refs/staging/dev 2018-04-26 15:53:08 +00:00
Tor Arne Vestbø
7c3053b301 qmake: Don't map Xcode SYMROOT to output directory
The output directory may be the same as the source directory in
the case of an in-source build, but Xcode treats the SYMROOT as
a build directory, and automatically excludes it from Time Machine
backups, which may result in not backing up sources.

Instead we map SYMROOT to an .xcode subdirectory of the output
directory, and then use CONFIGURATION_BUILD_DIR to make sure
the final build targets end up where they used to.

Task-number: QTBUG-52474
Change-Id: I3852ca9088e75ca62fca4c1217b5485175d9436f
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2018-04-26 14:19:21 +00:00
Morten Johan Sørvig
7160df3a15 High-dpi drawTiledPixmap (raster paint engine)
Implement more consistent behavior for drawTiledPixmap(),
which should produce the same visual tiling pattern
independent of display devicePixelRatio

Consider the following pixmaps and draw calls:

  QPixmap px32; // 32x32
  QPixmap px64; // 64x64
  drawTiledPixmap(QRect(0, 0, 128, 128), px32);
  drawTiledPixmap(QRect(0, 0, 128, 128), px64);

On 1x displays this will produce 4x4 and 2x2 tiles,
respectively.

On 2x displays this would previously produce a different
tiling pattern, where the paint engine would tile in
the device pixel coordinate system. Change this to
tile in the device independent coordinate system,
producing the same visual tiling pattern as the 1x case.

It is possible to produce a 4x4 tiling pattern with
high-resolution output from the 64x64 pixmap by setting
the devicePixelRatio:

  QPixmap px64;
  px64.setDevicePixelRatio(2);
  drawTiledPixmap(QRect(0, 0, 128, 128), px64);

This change adds an inverse scale to the image filler
transform that accounts for the pixmap devicePixelRatio.

[ChangeLog][QtGui] QPainter::drawTiledPixmap() now
tiles in the device independent coordinate system.

Change-Id: I4918d274192967f222f181b374571c7c597dcd76
Reviewed-by: Jonathan Courtois <jonathan.courtois@gmail.com>
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
Reviewed-by: 石博文 <sbw@sbw.so>
Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
2018-04-26 10:39:25 +00:00
Frederik Christiani
c127fc83ad Show high DPI custom cursor on macOS
Set the devicePixelRatio to 1 on the scaled down pixmap.
A scaled down version of the high DPI pixmap is added to the NSCursor in
addition to the high DPI one, but the devicePixelRatio must be set
correctly on the smaller of the two for macOS to pick the right image
to use on a high resolution display (retina).

This change also fixes the problem that only a high DPI custom cursor
with a hotspot in the upper left quadrant is applied by macOS. I suspect
that the NSCursor was discarded by macOS, because the hotspot was
outside the device independent bounds of the smaller scaled image.

Task-number: QTBUG-52211
Change-Id: I7e552e8f62f5255dd3786da44b2f619f6790c37a
Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
2018-04-26 08:56:32 +00:00
Liang Qi
866b47916d Merge remote-tracking branch 'origin/5.11' into dev
Conflicts:
	src/plugins/platforms/cocoa/qcocoafontdialoghelper.mm
	src/plugins/platforms/cocoa/qcocoawindow.mm

Change-Id: Ideea96d1b43d47b1d9b34e11c9986a88e240aa71
2018-04-26 09:55:10 +02:00
Oswald Buddenhagen
4bab1b0d7c configure: don't emit empty GCC_MACHINE_DUMP to qdevice.pri
there is no point in doing that.

Change-Id: Ie09edeed340ea87eddb38980b0df7ed777ec6280
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2018-04-25 18:53:33 +00:00
Oswald Buddenhagen
75587c8030 qmake: fix look-up of relative files from .depend_command in shadow builds
the dependency paths are fixified against the output directory, so we
must resolve them accordingly.

Change-Id: Id92750aad358153bd2db5daca3194c54eda58dbb
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2018-04-25 18:52:49 +00:00
Lars Knoll
a9fc91466c Protect all accesses to the global engine cache by a mutex
Otherwise, we'll end up with corrupted memory when using
QRegExp from multiple threads.

Amends bbdc1b5ccb.

Change-Id: I9d35897629d0bc26503aa0c537c5f99013921fdd
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
2018-04-25 18:50:06 +00:00
Oswald Buddenhagen
395a19f032 improve documentation, mostly of the QT_TR*_NOOP macros
Change-Id: I65ccddec84a01945a6aee2a859d4f92ea830785b
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
Reviewed-by: Mateusz Starzycki <mstarzycki@gmail.com>
Reviewed-by: Martin Smith <martin.smith@qt.io>
2018-04-25 17:17:04 +00:00
Oswald Buddenhagen
b55176df08 syncqt: prune references to @ignore_for_master_contents
this variable hasn't been used in any syncqt.profile for many years, and
if it would, it would cause quite some side effects.

Change-Id: Ia936eff8f6a2a801fc644eee991821165d51dc1f
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
2018-04-25 17:16:55 +00:00
Gabriel de Dietrich
960424f86b Cocoa QPA: Remove uses of NULL
Change-Id: Ia0d1f019622d20ad70b5fd8c4122b719c0286738
Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
Reviewed-by: Erik Verbruggen <erik.verbruggen@qt.io>
2018-04-25 17:08:01 +00:00