The hack to use the environment variable for turning off the
mouse cursor is broken when running against Ministro, because
Ministro does not pass the environment on.
A better solution is to make it possible to turn the cursor
in the EGLFS plugin off in the hooks instead.
Task-number: QTBUG-30553
Change-Id: Id09b48c350d2c95de9bb174f7480cf0cd2bf8145
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
when the type is a pointer to a registerable 1 argument template type.
Task-number: QTBUG-31002
Change-Id: Iac0d6b71b2b805a1876110a0781d02188083c4e5
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
This is how it was done in Qt 4.
An issue with the current approach was that it did not consider
modifiers when setting a Qt::Key_* value, which would assign the same
Qt keycode for:
a = a(65)
Alt + a = ā(65) [here it should return a unicode value for 'ā']
This is inconsistent with the other platform plugins.
Also in the combination with a dead keys it was returning nothing in
the output.
Task-number: QTBUG-29005
Change-Id: Ic28eb55b3a9798ecb6012cc2e3fb18589b8b0392
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
Reviewed-by: Cyril Oblikov <munknex@gmail.com>
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
Set ref count to zero in QLocalePrivate::create() to avoid QLocalePrivate
object leaking.
Change-Id: I8948c27d59b2038266ab04c6113610b9b4481b45
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Comparing to the Qt4 implementation, possibleKeys() should skip records
where qtKeys are equal.
Task-number: QTBUG-31132
Change-Id: I2fb073b4dc7291f909cce616f40f7c2491e7cf26
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
When encountering code such as:
X<a<b>
moc does not have the mean to know if 'a' is a type or a variable, so the
type parser currently assume that '<' always open a template parameter.
(instead of being the operator<)
The type parser do not care about the actual type, it just need to strip
the string out. The problem is that then the whole rest of the file will
be considered as the type.
With this patch, we also stop the parsing at semicolon. The type will
be wrong, but this allow the parser to recover and it will continue to
look for more classes after this.
(In other words, moc will no longer break if it encounter such construct
in a header. But it will still not parse such types correctly if used
within a Q_OBJECT class)
Task-number: QTBUG-31218
Change-Id: I1fef6bc58493d7c00df72401c9ad55463b24eaa7
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
... in mingw-using specs because msysgit
doesn't provide install.exe and Windows
doesn't care about Unix permissions anyway.
Task-number: QTBUG-31147
Change-Id: Ic8032ca1a970ef41381852b6c5c372b805a124f1
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
Destroying the instances is a problem because the instances might
have been created in a plugin. In that case, the destructor of
the instance will be implemented in the plugin. As the instance
destruction code is run very late, the plugin might have already
been unloaded by the time an attempt is made to destroy the
instance.
The workaround is to create static instances on the stack.
Task-number: QTBUG-31142
Change-Id: Ic2632c3548a734b742da46d90249916c35705d46
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@digia.com>
Although it is possible to construct those containers, they are not
usable, as qHash(float) and qHash(double) are ambiguous.
Also don't use CustomMovable as a container key.
It is not equality or lessthan comparable.
Change-Id: I8c7ee068250e2e2b3427769153e3017721c13c50
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
When Xcursor LoadCursor fails to find a cursor
Task-number: QTBUG-27537
Change-Id: I46086c78c3d5bea3c39187dcc55b4774e58f5749
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
This allows you to easily retrieve properties in the XSETTINGS
specification. It is also possible to add listeners to get notified when
a specific property changes.
XSETTINGS is lazy initialized, so it will not be instansiated before
someone uses it. For now the intended use is a fallback for finding
cursor theme
Change-Id: Id47f0613f5876424cd47d721b40da17d3f63429e
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
Objective-C++ does not support namespaces. In order to make this work,
we decorate each symbol with suffix using the macro QT_MANGLE_NAMESPACE.
However, with such a technic each public symbol needs to be explicitly exported through
this macro. The use of @compatibility_alias allows to define alias to use it
automatically and transparently.
Task-number: QTBUG-23946
Change-Id: Id521b8160bab126fda40a9d960277b1c04cc8b66
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
We were setting the frame origin and content size as two separate steps.
The frame origin was asynchronous, while the content size was synchronous.
This resulted in the window visually jumping/moving, instead of applying
the new geometry in one single step.
We now set both in one go using setFrame, by manually calculating the
frameRectForContentRect. This makes the whole process asynchronous.
Task-number: QTBUG-31039
Change-Id: Iaba46106b9f200c707507f330fa801c99e2e7d89
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
the fallback is to look in the install dir (which is the build dir when
no -prefix is used), which doesn't work for a script in the source dir.
amends 6b38524b
Task-number: QTBUG-31131
Change-Id: If615ab4e3a2839b6b5be9bf6ef79d3f894b1748d
Reviewed-by: Fawzi Mohamed <fawzi.mohamed@digia.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
Reviewed-by: Mitch Curtis <mitch.curtis@digia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
After Apple added the resize functionality to window borders,
they stopped rendering the size grip in most apps. Hence we do not
need to either.
Since the status bar height depends on the status bar being
there, we considered the safest option to keep it but make
it hidden.
Change-Id: Ida06e8f0de0f50d746a7d25bc5a472e22a370645
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
We permanently enable 'wantsBestResolutionOpenGLSurface' when creating
an Open GL window/surface. We were enabling it once we would detect a
high-dpi Cocoa backend, whitout ever turning it off. Leaving it 'on' on
non-high-dpi displays should not change anything.
Task-number: QTBUG-31000
Change-Id: I3d0c77f7b36f3c22dacd04a50fcc5a7d88af32c0
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
Change-Id: I1d745adfbae371f8f1f76e954be98f4c2fd962e0
Reviewed-by: Alexander Neundorf <neundorf@kde.org>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
If the menu bar is subject to height for width (HFW) we should of
course respect that, but in addition we should ensure that the HFW is
within the minimum and maximum height. This also is consistent with how
QGridLayout calculates the effective minimum row height.
This fixes a regression because change 4780f94e391b5e881497c5228661dead
turned QTabWidget into a proper height-for-width citizen, and when
setting a QTabWidget as a menuwidget, the buggy codepath for HFW was
suddenly hit in menuBarHeightForWidth().
Task-number: QTBUG-31057
Change-Id: I3c1bb8063c92d6eda7e9433e44f08967d8e1c43e
Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
With scrollbars enabled we would get two resize events when tiling the windows.
First one with the expected viewport size, and then a second one with a bigger
viewport when the QMdiArea calculated that the space it set off for scrollbars
was not needed after all. Depending on whether or not the geometry propagation
of the platform plugin was synchronous or not, we would get one or both of the
events before evaluating the viewport size against the expected size, resulting
in flakeyness, and an expected fail on OS X.
We now explicitly disable the scrollbars during the test, and restore them for
the latter test that verifies that scrollbars show up when the area is resized
below the minimum size of the combined child widgets. This allows us to unskip
the expected failure on OS X, and should make the test less flakey.
Change-Id: Ief767456cfd79f5cd0bb0e220c40e5995674ff71
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
Instead of waiting for -drawRect to call -setView on the
NSOpenGLContext, we go ahead and attempt to set the context as soon as
possible. If it is indeed required that we call -drawRect first then
will try to call -setView again during -drawRect with the new
NSOpenGLContext.
Change-Id: I33d9f2ba241b49e8cfa6c9156dd5bf5e4cc6b164
Reviewed-by: Liang Qi <liang.qi@digia.com>
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
The HTTPS links fail in Qt Assistant on Windows as the
qt installation package includes qt libraries that are
built without SSL support for legal reasons.
Task-number: QTBUG-31073
Change-Id: I86909abadb1e8164749d924cc53ee05aa57f8f31
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
Reviewed-by: Karsten Heimrich <karsten.heimrich@digia.com>
it was only meant to automatically support syncqt.bat, which is gone
now.
fwiw, invoking batch files from within msys Makefiles was broken to
start with, as sh cannot directly run them.
Change-Id: I435568c578ce79e46f4e230e985ca9a04b34ffff
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
we never call it with an explicit extension, so this only complicates
matters.
Change-Id: Ib15180130359bb9575bf5dda564f8b817431618f
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
instead, rename it to syncqt.pl and rely on qtPrepareTool()'s new
ability to correctly invoke it as a perl script even under windows.
the wrappers themselves have been trivial at this point, so there is no
added value in keeping them, either.
Change-Id: I77cf65edbcfaa48ed1900defe940d4eb4b82d5b9
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
this makes it possible to directly execute perl scripts on windows.
Change-Id: Ibbb90d46518ea8ac4f695d07141700630b33fab3
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
... and introduce -hostlibdir configure option for symmetry.
the libraries built for the host have no business in the target prefix.
in principle this code would even support dynamically linked host
libraries, but that's currently unused.
Task-number: QTBUG-30591
Change-Id: I8e600fa4911a020fb0e87fbf7ef2f35647c7c4d5
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
Reviewed-by: Ivan Romanov <drizt@land.ru>
Currently Qt looks at 1000 rows when scaling a column.
That can be slow in some situations and too inaccurate in others.
With this patch we leave it up to the user to decide how precise
e.g resizeToContents should be.
Change-Id: I6ef60f9a3bb40fc331ce1a1544fdc77488d20ca3
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
This makes sizeHintForColumn and sizeHintForRow considering indexes that
are outside the visual area - which is what most people want. It is
a bit weird that scrolling gives '...'
That will make the behavior a bit more like QTreeView, that considers
indexes outside the visual area.
Furthermore it is important since the user cannot just resize a column
when QHeaderView::ResizeToContens is used.
Task-number: QTBUG-4206
Change-Id: Icb209a19ce9e62cd30ca7159a4ad2aa9aadc1b6a
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Fix the inline editor of the QMenuBar in Qt Designer not working
due to the key events being sent to the QMenu which is open
at that time.
Task-number: QTBUG-31059
Change-Id: Ic96bc119d0d2566d8f8d6ee62858445a70a447b7
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
Use the manifest meta-content system to add suitable tags for Qt WebKit
examples.
This enables users to filter for them in Qt Creator Welcome mode by
typing 'webkit'.
Change-Id: Ie9b5f6ff9f455dd3d8f7c64e5f73e30ff021f208
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
MSYS bash (and other msys-compiled executables) perform path
transformation much like Cygwin. This causes syncqt path
substitution to not work correctly, so use 'pwd -W' to get
the Windows version (though with forward slashes) of both
relpath and outpath.
Change-Id: I808e3ef9206ed5f5bd8b6879d12afe664e589e0c
Reviewed-by: Alvaro Burnett <alvaroburnett@gmail.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
When transferring html formated data through the clipboard
some of the html markup was lost when converting from Windows
clipboard native mimedata to Qt mimedata type.
On X11 we are sending everything - inluding <!DOCTYPE ...><html> .. </html>.
This patch enables the same behavior on Windows.
Task-number: QTBUG-30984
(cherry picked from commit 9e28245da1580e25e77a665b7738c59eb298c422)
Change-Id: Ic0e339ad53955f1d31e8dff92ccf38b6eeec369a
Reviewed-by: Andy Shaw <andy.shaw@digia.com>
The function pointer "maybeCancelWaitForMoreEvents" was never
initialized to any value. This caused qt_mac_socket_callback
to call that "function" when it had a non-zero value, which caused
a crash under some circumstances.
Change-Id: I1d31be7b5b7c103fdc0204ffa6e9a5ecbb28d062
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
Void is not constructible, so there is no point in checking how fast
it can be constructed.
Change-Id: Icb4b607bebce30fff5fc57b105101f019e0e0db5
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>