Commit graph

7682 commits

Author SHA1 Message Date
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
Ivailo Monev
761d9a1496 QImage::Format_ARGB32_Premultiplied to XImage copying optimization
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-10 03:27:36 +02:00
Ivailo Monev
8b86d478e4 QWindowSurface::beginPaint() optimization
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-10 03:29:01 +02:00
Ivailo Monev
980ce7a30b oops, fix build
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-10 02:38:09 +02:00
Ivailo Monev
de4885489c add note when QPixmap::toX11Pixmap() was introduced
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-09 23:28:05 +02:00
Ivailo Monev
f92053f381 QPixmap::grabWindow() optimization
TODO: replace WId with Qt::HANDLE or vice-versa, eventually

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-09 23:24:37 +02:00
Ivailo Monev
f91411694a merge QRasterPixmapData into QPixmapData
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-09 23:06:30 +02:00
Ivailo Monev
4c63add2e6 remove now unused XRender fills cache
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-09 22:21:43 +02:00
Ivailo Monev
2ba736e6ef QPixmap documentation update
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-10 00:18:47 +02:00
Ivailo Monev
96b700fdba QPixmap no longer requires GUI application or to be constructed in the application thread
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-10 00:08:54 +02:00
Ivailo Monev
9e1b6d48a6 remove unused and internal QTessellator class
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-10 00:02:31 +02:00
Ivailo Monev
e54ced79d7 QPixmap documentation update
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-10 00:01:44 +02:00
Ivailo Monev
7329edc8f6 drop internal X11 pixmap
TODO: merge QRasterPixmapData into QPixmapData

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-09 19:56:42 +02:00
Ivailo Monev
3e521ecaef account for undefined types in QScriptEnginePrivate::create() assert
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-08 17:39:13 +02:00
Ivailo Monev
f5f79c15d5 implement blend modes for X11 paint engine
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-07 10:42:23 +02:00
Ivailo Monev
65c13b6699 QX11PaintEngine::drawPixmap() optimization
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-07 10:06:25 +02:00
Ivailo Monev
04737582c4 remove redundant forward declarations of QMatrix and QTransform in qimage header
qtransform header is included from qimage header

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-07 09:50:57 +02:00
Ivailo Monev
4bbd8424d6 remove QImage friend declaration for now non-existing QX11AlphaDetector class
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-07 09:49:41 +02:00
Ivailo Monev
372a688cd8 explicitly create X11 pixmap data in QX11PixmapData::mask_to_bitmap()
QPixmap is raster by default which in turn means QBitmap also is

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-07 08:33:50 +02:00
Ivailo Monev
999061bc4a QX11PixmapData::mask() optimization
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-07 08:30:01 +02:00
Ivailo Monev
4ecb03bc6b plug memory leak in QX11PixmapData::toImage()
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-07 08:00:07 +02:00
Ivailo Monev
cc330e7dd3 simplify alpha checking in QX11PixmapData::fromImage()
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-07 06:39:32 +02:00
Ivailo Monev
d8564644f3 temporary fix for QPixmap::grabWindow()
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-06 17:54:21 +02:00
Ivailo Monev
cc9c8f9fc3 effectively revert 3b2f367497 and cd5217cdbc
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-06 14:26:26 +02:00
Ivailo Monev
b7297b762e remove unused QString object in QTextStreamPrivate::putString()
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-04 16:20:44 +02:00
Ivailo Monev
aa079429a1 fix regression since fabde51fe3
the important thing is to clean the fileName argument which may or may not
be clean

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-04 15:35:16 +02:00
Ivailo Monev
e9f970bbd2 build fix QDataStream test case
only that test case and QVariant::save() were using the char* operators
of QDataStream

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-03 17:05:26 +02:00
Ivailo Monev
35f05e0d94 ensure the type name is streamed as QByteArray in QVariant::save()
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-03 16:44:09 +02:00
Ivailo Monev
7f04979b7e fetch the owner and group from the QFile file descriptor in QFileInof tests
much more reliable comparison

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-03 15:22:23 +02:00
Ivailo Monev
d8c00c3e71 verify that the group name is not empty in tst_QFileInfo::group()
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-03 15:10:35 +02:00
Ivailo Monev
3f76b6db66 set the QDataStream byte order to big endian in tst_QVariant::loadBrokenUserType()
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-03 15:02:56 +02:00
Ivailo Monev
77adb6b59e minor comment correction
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-02 22:55:09 +02:00
Ivailo Monev
5d8e779042 remove unused QTranslatorPrivate member
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-02 13:05:10 +02:00
Ivailo Monev
a18ad9cd9b cache translations on load
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-02 13:02:44 +02:00
Ivailo Monev
ce8f462a62 remove unused QTextCodec header inclusion in trcmain source file
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-02 11:12:05 +02:00
Ivailo Monev
0cab6d9a61 do not attempt to translate when the data is empty
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-02 11:11:40 +02:00
Ivailo Monev
c648db63e1 faster translations lookup
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-02 08:18:35 +02:00
Ivailo Monev
409f567fac call setlocale() to set the characters classification before attempting to open X11 input method
due to the recent change in KCatalog I found out setlocale() is not called
by many programs unless there are specific requirements and X11 apparently
requires it to function properly

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-02 07:49:54 +02:00
Ivailo Monev
412c775fe9 fallback to system locale for keyboard input locale and codec
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-02 07:17:06 +02:00
Ivailo Monev
9fbbe41cf0 do not install empty (invalid) translators
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-02 05:59:48 +02:00
Ivailo Monev
c73cda5f1b lock when installing and removing translators
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-02 05:51:00 +02:00
Ivailo Monev
d0742df56c use custom format for translations
the code for translating strings in kdelibs (see
kdelibs/kdecore/localization/kcatalog.cpp) has finally made me roll my
own - locking global mutex, saving and restoring environment variables
on every string translation is not very good, is it?

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-02 05:23:31 +02:00
Ivailo Monev
ab43571cc1 Merge branch 'master' of https://scm.osdn.net/gitroot/kde/Katie 2022-11-01 22:45:01 +02:00
Ivailo Monev
3505060633 remove unused QFileInfoPrivate::FileName enums
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-01 22:44:49 +02:00
Ivailo Monev
b071b6774f FreeBSD package footprint file update
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-01 22:27:36 +02:00
Ivailo Monev
df060ed6f6 always read data without intermediate buffer from QIODevice::read()
the main user of QIODevice is QFile and it uses O_DSYNC/O_SYNC for
unbuffered I/O meaning the QIODevice buffer does not benefit it because the
filesystem cache already does that

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-01 21:34:16 +02:00
Ivailo Monev
3d6aa1b726 correct function name passed to macro in QIODevice::ungetChar()
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-01 23:39:33 +02:00
Ivailo Monev
af3cc17128 use qt_safe_read() instead of calling the virtual QFile::readData() in QFile::readLineData()
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-01 19:24:50 +02:00