When using different resolution screens, one can arrange them around
the primary screen. However, the vertical offset has to take into account
the fact that NSScreen origin is bottom-left, whereas QScreen origin is
top-left. This usualy impacts the geometry's y coordinate, and can result
in popups showing in the wrong screen.
Task-number: QTBUG-30348
Change-Id: I159e6be2b590bd2d9a31f3f36c3785afcc62123e
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
Used by features in CMake 2.8.11.
This matches the features in FindQt4 in that version of CMake,
namely that the IMPORTED targets contain the appropriate
INTERFACE_INCLUDE_DIRECTORIES and INTERFACE_COMPILE_DEFINITIONS
and that the qtmain.lib static library is automatically linked to
on Windows by executables. Additionally, the
INTERFACE_POSITION_INDEPENDENT_CODE property is set appropriately
if Qt requires users to use position independent code.
Change-Id: Ide341f43fcaf7d722a7bdf1a12b1071c7e548ccc
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Went from taking 30 seconds to 2 seconds, on a SDCard with 10k files.
Windows file dialog does not resolve NTFS symlinks,
it just shows an empty icon, and the link name, not the target.
This allows for a big performance gain by reducing the number of
calls to GetFileAttributesEx() by checking the extension directly.
This also fixes the problems with the native file dialog, which
for some reason, is creating a QFileSystemModel too.
Task-number: QTBUG-13182
Change-Id: Ie2739765fd6c7daea64e3cf1d208ba9720bd39f2
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
This matches upstream changes on https://github.com/raspberrypi/firmware/
Change-Id: Ie28c2fa574d5cd097c033926970db40e8904e42e
Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
The undocumented feature of linking the library with the highest
version number is more confusing than helpful.
We're changing the default from on to off now.
Users who still need this feature can turn it on with:
CONFIG += link_highest_lib_version
Task-number: QTBUG-15596
Change-Id: Ic998c1685003caa6f57e27dccf83c8b4a2a09553
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
When Qt::AA_UseHighDPIImages is set images and pixmaps
may be of the high-dpi type.
Account for this when calculating layout sizes by
clamping the size or dividing by devicePixelRatio()
to go from device pixels to device-independent pixels.
Change-Id: I7b7f4c36ebd83d72ecdf6fbe0ae20e20ed6540bb
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
Scale non-widget paint devices as well.
Change-Id: Ic68fb166058e9b162f8baeab81196ee254f30b2e
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
evdev support in eglfs is now guarded by QT_NO_EVDEV, so this
check is no longer required. This allows eglfs + tslib to be
a supported combination.
This reverts commit a95e396a83.
Change-Id: Icf7c15121b7eca1131d412b05b956cd5d7f189ae
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Since qCpuHasFeature() checks the static qCompilerCpuFeatures variable
and that variable's value might change depending on the compiler flags,
it's best to ensure that the function is not subject to link-time
merging. That would be bad if it happened when qCpuHasFeature() was used
from a file with higher CPU compiler settings than the default, as it
would incorrectly conclude that certain features are always available.
Change-Id: I8bacde056fb89869ec1d306a163742e72522315e
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
This patch reduces the number of calls to GetFileAttributesEx()
when icon lookup is being done.
The second bottleneck is a couple of isSymLink() calls. Will fix
that next.
Task-number: QTBUG-13182
Change-Id: Ife3ff6cfb49d2294c501253ccc55d8c26036be94
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Bring back the ref-counted enable on enter/leave
workaround we had in Qt 4: If any widget in a
window sets WA_AcceptTouchEvents then that window
will start processing touch events.
Enabling touch events has implications for delivery
of other events, for example by causing scrolling
event lag.
Change-Id: I307488937f417612eff624bf9892b82a7f69c1b7
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
Make top-level windows generate enter/leave events
for sub-windows. Keep track of the current "under mouse"
window in mouseMoved and send EnterLeave events when
it changes.
mouseEntered/mouseExited handles enters and leaves
from the top-level window.
Add tests/manual/cocoa/nativewidgets.
Task-number: QTBUG-27550
Task-number: QTBUG-29751
Change-Id: If4b9f9e0f39d9fb05fdab45a100ffdcf107965ad
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
We're treating fontDef.pixelSize as a box height everywhere but in
harfbuzzFont initialization code the logic was opposite.
Change-Id: I4eecf7861a6084c7f2dbe1df85a71f2e251da845
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
Call qt_safe_open in the constructor
to avoid opening the pps files several times.
Change-Id: I1bf79284850353a47ee1fc17797cd667536e17b1
Reviewed-by: Peter Hartmann <phartmann@blackberry.com>
Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
Always use "if defined" instead of "ifdef". The same is valid for
"ifndef" macros
Change-Id: I8e8f65e36dc636c10b3d656ce9a89ab3a664a80b
Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com>
Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
It's Windows only, and it defaults to true.
Change-Id: I82badbcae0fdba589b57a7dfe627b99ec6cc92c5
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
When all the Q_WS_X11 were removed, we also removed the special
case for symbol fonts in QFontDatabase for FontConfig. This
was checkSymbolFont() in Qt 4, and this patch copies the
code and adapts it to Qt 5.
Task-number: QTBUG-30044
Change-Id: I346f208052013eae9de3c33c210bf5db1d2aef87
Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
...by updating HB_Face::isSymbolFont value to make HB know that the font is a symbol font.
U+00AD is a Unicode soft hyphen character, which shouldn't be threated
like a default ignorable (invisible) when 0x00AD occurred in a symbol font.
Change-Id: Idd4760aded644f7f11a1a8d3c03c348abc69a3e4
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
This will likely fix some odd cmake related tests in the CI.
This reverts commit 316d8ececa.
Conflicts:
mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in
src/corelib/Qt5CoreConfigExtras.cmake.in
Change-Id: Ib7714746f96bf12061d92242a42296d200c56c00
Reviewed-by: David Faure (KDE) <faure@kde.org>
The version number parsing needs to handle the reported version string.
Change-Id: Ifd34b2c86b21a1c5e4c91a43447468ca6feab8cf
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
... but only if the QNetworkConfiguration manager requires one.
Change-Id: I1c69c43438f1df9080d207c8598a42201f759c5b
Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
qdoc was not including QML signals in the documentation
for a QML type, when the signals were inherited from a
QML type that had been marked abstract. This is now fixed.
Additionally, the QML type qualifier is not shown in the
header for the documentation for a member of a QML type.
The type qualifier was redundant information, and it was
incorrect for members inherited from abstract base types.
Task-number: QTBUG-30111
Change-Id: I73aef40f69a15bca6948bf36596b83800d248b1f
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
If CMD modificator is active [nsevent characters] is used now to get
keyCode. In this case for example English "X" is returned instead of
Russian "Ч" even if Russian input source is selected.
Task-number: QTBUG-30306
Change-Id: I93cd292633e68327df0c580ed74fe8ad1c9ed27d
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
This was not done in Qt 4 to play well with the QGesture
implementation, and may need to be revisited if/when we
bring back QGesture for Qt 5.
Change-Id: I4f5f6c8a67387039e838d1ef42ecc70c455ed8a3
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
QGraphicsView uses QMouseEvent::globalPos(), so we need to set
it when synthesizing mouse events in QApplication.
Change-Id: I8341e09fdd41400c5c5e1d0ee17c7323efdafaeb
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
It gives a good suggestion on what to do and even shows us how to do
it.
doc.cpp:2681:34: error: adding 'int' to a string does not append to the string [-Werror,-Wstring-plus-int]
result += " " + (column % tabSize);
~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
doc.cpp:2681:34: note: use array indexing to silence this warning
result += " " + (column % tabSize);
^
& [ ]
Change-Id: Idd2157ab04cd2a3e37a1336bb5e8926ddc14823a
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
This makes it possible to properly parametrize alternative compilers.
Change-Id: Iaf0961c47875ee16d815356f36acf5652577cdca
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Otherwise, we end up with an empty QT_LFLAGS_SQLITE and the plugin
won't link.
Change-Id: I026f60bf9cd075218dbe2888fbb7fc82782b27ca
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
... otherwise we would not start reading from the beginning when the
device was reset.
Change-Id: Ida196eb40790fba56ff2eed782fd93a3015222f9
Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
If you include a static library in the test, all symbols will
be duplicated, and this can cause nasty crashes because global
static data is also duplicated. This happened on Linux because
of a global static cache in the font engine where the two instances
of it would get out of sync, and we would reference invalid
data.
To test QPlatformSupport features, a QPlatformSupport test which
does not load any platform plugin (or uses its own platform plugin
which does not load QPlatformSupport) is needed. For now, I will
just revert adding the test, since it is broken and was added
as part of supporting Windows CE:
f2fabf77f9.
Change-Id: I6c002d1e0880ee8e031a68eee80e781fe0c62af4
Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
Stop processing for Qt::Desktop windows (which caused
RegisterTouchWindow() to fail with access denied) and set a
flag to cleanly unregister.
Change-Id: I3d10c93ec92536d3ab1c0503f088c40b0c08a01f
Reviewed-by: Oliver Wolff <oliver.wolff@digia.com>
The handling of StyleChange de-maximizes the child window temporarily,
which was emitting subWindowActivated.
This would crash lokalize, because deactivating a window means deleting
the widgets associated with it, and style-change handling is done in
QApplication by looping over QApplication::allWidgets, which would then
contain dangling pointers.
Full valgrind log at https://bugs.kde.org/show_bug.cgi?id=271494#c7
Change-Id: Ifb24032cde2cd470dcae7cd553ec5ab45a919dd6
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
The default implementation (in the super class) passes the event
to the next responder. This seems to be one valid way to handle
the Qt::WindowTransparentForInput flag. So if a non-alien widget
for which a native NSView is created has the flag
WA_TransparentForMouseEvents, that means the window will have
Qt::WindowTransparentForInput, and the NSView which is created
on its behalf will pass on each event so that other NSViews have
a chance to handle it. (It will also try to reject becoming
first responder, but that doesn't seem to be enough for the following
events to be passed on.) This is a followup to
I979be9f72f7d225d7b960fc5db4c3956d2749982 which purported to
obey the WindowTransparentForInput flag, but actually doesn't.
Change-Id: Ia72a3573c2e3cbfa7ede70bee41ac36df6924598
Task-number: QTBUG-28816
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
... otherwise we would not read from the beginning when trying to
read again. The device is reset when we try to resend a request
(e.g. remote host closed etc.).
Change-Id: I21d3647dd0e00ae8bc2507f08166234f21f88861
Reviewed-by: Markus Goetz <markus@woboq.com>
Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
Reviewed-by: Shane Kearns <shane.kearns@accenture.com>