Ivailo Monev
51bb046646
remove now unused QFontFamily struct
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-19 21:29:08 +02:00
Ivailo Monev
d01d9549d9
compiler warning fix
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-19 21:28:05 +02:00
Ivailo Monev
9ee07bb1cd
plug QFontDatabase memory leak
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-19 21:25:36 +02:00
Ivailo Monev
04259f3921
compiler warning fix
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-19 21:10:00 +02:00
Ivailo Monev
8e37eb99c6
QFontDatabase review
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-19 20:54:47 +02:00
Ivailo Monev
ca3cf1d93f
query fontconfig directly from QFontDatabase
...
since fontconfig has its own cache mainting internal QFontDatabase cache
is kinda redundant, have to leak check still but font tests pass
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-19 20:35:15 +02:00
Ivailo Monev
68ae3393d1
inline qt_pixelSize() function
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-19 05:39:06 +02:00
Ivailo Monev
fc836182d5
scale the fontconfig weight value to QFont::Weight in QFontDatabase
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-19 05:25:01 +02:00
Ivailo Monev
b90d8bf1ba
remove compat QFontDatabase methods
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-19 05:06:44 +02:00
Ivailo Monev
4129e183bd
de-duplicate QFontDatabase code
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-19 04:28:46 +02:00
Ivailo Monev
aa39dbb344
add case-sensitivity test for QFontDatabase
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-19 04:14:44 +02:00
Ivailo Monev
a06e3b8be8
de-duplicate QFontDatabase code
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-19 03:48:13 +02:00
Ivailo Monev
ac8bc30ad4
const-ify QFontDatabase::styleString() methods
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-19 03:39:55 +02:00
Ivailo Monev
605c6280ab
test case for converting QFont from and to QString
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-19 01:45:16 +02:00
Ivailo Monev
b59672856d
add config file for testing X 16 bit depth support
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-19 01:19:32 +02:00
Ivailo Monev
98653b029b
update comment in QVariant test data
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-19 01:07:52 +02:00
Ivailo Monev
ced3473020
zero-copy QX11Data::copyXImageToQImage() for some cases
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-18 21:28:52 +02:00
Ivailo Monev
f1e363b911
QX11Data::copyXImageToQImage() optimization
...
the cake is a lie - even tho XGetPixel() and XPutPixel() take ulong as
pixel value it has to converted manually to value appropriate for the
XImage depth
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-18 20:52:58 +02:00
Ivailo Monev
34182fbae4
Merge branch 'master' of https://scm.osdn.net/gitroot/kde/Katie
2022-11-18 20:21:43 +02:00
Ivailo Monev
f06ca4f2c5
special-case QImage::Format_RGB16 with different bytes per line
...
for some reason on Debian XImage with depth equal to 16 can have different
bytes per line (off by 2 bits), on Arch it was not a thing when I tested
it so it could be a bug in X
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-18 20:21:18 +02:00
Ivailo Monev
ad589d273b
remove QTextDecoder and QTextEncoder leftovers
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-18 18:26:30 +02:00
Ivailo Monev
ac19ddd82a
convert the SVG image to QImage::Format_ARGB32_Premultiplied only if it is not in format with alpha channel
...
since it is painting of image (not painting to image) the performance
impact of it not being QImage::Format_ARGB32_Premultiplied is neglectable
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-18 14:33:44 +02:00
Ivailo Monev
041b961c0b
drop noop SVG quality implementation
...
altought it would be pretty easy to implement it seems to be in somewhat
unsupported state anyway, for reference:
https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/shape-rendering
https://developer.mozilla.org/en-US/docs/Web/CSS/image-rendering
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-18 14:10:13 +02:00
Ivailo Monev
dcddc9b718
remove redundant QCompleter::event() reimplementation
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-18 04:06:34 +02:00
Ivailo Monev
6b1d9fe048
remove unused QPdf::generateLinearGradientShader() method
...
USE_NATIVE_GRADIENTS is never defined
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-18 03:26:33 +02:00
Ivailo Monev
699f8f95b1
remove unused QFontSubset::toTruetype() method
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-18 01:26:21 +02:00
Ivailo Monev
db92f4ae56
correct logic in isStyleMatch() function
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-17 22:15:19 +02:00
Ivailo Monev
5e55866122
load the application font as last resort instead of adding it to each patterns
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-17 21:26:19 +02:00
Ivailo Monev
4897f79893
remove now bogus QFont test
...
italic/oblique are handled as enum (QFont::Style) and hint for fontconfig
what kind of slant to match (if style name is not specified that is) which
means exact style match or nothing. trying to substitute, mix and match
such style names in QFontDatabase was bad idea to begin with (not my idea)
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-17 20:50:11 +02:00
Ivailo Monev
c6c621b9fe
do not add the last resort font to the pattern when loading font
...
the default QApplication font is the last resort font
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-17 20:37:30 +02:00
Ivailo Monev
e8ee198ae3
minor QFont documentation review
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-17 20:36:13 +02:00
Ivailo Monev
706673c71c
do not add fonts with empty style to the database
...
Source Code Variable font has such entries for example
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-17 21:44:47 +02:00
Ivailo Monev
99a6715db2
query and set font pixel size from QFontDatabase
...
note that font pixel size is DPI-scaled, it being -1 means scale it to the
DPI of the paint device for example and Katie supports only scalable fonts
for a reason
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-17 19:09:54 +02:00
Ivailo Monev
995f46c975
preperations to drop QFontInfo
...
since I do not care about qt compat only normal and regular style
names are matched as equal, for now
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-17 18:39:31 +02:00
Ivailo Monev
dc830212a1
resolve family aliases from QFontDatabase methods
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-17 16:30:48 +02:00
Ivailo Monev
a4e2c2edb0
fix font style matching in QFontDatabase::font() and test case it
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-17 14:47:52 +02:00
Ivailo Monev
90b1be03c7
set the pitch of the font from QFontDatabase::font()
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-17 14:41:30 +02:00
Ivailo Monev
78556dafb5
export qt_getClipRects() only for the QRegion test
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-17 14:32:27 +02:00
Ivailo Monev
57b03e40f6
move qt_getClipRects() function to qregion source file, where it belongs
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-17 14:30:53 +02:00
Ivailo Monev
7d03dc89ed
lock before accessing the custom meta types global static in QMetaType::type()
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-16 22:17:47 +02:00
Ivailo Monev
052eca6bf7
Revert "always allocate QGlyphLayout data on the heap"
...
will have to wait until the QTextEngine redo
This reverts commit 4a5239046a
.
2022-11-16 21:27:57 +02:00
Ivailo Monev
4a5239046a
always allocate QGlyphLayout data on the heap
...
much easier to calculate the glyph array data size and also no
possibility for stack corruption
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-16 19:18:02 +02:00
Ivailo Monev
4b19a3adfc
add thread-safety test for QFontDatabase
...
it basically tests fontconfig thread-safety but QFontDatabase is documented
as thread-safe (as it should be) so why not add test case for it
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-16 16:01:25 +02:00
Ivailo Monev
44800c3c2d
QFontDatabase test review
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-16 15:35:45 +02:00
Ivailo Monev
78dfee1ace
do not assume FcObjectSetCreate(), FcPatternCreate() and FcFontList() return non-null pointers in QFontDatabase constructor
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-16 15:29:57 +02:00
Ivailo Monev
7a2ee5aa48
replace hardcoded QFont::Unstretched value with the enum
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-16 15:26:25 +02:00
Ivailo Monev
affd5c2ef3
assume the codec MIB is in the table in QTextCodec::mibEnum() and add test for it
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-16 05:05:56 +02:00
Ivailo Monev
19901408bc
remove unused headers inclusions in qfont source file
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-15 20:17:42 +02:00
Ivailo Monev
70214a96d4
use the QPixmap::scaled() method in QMoviePrivate::next()
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-15 20:09:54 +02:00
Ivailo Monev
3340e95259
use QVector for the QMetaMethod list in qInvokeTestMethods() function
...
operator new may throw if the method count is zero, a test case should have
atleast one method tho
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-15 19:34:24 +02:00