| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Commit b5922c89ba942 (Add support for retina glyph-based text drawing
in the GL engine), and commit 155a20628b91 (Use QPaintEngineEx to decide
if font is too big for using the glyph cache) together changed the
behavior of drawing scaled cached glyphs in the GL engine, producing
blocky text drawing when using the FreeType font engine.
Whereas before we would cache all glyphs without any transform, and
let the paint engine take care of the transform, commit b5922c added
support for a scaled GL glyph cache, resulting in a 2x cache, drawn
at 1x for example. The problem was that the FreeType engine claimed
to support producing glyphs at 2x, but did that using the QFontEngine
baseclass implementations, which use a simple fast-transform to scale
up the glyphs. The result was a 2x cache with horrible looking glyphs.
The first step in fixing this issue was to have the FreeType engine
claim to only support translations. This would then make the paint
engine choose path-based drawing for all scaled text, which is slow.
To restore the optimization that we would draw 0.5x-2.0x scaled text
using a smooth-scale in the GL engine (which was removed in 155a206),
we then needed to extend shouldDrawCachedGlyphs() and add a special
condition for this, coupled with a bit of logic in drawCachedGlyphs()
that ensures we don't propagate the painter scale to the glyph cache
if the engine is not able to produce scaled glyphs for it. This
means we get the old behavior of the GL engine doing a smooth scale
of the 1x glyph in the cache.
Finally, since the raster engine also checks if the font engine
supports the current transform, but for FreeType then ends up in
a separate code path when actually drawing the glyphs (as the
FreeType font engine supports internal glyph caching), we need
to add a corresponding check for hasInternalCaching() in the
shouldDrawCachedGlyphs() function, now that the FreeType engine
only reports that it supports translations.
Change-Id: Id03de896dec5f29535b281fb235332ef018045d8
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
|
|
|
|
|
|
|
|
|
| |
-"qmlclasses" was used in Qt 4.7
-enables the listing of QML types in a page
Task-number: QTBUG-31490
Change-Id: I4f666945067ef1df6e358c488c245792b5aea3ab
Reviewed-by: Martin Smith <martin.smith@digia.com>
|
|
|
|
|
|
|
|
| |
XbelReader and XbelWriter do not subclass QXmlStreamReader and
QXmlStreamWriter anymore, but use aggregation instead.
Change-Id: Idbe43e9bdbc47dc73b1984ce17ae4d18e9be5554
Reviewed-by: Thorbjørn Lindeijer <bjorn@lindeijer.nl>
|
|
|
|
|
|
|
|
|
|
|
| |
On X11 key codes and modifiers can have many-to-many relationship, i.e.
a key can activate several modifiers, and a modifier may be activated
by several keys. This patch handles these cases, the logic is borrowed from Qt4.
Task-number: QTBUG-31572
Change-Id: Ide4eb890ec723c68afafe0576d8285440a47d7b0
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Trust fontconfig if it claims that the font supports a language
and don't use the expensive check for a symbol font in this case.
Speeds up app startup if the system has many latin only fonts
installed by a big amount.
Also remove some compat handling for fontconfig versions from
2003 and earlier... :)
Change-Id: I5de0812685ae76090b2c0ef5b6c2dcf430249bb8
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Due to a refactoring done in Qt 5.1, we would try to do projected
text painting using the glyph cache in the raster engine (the logic
to avoid this was removed when refactoring). If you only did the
projected text drawing, then you would get unprojected text with
projected glyph positions and it would look wrong.
What's worse: If you first drew unprojected text with the same
font engine, so that the font engine already had a glyph cache
stored, we would hit an assert in qtransform_equals_no_translate
which assumes cached drawing is never used for projected painters.
This puts back the logic that we never cache projected text in
the glyph cache.
Task-number: QTBUG-32193
Change-Id: I1f919961c4cf498a9c4a0b1ceb0df1937ed0d067
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When drainOutputPipes is called, the process is already dead.
If readyReadEmitted is false, there was no data in the pipes.
As the process is dead, there won't be data in the pipes in future
iterations.
The situation that triggered the infinite loop was this:
process A starts console process B.
B starts console process C. C inherits stdout/err of B.
B dies. C runs forever and does not close the stdout/err handles.
A notices that B died and calls drainOutputPipes.
Task-number: QTBUG-29391
Change-Id: I4819901df307be684c6ad70753a5f964a834704a
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fix race condition in waitForNotified for zero timeout.
A waitForNotified(0) call is typically used for triggering
events near the end of life of the I/O resource (e.g.
drainOutputPipes in QProcess). In that case we must
synchronize the IOCP thread and waitForNotified.
Task-number: QTBUG-29391
Change-Id: Iadbd8564ec461cbc48a6ef8c5627e30a5c6eecfd
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
|
|
|
|
|
|
|
|
| |
Calling waitForNotified on an uninitialized notifier will print a
warning and return false. The autotest has been adjusted.
Change-Id: I85e18d6d0a8a5462e1a5d451613add941d89b5fb
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In Qt 4, there was a special case in qpdf.cpp which would
use the tmHeight from TEXTMETRIC to calculate the height
of the text instead of the pixel size. This was removed when
all code inside Q_WS_WIN was removed from QtGui. The tmHeight
is defined to be the same as ascent + descent, so we reinsert
this code for Windows.
It could be that this code is okay cross-platform, since the
font height and the pixel size are supposed to be the same, though
for some reason not on Windows. However, the safer approach is
to #ifdef it for Windows, since the bug is not present on
other platforms, and since it was #ifdef'd in Qt 4.
Task-number: QTBUG-30875
Change-Id: If0817768bf0ca5ce216842119422a0be944df0bf
Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When a QWindow was destroyed, we'd delete its corresponding buffers,
but failed to make the correct EAGLContext current first. This would
result in deleting/invalidating buffers for another window (whatever
window's context was current at the time), and that window would then
seemingly stop rendering anything, and turn black on rotation.
Task-number: QTBUG-32246
Change-Id: I335a8c580203fc01e43da31c5cb6f567614c26fc
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Instead of storing the application type as a uint, we use the enum provided
by QCoreApplicationPrivate. The former resulted in a few cases of wrong
logic where the values got mixed up, such as always printing the QtCore
console warning, even for GUI applications.
The qt_eval_is_supported function has been refactored to return enums instead
of magic values, to make the logic easier to read.
The same goes for qt_eval_days_left, which now only concerns itself with
the number of days left. qt_eval_is_expired() has been added to use for
easy checking of expiration date.
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Change-Id: Ia0e85b2103f790a7e02e0d6e567a477b3145fcb9
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
|
|
|
|
|
|
|
|
|
| |
The constructor taking a global color was removed in Qt 5.0.0.
We need to explicitly convert to QColor before we get a QVariant.
Change-Id: I821f164b8601647b062eeef57372755fa187c50c
Reviewed-by: J-P Nurmi <jpnurmi@digia.com>
Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Remove call to QWindowSystemInterface::flushWindowSystemEvents()
introduced by 153d613353863987322db81f3c31e33541ef7226 .
Task-number: QTBUG-32125
Change-Id: I14aa2772848e04b47deff6218b48eaf69f0bb649
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
|
|
|
|
|
|
|
|
|
|
|
| |
Need to store 17 decimal digits for binary64, IEEE 754 double formats.
Autotest is included. Test cases from TC39 test suite for ECMAScript.
Task-number: QTBUG-31926
Change-Id: I546398f21ea7ff5e40e89fc9de8703f628f55df9
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@digia.com>
|
|
|
|
|
|
|
|
|
|
|
| |
Do not lower case file names to generate hash keys since
QString::toLower() converts some characters with context
which the Windows file system will not.
Task-number: QTBUG-31341
Change-Id: I285bfedef3c1ca9d59083229e61974dd378c72ae
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@digia.com>
|
|
|
|
|
|
|
|
|
|
| |
It claims to be WV_5_2 (WV_2003).
Task-number: QTBUG-32217
Change-Id: I0c277410acc9ac29710a3eee63bec9ced42e2767
Reviewed-by: Jonathan Liu <net147@gmail.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
|
|
|
|
|
|
| |
Change-Id: Ie52630402bea331c89ac106f38ffbba4784f04ab
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
|
|
|
|
|
|
|
| |
Change-Id: I839aa44735910012bf57daa9c8b55c5e6def3cd2
Reviewed-by: James Turner <james.turner@kdab.com>
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
Reviewed-by: Jake Petroules <jake.petroules@petroules.com>
|
|
|
|
|
|
| |
Task-number: QTBUG-31819
Change-Id: I60162f4c4af8aaae02ba7be11b2793ad29c5e2b5
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
|
|
|
|
|
|
|
|
|
|
| |
Correct cell is now set when selecting a custom color cell with arrow
keys so that the custom coor is actually added to the selected cell
(as with mouse events).
Task-number: QTBUG-32054
Change-Id: Ic271a0be76070b4f5364954b2dfe464964c1380b
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
|
|
|
|
|
|
|
|
|
|
| |
The projection matrix should also be set for systems
running OpenGL 3.1 with GL_ARB_compatibility extension.
Task-number: QTBUG-28284
Change-Id: I756155a6064dcbff29fd817e676d31f24f559e8c
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
qstring.cpp(3896): error #68: integer conversion resulted in a change of sign
The line before also had 0x8000, but since there was no addition,
0x8000 was a literal converted to short. However, 0xff + 0x8000 is an
int, and 0x80ff is positive, while short(0x80ff) is negative.
Change-Id: I445ff401d817b643479e54320525890ce12bbfe5
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Under normal circumstances, this should never happen. Signals exported
to D-Bus should only be emitted from the object's own thread. That's the
only way for the receiver (the QDBusAdaptorConnector object) to know
what the sender object and signal were. If they are emitted from another
thread, the sender will be null.
Task-number: QTBUG-31932
Change-Id: Ia5a45d648985e0645bffd4abc0881fca9da64f79
Reviewed-by: Lorn Potter <lorn.potter@jollamobile.com>
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
|
|
|
|
|
|
|
|
|
|
| |
Presumably this was just an omission when QFusionStyle was first
written. These three lines were taken directly from the equivalent
portion of QWindowsStyle and seem to work as expected.
Task-number: QTBUG-31904
Change-Id: I2f288d3cf2bfa3fe4f7f4a71e2726a172ec8e1b3
Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
|
|
|
|
|
|
|
|
|
|
| |
Fix assert on Windows:
QFATAL : tst_QAbstractItemView::testChangeEditorState():
ASSERT: "index_ >= 0" in file itemviews.cpp, line 1123
Change-Id: I4f19c68bbe00d9c75768e7125cf3b33bc09a09e5
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
|
|
|
|
|
|
|
|
|
| |
For some reason, the enumeration values were signed when using
64bit.
Task-number: QTBUG-31386
Change-Id: I891dbe1a82dc2aefbe13a131c72c01a57f981767
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
This can happen when instantiating a QFileIconProvider and no suitable
graphics context is available (e.g., when only using a QQuickView).
The proper, longer (5.2) term solution would be to have the platform theme
return a QIcon with a NSImage icon provider.
Task-number: QTBUG-31908
Change-Id: Ibfdb51e0a7dd2c33761a463f4eb6619f0aca19f0
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
|
|
|
|
|
|
|
|
| |
This amends commit 119882714f87ffeb6945fdb2d02997ae125ff50c.
Change-Id: Ifb105596af5b00b04344cb665b3e68292c9187ae
Reviewed-by: Romain Perier <romain.perier@gmail.com>
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
It's illegal in C++11: §8.3.6.4 [dcl.fct.default]
"If a friend declaration specifies a default argument expression,
that declaration shall be a definition and shall be the only declaration
of the function or function template in the translation unit."
Clang is starting to enforce this, thus it's making qtbase not compiling.
Task-number: QTBUG-32100
Change-Id: Ifd9d4f62354d7cf4ccf275f36aab64e05c59efff
Reviewed-by: Thorbjørn Lund Martsum <tmartsum@gmail.com>
Reviewed-by: Mitch Curtis <mitch.curtis@digia.com>
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
|
|
|
|
|
|
|
|
|
| |
Note: The code is currently #ifdefed out, it is just there
to be able to compare QColorDialog to the native dialog.
Task-number: QTBUG-32054
Change-Id: I042f6701d1a076480cae56c53ae2d3ad303d37d1
Reviewed-by: Oliver Wolff <oliver.wolff@digia.com>
|
|
|
|
|
|
|
|
|
|
|
| |
The effects are making assumptions about implementation details of the
paint engine, which had changed between Qt 4 and Qt 5. The engines no
longer implement the pixmap filters and so the assumption made here
was wrong and should be removed.
Task-number: QTBUG-29945
Change-Id: I146d8c8cc12842a323bd613288003afcf89a47c7
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Usually, a window get un-exposed when minimized, and exposed
after the first WM_Paint event when restored.
With layered windows (translucent+frameless) we never receive
a WM_Paint, so lets send the expose event when the window is
restired.
Task-number: QTBUG-17548
Change-Id: Ib56d8abd91b15f9238d223fe692b19a3d2c930b7
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
|
|
|
|
|
|
|
|
|
| |
warning C4267: 'argument' : conversion from 'size_t' to ' int', possible
loss of data.
Change-Id: I8d1ca27d4d66a9ce0deb70766446e780308bba33
Reviewed-by: Mitch Curtis <mitch.curtis@digia.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
|
|
|
|
|
| |
Change-Id: I6d6461eec24895e9aa0e77deccd39210958b7e2c
Reviewed-by: Andy Shaw <andy.shaw@digia.com>
|
|
|
|
|
|
|
|
|
| |
Looks like something went through the reviewer's eyes. This commit
amends 6ec9b34cbb5fa6b1214cc6551002f46f732ba72f.
Change-Id: I59a05361b1cbdf4e5177821d958766ffe3218f16
Reviewed-by: Jake Petroules <jake.petroules@petroules.com>
Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
|
|
|
|
|
|
|
|
|
| |
Task-number: QTBUG-31477
Change-Id: Iac2d13b68d36c691b60685b69cd390958c35fae3
Reviewed-by: James Turner <james.turner@kdab.com>
Reviewed-by: Jake Petroules <jake.petroules@petroules.com>
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
|
|
|
|
|
|
|
|
| |
Since 10.6, NSImage has a sensible contructor for that.
Change-Id: Ie753135ebb37630c1a70c395689bf85d4a4a01de
Reviewed-by: Jake Petroules <jake.petroules@petroules.com>
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
|
|
|
|
|
|
|
|
|
| |
If QIMAGEREADER_DEBUG is enabled in qimagereader.cpp, the build fails.
There are wrong variables in qimagereader.cpp:314,395
Change-Id: I22498c49fbfecb3799dc5cabf374486bb715ded7
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
|
|
|
|
|
|
|
| |
qsql_psql_p.h(122): warning #271: trailing comma is nonstandard
Change-Id: I35e12b2ae0201b8a9905d3505697a9b36a1a79e2
Reviewed-by: Mark Brand <mabrand@mabrand.nl>
|
|
|
|
|
|
|
|
|
| |
Model error text after the default Windows error message for missing
.dll's.
Change-Id: I5328a0fe681ff5104dcf41668d9b08d6a6198c08
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
|
|
|
|
|
|
|
| |
qgraphicsscene.cpp(1814): warning #177: variable "v1" was declared but never referenced
Change-Id: I8f14bb47f00ec0c56b2fe0794a71edfc872b3daa
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Use Q_DECL_UNUSED for the one that is possibly unused (we have two overloads so that one gets selected):
qglobal.cpp(2069): warning #177: function "<unnamed>::fromstrerror_helper(int, const QByteArray &)" was declared but never referenced
Remove functions really not used:
qbezier.cpp(153): warning #177: function "findInflections" was declared but never referenced
qbezier.cpp(534): warning #177: function "splitBezierAt" was declared but never referenced
qpathclipper.cpp(1039): warning #177: function "midPoint" was declared but never referenced
qpainter.cpp(119): warning #177: function "check_gradient" was declared but never referenced
qdockarealayout.cpp(2580): warning #177: function "qMin(int, int, int)" was declared but never referenced
qmainwindowlayout.cpp(1019): warning #177: function "validateDockWidgetArea" was declared but never referenced
qgraphicsanchorlayout_p.cpp(670): warning #177: function "checkAdd" was declared but never referenced
qcups.cpp(481): warning #177: function "paperSize2String" was declared but never referenced
complexwidgets.cpp(373): warning #177: function "removeInvisibleWidgetsFromList" was declared but never referenced
Change-Id: I1e5558e206b04edea381442030dc69536198d966
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
|
|
|
|
|
|
|
|
|
|
| |
qevent.h:865:36: error: unknown warning group '-Wunused-private-field', ignored [-Werror,-Wunknown-pragmas]
Instead, just use Q_UNUSED() like I've done for the other unused
members.
Change-Id: I3adeb06937cee8b8ac24a1d5081be03931ac98b7
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
|
|
|
|
|
| |
Change-Id: I4fdd2b37869ed73ede3a33b5adad94413bd43b01
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is needed, because bps_get_event can also invoke callbacks.
Deferred deletions in such a callback are not executed for instance,
because the loop level might already be at its minimum.
Change-Id: I8a1b3a3f92de139575654de011352f8abc6c3c1a
Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com>
Reviewed-by: Fabian Bumberger <fbumberger@rim.com>
Reviewed-by: Jeff Kehres <jkehres@rim.com>
Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
|
|
|
|
|
|
| |
Task-number: QTBUG-32061
Change-Id: I43b689d8d7bc3c93036de48518f7a0f9f2aa33cf
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
|
|\
| |
| |
| | |
Change-Id: I53112e20a65b7d706755b4a22622979f3b91a2c2
|
| |
| |
| |
| |
| |
| |
| |
| | |
Task-number: QTBUG-32069
Task-number: QTBUG-30416
Change-Id: Idabf9962def24ecd709be7d981302c91c42ccac4
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
so that part of Id03ae17270832a7b5915e4324a508e591c0b6d98 which added
the Q_REVISION(1)'s and \since docs was a mistake.
Change-Id: I159b68491bd7dc55657d8c978bff527094ef4547
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
|