Unify the two classes and get rid of one
TODO item for Qt 5.
Using strlen in the constructor of QLatin1String works,
as the compiler can do the calculation at compile time.
Change-Id: I59d98c71a34b86d4211fa0d8cfd40b7d612c5a78
Reviewed-on: http://codereview.qt.nokia.com/1219
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
use with QString string(QStringLiteral("foo")) or
QString string(qs("foo")).
qs(...) can in almost all places replace QLatin1String.
the Macro qs requires c++0x support or a compiler
where sizeof(wchar_t) == 2. In case these conditions
are not met, qs simply falls back to QLatin1String.
The commit also cleans up the QStringData structure
significantly, now using only 16 bytes for the header
on 32 bit systems.
The bitflags to store unicode directionality of the string and whether the string would require complex text processing to render are removed. They don't really belong here and the result can be calculated very fast in any case.
Added an internal QRefCount class the encapsulates the
reference counting semantics required where a negative refcount
is never changed. This is required to be able to put the string
data into a constant POD object.
Change-Id: I5b1395213deca48b2d582a036a0e8a8358d26d14
Reviewed-on: http://codereview.qt.nokia.com/1218
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
The class will be used by QString and possibly other
container classes to allow for the Data objects to be
created at compile time in read-only memory.
Change-Id: I9c7538bc97df637cc920e6e5ef23d67a93abac0d
Reviewed-on: http://codereview.qt.nokia.com/1216
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
%dependencies now has a simpler format of gitmodule => gitref instead of
using qt modules and keywords.
Change-Id: I785f30e24e0a793218e2e307bdde56067760c513
Reviewed-on: http://codereview.qt.nokia.com/1215
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Remove some generated files that got submitted
accidentally during the last merge.
Change-Id: I693b451f7175e50ed9d5a7c7ed85705fb764c5e8
Reviewed-on: http://codereview.qt.nokia.com/1290
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Oliver Wolff <oliver.wolff@nokia.com>
1. QtFontStyle::Key comparison should either use styleName or
style, etc., but not both.
2. When initializing a QFont from QFontDatabase::font(), style
and weight parameters should always be set even when we found
a match styleName, in case these parameters will be used for
comparison later.
3. Move styleName out of QtFontStyle::Key so that the code can be
clearer and more explicit.
Change-Id: Icdee8e97568a0f31f57d2cdb8d414f47331fde75
Reviewed-by: Eskil
Reviewed-on: http://codereview.qt.nokia.com/1263
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Jiang Jiang <jiang.jiang@nokia.com>
Change-Id: I851e0b1c3f80a7b33a38cb1ab2665dc0f3c73adc
Reviewed-on: http://codereview.qt.nokia.com/1248
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Gabriel de Dietrich <gabriel.dietrich-de@nokia.com>
Defined to the c++0x constexpr when compiler supports it
Change-Id: I82687fe46848eedf3cffc39982106749b3dde8aa
Reviewed-on: http://codereview.qt.nokia.com/1247
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Gabriel de Dietrich <gabriel.dietrich-de@nokia.com>
If the fallback font is used for part of a RTL text, we need to
position the different text items accordingly, subtracting the advance
instead of adding it.
Task-number: QTBUG-17117
Done-with: Lars
(cherry picked from commit e5e1ff0d6f4e6a8457da61b5b215730de6f960bd)
Change-Id: I73b501d36e5c9e12112cc1997c1d360f3a4a6083
Reviewed-on: http://codereview.qt.nokia.com/1228
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
The distinction between 'examples' and 'demos' is completely blurred at
this point. We've decided, with the SDK people, to scrap the existing
terminology in favor of the word 'example' only -- distinguishing
between code snippets, walkthroughs, "demonstrations" can be done
via keywords or some other method.
Removing QT_INSTALL_DEMOS from all .pro files in Qt is still in
progress.
Change-Id: I86fc0e40d54baa54c5641fc6acbd8b67e4ad2789
Reviewed-on: http://codereview.qt.nokia.com/1034
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com>
setting the new eglsurface
(cherry picked from commit af3efefeefe686e5c35ed502de077c0bcb6f6fc0)
Change-Id: Ic1d62b21a1482d1bc7f1d99478e175e4b767e157
Reviewed-on: http://codereview.qt.nokia.com/1209
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Paul Olav Tvete <paul.tvete@nokia.com>
The class does not have support for completion,
but is otherwise mostly on par with the
control in QtWidgets.
Change-Id: I2c89f8ea910cfacba67d4e5e56d8d650d27760b9
This is a reduced version of the old text control
class, that doesn't support a few QWidget specific
additions.
Change-Id: Ib4542845a30473bb2462b2fe14daba178b571368
Global changes:
qglobal.h: remove code that sets Q_WS_MAC and
Q_MAC_USE_COCOA - this is dead code now. Add
qt_widget_helpers_mac_p.h/mm which will contain
helper functions needed for widgets on Qt 5.
Menu-related changes:
Set AA_DontUseNativeMenuBar before creating the
platform plugin. Change Q_WS_MAC to Q_OS_MAC in the
menu code. Remove Q_MAC_USE_COCOA defines and Carbon
code paths. Move some qt_mac helper functions only
used by the menu system to qmenu_mac.mm. #ifdef out
some code paths that require further porting.
Native menus are now disabled by default but can
be enabled by the QPA plugins that want them by
clearing AA_DontUseNativeMenuBar. Since we at compile
time don't know which plugin will be loaded the Mac
menu code is always included when building on OS X.
(The above is currently only relevant for the Cocoa
plugin.)
AF_INET6 needs to be defined on Windows. This got undefined when
QT_NO_IPV6 was removed in 85869920bb
Change-Id: I1b4904f9561286b884324882f0f11dc29ba01416
Reviewed-on: http://codereview.qt.nokia.com/1169
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Markus Goetz
Since the compiler cannod find the template argument if there is no
argument passed to the constructor, this effectively means there is
no default constructor.
Add a default constructor
Task-number: QTBUG-20256
Change-Id: I310d5e1f3f94a8fe69fd3a5c46f2f51bca60facd
Reviewed-on: http://codereview.qt.nokia.com/1165
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Denis Dzyubenko <denis.dzyubenko@nokia.com>
Change 369696dc23 removed a function
from the header but not its implementation, causing a compile error.
Change-Id: I5da45d8401f5779b1660e5baf4557f078e202bf5
Reviewed-on: http://codereview.qt.nokia.com/1092
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Liang Qi <liang.qi@nokia.com>
This works as a band-aid and optimization for QT-5104, because in the
text in the example, which contains latin text and has a latin default
font set, will think of all spaces between the cyrillic characters as
latin characters, hence it will make separate text items for them and
issue separate glDrawElements() calls. By cutting off if there are no
glyphs to draw, we can avoid hitting the actual bug for this and several
other use cases, making it less likely to happen.
Task-number: QT-5104
Reviewed-by: Samuel
(cherry picked from commit f51b5fe09c63e4b3c2ab5a4d06e162c43d38207d)
Change-Id: Id80f55ce403a7aa112c3abb314d080aa43c0078b
Reviewed-on: http://codereview.qt.nokia.com/1158
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
Replace a Q_WS_MAC test (which is not true for Mac & QPA) with Q_OS_MAC
(which is always true on Mac).
Change-Id: Ie3d12bae233d44b3607f4c57a0c65059d0d6ccb9
Reviewed-on: http://codereview.qt.nokia.com/1129
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
This configure test has never worked for mac.
In a non-qpa configuration, this didn't matter, as the configure script
would skip this configure test on mac. The configure script could also
be modified to skip the configure test in the qpa case, but it seems
cleaner to make the test actually work.
Change-Id: I0402c490fc4c2401f6363ba2215b261f74ee5d75
Reviewed-on: http://codereview.qt.nokia.com/1127
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
Qt Compositor propagates screen orientation changes to wayland, which
are then picked up by the wayland client. The wayland client then sends
a QScreenOrientationChangeEvent to QApplication, which can handle the
orientation change.
Change-Id: Ieb2225e52b7e3c318648f2cb21dab7937f301505
Reviewed-on: http://codereview.qt.nokia.com/1063
Reviewed-by: Matthias Ettrich