Commit graph

7879 commits

Author SHA1 Message Date
Ivailo Monev
a51c78828a ensure the QVariant type is QVariant::String in ini_settings_read() for compat
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-14 01:08:36 +02:00
Ivailo Monev
c9fd04afee do not register QColor, QVector2D, QVector3D and QVector2D interpolators as external
now the interpolators global mutex will be held 4 times less when the
GUI component library is loaded and 4 more times when it is unloaded

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-13 22:48:23 +02:00
Ivailo Monev
617ddafb48 document internal QFontDatabase methods as such
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-13 22:45:37 +02:00
Ivailo Monev
8de57f9a7b mark qt_FcPatternToQFontDef() function as static
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-13 22:12:08 +02:00
Ivailo Monev
e8fc06840c Merge branch 'master' of https://scm.osdn.net/gitroot/kde/Katie 2022-11-13 22:08:44 +02:00
Ivailo Monev
67b4a9f516 initialize values in QFont streaming operator
if they are not read from the QDataStream (e.g. premature end of data or
corrupt data) they will end up being zero tho because that is what
QDataStream sets them to on failure, perhaps it should not

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-13 22:52:32 +02:00
Ivailo Monev
34411b3cc5 QFontDatabase::families() optimization
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-13 22:41:53 +02:00
Ivailo Monev
351b862eba remove QApplication::fontDatabaseChanged() signal
it indicates that QFontDatabase has cached the fonts, not that system font
was added or removed which QFontDatabase should have signal for no
QCoreApplication/QApplication

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-13 22:08:26 +02:00
Ivailo Monev
edf4fe200b QJsonDocument optimization
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-13 20:14:34 +02:00
Ivailo Monev
bc0040b970 drop support for storing types that are not QString-convertable via QSettings
I am not interested in custom types feature at all - QMainWindow for
example saves its state via QDataStream. ofcourse it involves conversion
but that is the case with QVariant aswell. there is also the qreal type
thing - it may be float, it may double. streaming QRectF has to be done
in such a way to account for both cases but here is the catch - if
conversion fails there has to be fallback which QSettings::value() kinda
covers for types that are not composed of several more types.

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-13 19:29:01 +02:00
Ivailo Monev
2ae0376a53 QDebug documentation update
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-13 18:49:13 +02:00
Ivailo Monev
29a8724568 QDebug rewrite to use QByteArray as internal buffer
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-13 15:54:04 +02:00
Ivailo Monev
d8bfbe26a7 QDeclarativeInfo rewrite to not use QDebug
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-13 14:47:47 +02:00
Ivailo Monev
2541c918c8 log the error string, not the QDeclarativeError pointer in QDeclarativeScriptActionPrivate::execute()
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-13 14:44:38 +02:00
Ivailo Monev
c5d9fd14b7 revert f92053f381
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-12 15:50:44 +02:00
Ivailo Monev
96bbec5fa4 Merge branch 'master' of https://scm.osdn.net/gitroot/kde/Katie 2022-11-12 15:43:29 +02:00
Ivailo Monev
cee9c0f2a9 remove unused AVG16() macro
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-12 13:18:03 +02:00
Ivailo Monev
7ae0f5959e namefsck script update
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-12 05:37:25 +02:00
Ivailo Monev
3545b69f28 drop compile-time options to disable debug and warning output
such type of messages can still be filtered by installing message handler

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-12 03:14:06 +02:00
Ivailo Monev
523b62b6df QImage documentation update
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-11 22:58:03 +02:00
Ivailo Monev
3990711c73 use growing buffer (QDataBuffer) in blending functions
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-11 20:49:22 +02:00
Ivailo Monev
5c3ccecaef move variables to the scope they are used in QGradientData::generateGradientColorTable()
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-11 19:38:57 +02:00
Ivailo Monev
713ca126b5 QImage::Format_RGB16 to XImage copying optimization
it is a bit tricky to figure out the compatible cases but the zero-copy
optimizations pay off

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-11 19:06:16 +02:00
Ivailo Monev
e0ae176afd create print preview images with the page rectangle size and fill them with white color
fixes possible rendering issues (e.g. random colors at the edges)

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-11 05:26:01 +02:00
Ivailo Monev
0af05217ec create dummy device as fallbak from QPdfPrinter
fixes possible crash

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-11 05:18:07 +02:00
Ivailo Monev
e7ca887e31 build fix for the case when QT_NO_CUPS is defined
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-11 05:14:43 +02:00
Ivailo Monev
1265b62a45 remove unused QPSPrintEnginePrivate member
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-11 02:43:09 +02:00
Ivailo Monev
fb7a06340b drop unused epsf feature of QPSPrintEngine
note that it is hidden behind backdoor function

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-11 02:41:39 +02:00
Ivailo Monev
03d51c729d remove now unused QPolygonClipper class
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-11 02:29:42 +02:00
Ivailo Monev
3c257c0efb assume fetch and store operators are valid in drawing functions
any attempt to paint on QImage (and in turn QPixmap) the format of which is
QImage::Format_Invalid (with no private data pointer) will fail due to
paint engine check in QPainter::begin(), in addition the operators should
be (and currently are) implemented for all QImage formats

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-11 01:09:16 +02:00
Ivailo Monev
1396f53698 benchmark painting on and of mono image formats
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-11 01:05:18 +02:00
Ivailo Monev
9b764b425d compiler warnings fixes
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-11 01:04:43 +02:00
Ivailo Monev
dc946d296e remove now unused constants
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-11 00:17:24 +02:00
Ivailo Monev
494734618e fix copying of QImage to XImage when the QImage format is QImage::Format_RGB16
even transparency is a thing on 16-bit depth X display but it is very slow

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-10 23:35:30 +02:00
Ivailo Monev
8a0d93ba94 replace QPixmapData::createCompatiblePixmapData() with its body
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-10 22:10:52 +02:00
Ivailo Monev
f7f8bdcdf8 remove now unused QPixmapData::resize() method
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-10 22:08:26 +02:00
Ivailo Monev
9ab504a739 allocate the ARGB visuals and colormaps only if XRender is to be used
they are null-checked in qt_cleanup() and used only when qt_x11Data->use_xrender
equals true

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-10 22:00:27 +02:00
Ivailo Monev
e35cd216a8 ensure the image is not constructed with zero width or height in QX11PaintEngine::drawPath()
must be rounding to zero somewhere

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-10 20:50:05 +02:00
Ivailo Monev
21bf23815a remove check for non-existing internal property
it was used by the designer tool to override the DPI

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-10 19:29:38 +02:00
Ivailo Monev
8c9142d956 convert QPixmapData::create() method to specialized constructor
now QPixmap::load() and QPixmap::loadFromData() will be slightly faster

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-10 18:14:06 +02:00
Ivailo Monev
c3892b017c pass the pixel type to makeBitmapCompliantIfNeeded() function
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-10 18:00:31 +02:00
Ivailo Monev
f025c85d0b remove redundant QPixmapData members
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-10 17:50:36 +02:00
Ivailo Monev
5f42f271ff replace qt_mask_image() function with its body
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-10 17:40:17 +02:00
Ivailo Monev
b1e54659ca remove unused lowest_bit() function
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-10 17:23:46 +02:00
Ivailo Monev
a5fa53dfff implement the missing QImage converter functions
that includes QImage::Format_ARGB32_Premultiplied to QImage::Format_RGB16,
QImage::Format_RGB16 to QImage::Format_Mono and QImage::Format_MonoLSB

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-10 16:37:14 +02:00
Ivailo Monev
3f66a84b1c inline QWidgetBackingStore::surface() method
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-10 06:14:28 +02:00
Ivailo Monev
9e32978cbf remove noop QWidgetBackingStore::updateList()
does nothing since Qt::WA_StaticContents was dropped

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-10 06:08:18 +02:00
Ivailo Monev
26072dc4e0 QETWidget and QWindowSurface do not have to be friends with QWidgetBackingStore
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-10 06:00:32 +02:00
Ivailo Monev
b3bbed21f4 remove unused QWidgetBackingStore::topLevelOffset() method
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-10 06:00:05 +02:00
Ivailo Monev
ef60fad9d7 X server running at 24-bit depth is alpha capable
now the optimization from the previous commit applies to the backing store
in more cases

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-10 04:17:28 +02:00