If a non-printable character has an advance, we would lay out the text
as if the character was part of the output, and then ignore the
character later when the text was rendered. To fix cases such as this,
we take the dontPrint attribute into consideration when adjusting the
advances.
Task-number: QTBUG-21347
Reviewed-by: Eskil
Reviewed-by: Lars
(cherry picked from commit 6326227674efa85c1a5320141041110d211efc75)
Change-Id: I4d01b60498f3b5f30b69530c8b49dd720d83ad0b
Reviewed-on: http://codereview.qt-project.org/4410
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
Results of the ongoing workshop in Oslo:
QInputPanel will be the application facing interface
for controlling the input context as well as querying
things like the position of the virtual keyboard.
QInputContext is significantly cleaned up and only there as
a compatibility API for existing code.
Change-Id: Ie8e2ee480930763f414bfaae63247b1fb6500c82
Reviewed-on: http://codereview.qt.nokia.com/4357
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Vesa Rantanen <vesa.rantanen@nokia.com>
Reviewed-by: Joona Petrell <joona.t.petrell@nokia.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Wayland config.test would only be able to build if there was a valid
value for QMAKE_LIBDIR_WAYLAND because if this was empty, -L would be
used, which would lead to invalid command syntax. So even if the
library was already in the build path, the test would fail. The test
now checks QMAKE_LIBDIR_WAYLAND for valid directoires first before add
them to the LIBS variable.
Change-Id: Ic3a3be54a41390d6302a122a6d20f896e962ccc7
Reviewed-on: http://codereview.qt.nokia.com/4354
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Paul Olav Tvete <paul.tvete@nokia.com>
This code is no longer in use.
Change-Id: I1e582b8a5f1fad40ef75e412162f3aa9f10ab535
Reviewed-on: http://codereview.qt.nokia.com/4352
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Kent Hansen <kent.hansen@nokia.com>
This change prepares for enabling native menus
on OS X.
Move code from src/widgets to cocoa:
- qcocoaapplicaiton
- qcocoaapplicaitondelegate
- qcocoamenuloader
- qcocoamenu
- qmenu_mac
- misc helpers to qcocoahelpers
Create a QNSApplication and
QCocoaApplicationDelegate at application startup.
New Lighthouse API:
- class QPlatformMenu
- class QPlatformMenuBar
- QPlatformIntegration::createPlatformMenu()
- QPlatformIntegration::createPlatformMenuBar()
Platforms that wants a native menu integration
subclasses QPlatformMenu[|Bar] and implements the
create function. The default implementation returns
0, which causes QMenu to use the standard Qt
menus.
This API is based on the current native menu
abstraction that Mac, Wince and S60 uses in Qt 4.
The main difference is that the platform classes are
proper standalone classes and not #ifdeffed into
QMenuPrivate.
Change-Id: I3da41f80b0ae903a476937908b1f9b88014b7954
Reviewed-on: http://codereview.qt.nokia.com/4068
Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
Properly free QOpenGLContext in QGLContext::reset(), if we own it.
Change-Id: Ibd913283cf8b3b8a4dc6295a878a22a3989309a7
Reviewed-on: http://codereview.qt.nokia.com/4320
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
also move QPlatformSurface to its own file
Change-Id: I29fb6c70ede18a0ac5e0f6bfb97a33293633e668
Reviewed-on: http://codereview.qt.nokia.com/4309
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Some of these trigger pre-refactor as well by adding a QTest::qWait()
after QTest::qWaitForWindowShown().
Change-Id: I48863fd31fc0c3b51463ed922782e86c21f05bff
Reviewed-on: http://codereview.qt.nokia.com/4272
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>
QPixmap::init shadows base class QPaintDevice::init with different
declaration which makes latest clang builds fail on modules.
Simple renaming of this private function fixes the issue.
Change-Id: I65b2b09e81f4833dc9b54b36423ba7c15d9ded4f
Reviewed-on: http://codereview.qt.nokia.com/4289
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
All virtual base classes with accessible destructor should declare
the destructor as virtual too.
Change-Id: I2b07c7e824612af072d7802095d958dca8cc34c8
Reviewed-on: http://codereview.qt.nokia.com/4274
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
QPA mkspecs are of the same form as the rest, we don't want to parse
this in a different way.
This was resulting in the COMPILER variable being wrong and in turn
QT_GCC_*_VERSION and the like not being set.
Change-Id: Ia703be95dbe586e1a8e897c3e244202363fb8c6a
Reviewed-on: http://codereview.qt.nokia.com/4195
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Paul Olav Tvete <paul.tvete@nokia.com>
The mouse, touch, key events have no timestamp field currently,
meaning that the timestamp passed to QWindowSystemInterface's
handleMouse, Touch, KeyEvent functions will not be stored in the
generated events. The timestamp can be quite valuable in some cases
(e.g. when performing filtering of touch events) so losing this
information is not desirable. The patch adds a timestamp field to
QInputEvent, which is the base for mouse, touch, key, and other
events, and also makes QGuiApplication to store the timestamp in the
generated events.
Change-Id: Icb9de8b238cb341916eac33ce21603f4955baca7
Reviewed-on: http://codereview.qt.nokia.com/4196
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
QPlatformNativeInterface can now contain generic window
properties in a QVariantMap, to facilitate communication
with the compositor and clients for certain platforms.
When window properties change, a signal is emitted from the
respective QPlatformNativeInterface instance. The properties
are intended to be read/writable from both client and server.
Change-Id: I7b42f7910d03c0d309add6c7dbb1c9b66ad22a3f
Reviewed-on: http://codereview.qt.nokia.com/3956
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
This autotest is using private symbols, available only when Qt is
configured with -developer-build.
Change-Id: I9bf221040b8225ed173761c7ee23e69efd85c3cb
Reviewed-on: http://codereview.qt.nokia.com/4148
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Reviewed-by: Jo Asplin <jo.asplin@nokia.com>
Pass the filename when creating the logger rather than when commencing
output. This will simplify forthcoming changes for running multiple
loggers.
Change-Id: I563aa97661caf279a5dcccb1321ff3ce4725b332
Reviewed-on: http://codereview.qt.nokia.com/4116
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
QTextControl's word selection will only include a word if the cursor
position is past the mid point of the word. This can make it
difficult to select words near the edges of the screen on touch
devices. For the TextEdit word selection mode select a word ignore
the relative position within a word.
Task-number: QT-5206
Change-Id: I4e5675596cd89934b3c2bc5d825088887c222fe8
Reviewed-by: Martin Jones
Reviewed-on: http://codereview.qt.nokia.com/4166
Reviewed-by: Andrew den Exter <andrew.den-exter@nokia.com>
Unmask the last character typed, not the last character in the string.
Change-Id: I9c70d2347bf878c18ab0a7f4ea76f755ca19a85c
Task-number: QTBUG-17003
Reviewed-by: Alan Alpert
(cherry picked from commit b98e9e69dd8ba33d5f01b9518d95b63b86c4b443)
Reviewed-on: http://codereview.qt.nokia.com/4165
Reviewed-by: Andrew den Exter <andrew.den-exter@nokia.com>
Task-number: QTBUG-19109
Reviewed-by: Martin Jones
Change-Id: I709427fe73b2d6ed9e3526af140b9dc375740789
Reviewed-on: http://codereview.qt.nokia.com/4164
Reviewed-by: Andrew den Exter <andrew.den-exter@nokia.com>
Many applications relied on the undefined behaviour that the
filesystem engines returned clean paths (despite the documentation
stating that they may not), and consequently suffered regressions with
Qt 4.8.
Unix paths are once again cleaned if necessary.
Windows/Symbian paths were already cleaned, but now use the utility
function to check if a path is dirty, to avoid duplicated code.
Task-number: QTBUG-19995
Change-Id: If8c18469f149291c9d079ae3da23bc2087bbd49a
Reviewed-on: http://codereview.qt.nokia.com/4154
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Prasanth Ullattil <prasanth.ullattil@nokia.com>
use an inlined version of isValid() everywhere;
don't detach where is non required;
get rid of extra checks where possible
Change-Id: I6815c1f7d7c03677d9c57dda2731ed2868ea92aa
Merge-request: 1343
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
Reviewed-on: http://codereview.qt.nokia.com/4144
... to reduce the possibility of blacklisting valid certificates that
happen to have the same serial number as a blacklisted one, which is
unlikely, but possible.
Reviewed-by: Richard J. Moore <rich@kde.org>
(cherry picked from commit 6b1a8129623e3716f2fc075608b260ce7c381fe2
and adapted to the source incompatible change)
Change-Id: If714c34f6ce028032eee6d68f34d088b6ad5a0cc
Reviewed-on: http://codereview.qt.nokia.com/3895
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Peter Hartmann <peter.hartmann@nokia.com>
The build-key is an old mechanism to work around binary
incompatibilities in GCC 3.x versions. Modern GCC has not broken binary
compatibility since 3.4, making this mechanism obsolete.
The cache value stored now only includes Qt version, the debug/release
boolean, and the last modified time for the plugin. Old 4-value keys
will be replaced with new keys as the plugins are reloaded the first
time.
This also removes QLibraryInfo::buildKey(), which is a source-incompatible
change.
The UNIX and Windows configure tools have been updated to stop
outputting the QT_BUILD_KEY preprocessor directive.
See also:
http://lists.qt.nokia.com/pipermail/qt5-feedback/2011-August/000892.html
Change-Id: I7d06969a370d3d2c6de413c1230d9d6789cbf195
Reviewed-on: http://codereview.qt.nokia.com/3977
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>