Commit graph

7670 commits

Author SHA1 Message Date
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
Ivailo Monev
12198d2ebb drop support for mapping QFile via mmap()
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-01 19:13:33 +02:00
Ivailo Monev
4ca87ec20c do only basic ELF checks from qt_unix_query()
QLibraryPrivate::loadPlugin() resolves the symbol, it is not assumed to be
present in the plugin which means a basic ELF check is more than enough
(the important thing is to _not_ load .debug files as those may cause a
crash)

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-01 19:11:15 +02:00
Ivailo Monev
57f3e74d1d correct the buffer size in qRandomUuid() function
the initial implementation was not passing the buffer size to the
QByteArray constructor so the additional bit was for qstrlen()

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-01 09:39:49 +02:00
Ivailo Monev
65ed00fe3d do not remove the file from the EXDEV error codepath in QFileSystemEngine::renameFile()
QFileSystemEngine::renameFile() is supposed to fail if the file exists

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-01 07:34:54 +02:00
Ivailo Monev
6abeaffdee deep-copy the charset name in QTextCodec::codecForText()
it is documented to remain valid as long as UCharsetMatch is

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-01 05:36:48 +02:00
Ivailo Monev
1dc88a35cd fix QDir::absoluteFilePath() regression
somewhere in the abstraction engine it was returned clean

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-01 04:14:37 +02:00
Ivailo Monev
2e38b6c2d7 do not use QTextCodec::codecForLocale() for converting QString to decoded locale-encoded string
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-01 00:24:06 +02:00
Ivailo Monev
f5d8e81c79 inline toLocal8Bit_helper() function and use it in QString::toLocal8Bit()
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-01 00:12:59 +02:00
Ivailo Monev
67d9e14434 set localecodec variable from QTextCodecPrivate::localeCodec()
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-01 00:12:26 +02:00
Ivailo Monev
05b8abbe52 keep reference to the native filepath in QFile::resize()
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-01 01:59:55 +02:00
Ivailo Monev
350667cf94 do not use QTextCodec::codecForLocale() for converting QString to locale-encoded string
if QString::toLocal8Bit() is called from global static destructor it may
be too late to cache a QTextCodec, in fact it may cause a crash.
QTextCodec::codecForLocale() also has to lock a global mutex

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-31 21:48:55 +02:00
Ivailo Monev
8a7becdf29 QDataStream documentation update
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-31 21:12:58 +02:00