| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
| |
| |
| |
| |
| |
| |
| | |
Code cleanup and improvement
Change-Id: Id4eac84dd31976797403c9acfa40c8d3337c6988
Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
|
| |
| |
| |
| |
| |
| |
| | |
Code cleanup and improvement
Change-Id: I04109e6eaa24e90e24ba89957adca32281d077dc
Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
And try to make good use of them in order to match the QFont
request more closely.
Task-number: QTBUG-38482
Change-Id: I768dfa8828e370d77a1c17ecf4796d750b3edd9b
Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@theqtcompany.com>
|
| |
| |
| |
| |
| | |
Change-Id: I57e8dd2ea2e6f018a46eaabed2ca8b6d417358a3
Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
|
| |
| |
| |
| |
| |
| |
| | |
Also warn if a requested generic plugin is not available.
Change-Id: Iab1f1f87be435b4ad446881cba25d0b19a564f08
Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
|
|\|
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
doc/global/template/style/online.css
mkspecs/android-g++/qmake.conf
Change-Id: Ib39ea7bd42f5ae12e82a3bc59a66787a16bdfc61
|
| |
| |
| |
| |
| |
| | |
Change-Id: I8149eb2deaa101daf85a957ff48c3a7140c43bbc
Reviewed-by: Timo Jyrinki <timo.jyrinki@canonical.com>
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@theqtcompany.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
While the attribute was originally intended for widgets (QOpenGLWidget,
QQuickWidget) only, we need a way to get multiple QOpenGLWindow instances
whose contexts share with each other.
Change-Id: Ib983c9c2815b0a3911bc504ffad8d8dddad192aa
Reviewed-by: Jørgen Lind <jorgen.lind@theqtcompany.com>
|
| |\
| | |
| | |
| | | |
refs/staging/5.4
|
| | |\
| | | |
| | | |
| | | | |
Change-Id: I0cd11cbe95693b78450ea81a0187760f4a6a8b5f
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
The GL_RGBA8_OES define is not in scope for dynamic OpenGL builds, so
pass in GL_RGBA8 instead (it is defined as the same value, 0x8058) when
in ES mode. The functionality check already ensures the extension is
available, so the ifdef guards can be removed.
This fixes default multisampled FBO creation under ANGLE when using
-opengl dynamic.
Task-number: QTBUG-40921
Change-Id: Iac4b7e230a463c27b61af75c3307421f9deac856
Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
|
| |/ /
| | |
| | |
| | |
| | |
| | | |
Change-Id: I99f7192008ae8ea3a16f5300e5e4ebdde50847af
Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The Fira Sans font by the Mozilla Foundation has bytecode that goes
into an infinite loop. Fortunately FreeType catches the case, but we
fail to render any glyphs and spends too long trying the bytecode on
every glyph.
This patch instead switches the font to auto-hinting when this error is
encountered.
Task-number: QTBUG-41034
Change-Id: Icd044b41396a06fb435bc189cdbd71d703107de6
Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@theqtcompany.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Only reproduced with Windows font Calibri. This font has both
outline (vector) and bitmap glyphs. QFontEngine_FT has an hack
to get metrics from EBLC table, but this might fail, resulting
in a 0 ascender and descender, meaning QFontMetrics::height()
will be 0, meaning totally broken text.
This patch checks for that failure, and fallbacks to the outline
metrics instead of the bitmap ones.
Task-number: QTBUG-42898
Change-Id: If33fc3404d0c7f84557f8c4a5ae71b30f78d60a7
Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@theqtcompany.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The text was very washed out, almost white on small font sizes.
This ifdef was introduced to cater for GDI differences between Vista
and Pre-Vista, it's GDI specific, nothing to do with FreeType.
Text now looks good, and md5sum of the rendering is the same as on Linux.
Task-number: QTBUG-42564
Change-Id: I2e06b83b80df093331454fe1b780d26462db597d
Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@theqtcompany.com>
|
| | |
| | |
| | |
| | |
| | |
| | | |
Change-Id: Id13d5bc122c4f9cc8f44ff82df345a50f2944118
Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com>
|
| | |
| | |
| | |
| | |
| | |
| | | |
Change-Id: I8b71c33adb37c166bf4fc6dc8c2e7418d60fbf81
Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Must have been a copy paste mistake, the check is used in other places
to make sure we don't unlockFace() without a lockFace(), but here
we're certain lockFace() was called first.
Makes Coverity happy.
Change-Id: I679129727b29a40d780f4fa903f44f7cbc9ec8cf
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
http://git.savannah.gnu.org/cgit/freetype/freetype2.git/commit/?id=b3500af717010137046ec4076d1e1c0641e33727
../gui/text/qfontengine_ft.cpp: In member function ‘QFontEngineFT::Glyph* QFontEngineFT::loadGlyph(QFontEngineFT::QGlyphSet*, uint, QFixed, QFontEngine::GlyphFormat, bool) const’:
../gui/text/qfontengine_ft.cpp:1126:39: error: comparison between signed and unsigned integer expressions [-Werror=sign-compare]
for (int x = 0; x < slot->bitmap.width; x++) {
Change-Id: Idb58f9e5895aac8c02163870d7c7d4a49237086b
Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
|
| |\|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Conflicts:
dist/changes-5.4.0
7231e1fbe24102f2a93b34dfa70e3dca884440d2 went into 5.4 instead of the
5.4.0 branch, thus the conflict.
Change-Id: I70b8597ab52506490dcaf700427183950d42cbd1
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This function is apparently optimized in a way that gives a bad return
value (or leaves the variable where it is used uninitialized), leading to
extreme memory allocations and eventual heap exhaustion.
Task-number: QTBUG-42038
Change-Id: Ia4ee9fc6475a0bf40e25eed356b027a4dc68d119
Reviewed-by: Maurice Kalinowski <maurice.kalinowski@theqtcompany.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The problem was that the span we stored in the multiCellMap was the
"effective" span (i.e. the given span subtracted with the number of
ignored rows it would span). Later we used that span to distribute its
size across all its cells. However, since the span now could be smaller
that the given span, we could sometimes fail to distribute to the last
span(s).
[ChangeLog][QtWidgets][layouts] Fixed a bug where spans sometimes didn't
distribute themselves to the last cells they covered.
Change-Id: I31db3d850484dc8b70d62c5f02f680740578c661
Task-number: QTBUG-43099
Reviewed-by: Paul Olav Tvete <paul.tvete@theqtcompany.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Printing a QWindowSystemInterface::TouchPoint can be misleading if
it only includes the normalized position. Many backends do not provide
such information so it is often 0, 0. Print also the "area" which is
always set, the center of this rect is the actual touch position in screen
coordinates.
Change-Id: I2f3efabf6ced6fae9937518cc39d898e66b7894e
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
|
| | |
| | |
| | |
| | |
| | |
| | | |
Task-number: QTBUG-42963
Change-Id: Iaf2677a967ef424a3b781cdb2d3194d0e0e55333
Reviewed-by: aavit <eirik.aavitsland@theqtcompany.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Following the principle of device integrations in QtWayland and soon
xcb, a plugin interface is being introduced to gradually replace the
statically compiled-in hooks.
The interface is same as before for the time being, for compatibility
with the existing device-specific hooks.
QEglFSHooks is now just a dummy subclass for QEGLDeviceIntegration to
support the legacy, compiled-in, device-specific hooks. When -device
is not used with configure and so there is no hook active, the new
plugin-based approach kicks in.
The environment variable QT_QPA_EGLFS_INTEGRATION can be set to
indicate the preferred integration name (e.g. eglfs_x11, eglfs_kms).
It can also be set to "none", indicating that no plugins should be
considered and the default, non-specialized integration is to be used.
(this is for devices, like Beagleboard|bone, that do not need any special
code to set up EGL)
Device makespecs can set EGLFS_DEVICE_INTEGRATION. The value is then used
as the default, preferred plugin name when QT_QPA_EGLFS_INTEGRATION is not
set. In the future device makespecs are expected to set a plugin name instead
of relying on the traditional EGLFS_PLATFORM_HOOKS_*.
When neither the QT_QPA_EGLFS_INTEGRATION nor EGLFS_DEVICE_INTEGRATION are
set, all plugins will be tried in an unspecified order. The first one that
succeeds to load is used. If all fails or there are no plugins, the built-in,
non-specialized integration is used.
To debug what integration is being used, enable the logging category
qt.qpa.egldeviceintegration.
There is some built-in logic for desktop/Mesa based systems: Under X,
eglfs_x11 is preferred, otherwise eglfs_kms is prioritized. This, assuming
sufficient permissions to video and input devices, allows simply launching
apps with -platform eglfs. No more editing of eglfs.pri.
[ChangeLog][QtGui] Added support for device-specific backend plugins in eglfs.
Change-Id: Ia2ddcddac014c25817171dc140cd8cf913784ac6
Reviewed-by: Louai Al-Khanji <louai.al-khanji@theqtcompany.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Parameters were misnamed in some places but still managed to pass them
through in the right order. Rename to avoid confusion, and keep the
parameter order the same as in QSystemTrayIcon::showMessage.
Change-Id: Ib4c8fff15eff15034c4ea64757803b118e487144
Reviewed-by: Marco Martin <mart@kde.org>
Reviewed-by: Jørgen Lind <jorgen.lind@theqtcompany.com>
|
| | |
| | |
| | |
| | |
| | |
| | | |
Change-Id: I91ff06644e8047c2ca483f9768b46c1372eb6171
Reviewed-by: Martin Smith <martin.smith@digia.com>
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@theqtcompany.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Done automatically with clang-modernize on linux
(But does not add Q_DECL_OVERRIDE to the function that are marked
as inline because it a compilation error with MSVC2010)
Change-Id: I2196ee26e3e6fe20816834ecea5ea389eeab3171
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
It can be removed now because we now have a better caching
mechanism than before. It should therefore not be needed anymore.
Since nothing else calls hasChanged, we can finally get rid of it.
This simplifies the code and enables us to further improvements to the
code.
Change-Id: I51afe5a97311e3e361ae8b491ecbcd21bbedacd1
Reviewed-by: J-P Nurmi <jpnurmi@theqtcompany.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
It is clear from the commit itself that `m_engines[1]` isn't accessible
after `m_engines.resize(1)`.
Change-Id: I7b3977cca3f3aeaabadb5ff4f3e52a418022123c
Reviewed-by: Jan Arve Sæther <jan-arve.saether@theqtcompany.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
It is the same as USHRT_MAX but mentioning a special value makes
the code more readable.
Change-Id: I91063e472a6130ceb47f866344709786e4b05f20
Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Currently both find function with QString input uses QRegExp under the
hood. This patch aims to use only QString search facility to allow
the proper disabling of QRegExp
Change-Id: I3525fd0e969eced635f3d98feb54eb6a05950d8f
Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
|
|\| |
| | |
| | |
| | | |
Change-Id: Id20053d261b4fbbcc0ac8ba49dd3ef2253fa4b95
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Add a virtual function QWindowPrivate::closestAcceptableGeometry()
which is called from the platform plugin.
Task-number: QTBUG-36220
Task-number: QTBUG-36318
Change-Id: I2b3d205e2c75f1d4dd2ba1d333b0d89bc0fcf13a
Reviewed-by: Jan Arve Sæther <jan-arve.saether@theqtcompany.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Clarify that shown here refers to where they are shown initially.
Change-Id: I962fd4b98d80fb1d43e086660fb74eea6b8f532a
Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
If you build with configure -DQT_NO_DEPRECATED this will avoid some
build errors.
Change-Id: If2b2e57b6919091f3f077ebc2aeca0c3fd2421aa
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Add a capability enumeration to QPlatformInputContext and
use that to turn off input methods for hidden text depending
on platform support. Disable on Windows.
Task-number: QTBUG-40691
Change-Id: I9909005de1f21316ec8f64e2729f1fffcd37c7c3
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Reviewed-by: Björn Breitmeyer <bjoern.breitmeyer@kdab.com>
Reviewed-by: Liang Qi <liang.qi@theqtcompany.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
to support configure -no-feature-CURSOR
Change-Id: I8e7f9a7f80d3d44a1f8e25b909d552351b5f37e4
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
In qt_fontHasNarrowOutlines, if we proceed to call alphaMapForGlyph
when the glyph does not exist, there will be a failed assertion.
The docs for FT_Get_Char_Index say that zero means the glyph was
not found.
Change-Id: I371e9a2797a34fa3ebeae44531af51e24dadad79
Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Multi QFontEngine should be handled just like all other cases
covered several lines below.
Change-Id: If3dd9a2e38a5f6f61b113576cb188da378fc9efb
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@theqtcompany.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Always prefer QRawFont::fromFont(..)
Change-Id: Ic33f7d3a468f926418b39887f572829af93f8c1d
Reviewed-by: Pierre Rossi <pierre.rossi@gmail.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Never assume the engine is still cached but rather delete it
if we are the last consumer.
Change-Id: I4e3c796d45c53f42722a437482d71e2dae14cad2
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@theqtcompany.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This removes some code duplication in the QFontEngineFT and
it also removes the condition that loadTransformedGlyphSet()
will return 0 if the font is too large to be cached, since
this is handled by setting outline_drawing on the glyph set which
will fall back to painter paths.
Change-Id: I2fe6a963e854cdd7c6015154547dc06325cbe3b0
Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
GCC recently started warning about these.
Change-Id: I7b30c79f7f2b66b99e54354224700d54ace6ebec
Reviewed-by: Jens Bache-Wiig <jensbw@gmail.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
tlw can be null. handleKeyEvent() is already fixed.
Change-Id: I92ffca30841147aca4fa536b80736c799aae4ac0
Reviewed-by: Jan Arve Sæther <jan-arve.saether@theqtcompany.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@theqtcompany.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Do not append QGuiApplicationPrivate::displayName() to window title
if the title already contains it.
Fixes Qt Designer showing up with window title
Qt Designer - Qt Designer
after qttools:9a58492ce6b62c0fdab373337f39103f4072ad9d
Change-Id: I5ac07a7f4be70372342324a175faf8c825867f50
Reviewed-by: David Faure <david.faure@kdab.com>
|
| | |
| | |
| | |
| | |
| | | |
Change-Id: I651243ad5dcdd0dcef20f12f37769bf8c45ae3c5
Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The scriptForWritingSystem array has significantly fewer entries than
QChar::Script. It can easily happen that we don't find a writing system
for a given script. In that case, just assume any writing system can
be used.
This fixes an out-of-bounds array access resulting from the writing
system index being one-past-end if std::find doesn't find a match.
Change-Id: Ic277be1dad71af42d479e70e0b4bf29a7dc8d0a7
Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@theqtcompany.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Minor refactoring also improves the behavior and the code readability.
Change-Id: Id89dd224f4132a4c0dfbc16f414ef42cc8d8a4da
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Change-Id: I22de911fa56165b36ca9a4c9d22673e11603a746
Reviewed-by: Mitch Curtis <mitch.curtis@digia.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
|