Age | Commit message (Collapse) | Author |
|
When in font options, the Fonts in "Font Setting for HTML, Basic and SQL
Sources" were not showing any fixed (non-proportional) fonts in the list
when "Non-proportional fonts only" was ticked.
The reason this was occuring was because we were not populating the
fixed font attribute when getting the CT font descriptor.
Change-Id: I06127ac48bd0f3bc9b70217b36bbf584a1b0fdc2
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/123316
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Tested-by: Jenkins
(cherry picked from commit d389a54e64accc3f46c1a646f947e9af9badd08e)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/123412
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
|
|
Window scaling for retina displays on macOS has been added to fix
tdf#138122 in commit 1a167625314bf36b735176ed488e6ba9b5e9b675
Missing window scaling for XOR emulation is added by this change.
Code modified for macOS is moved from quartz/salgidcommon.cxx to
osx/salmacos.cxx while original code is copied to ios/salios.cxx
to prevent modifications for iOS.
Change-Id: Ia8c52f9045379cc37d5aff1279650db0dddee8c0
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/115816
Tested-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com>
Reviewed-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com>
|
|
Change-Id: I933a51e9107d8f7dff5eeb03f9aba14dff534574
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/115046
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Change-Id: I0701b15a28ab3583586c0c8018c511e100b41a93
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/114948
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
|
|
This change moves graphic rendering function under AquaSalGraphics
into a new AquaGraphicsBackend, which inherits from SalGraphicsImpl.
This is part of the refactoring to make it mandatory that a
SalGraphics always has a SalGraphicsImpl associated, which will
make it possible to simplify the SalGraphics interface and enable
the posibility to implement alernative graphic backends (Skia).
Common variables and attributes are moved to AquaSharedAttributes
and are shared between SalGraphics and SalGraphicsImpl.
Change-Id: Ie48da87002ec8e4011ba92fdc9170f3a86761517
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/114701
Tested-by: Jenkins
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
|
|
Rather use a proper alpha channel if we need transparency.
This is another small step towards merged alpha in our vcl
layer.
I suspect the intent in a lot of this code was to save memory.
Which have been a thing way back then, but these days our
backends mostly end up doing a copy-and-convert to a real
alpha channel anyway, so the existing code is actually
now a pessimisation.
Change-Id: I4a2bcbb2f76b841f05bc00580f364492829c69de
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/114808
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I123c4048d333cdc761582763d6ccb9c254e32bbb
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/114700
Tested-by: Jenkins
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
|
|
ScanlineTransformer was created because there are multiple impl.
of the same tool (ImplPixelFormat), but it never replaced those
duplications. This change removes one of the duplications - the
one in Quartz backend.
Change-Id: I637433ae59e7577022b86e582eb4a8a64f3055f0
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113610
Tested-by: Jenkins
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
|
|
This changes all backends to use PixelFormat as the input to
the SalBitmap::Create method (and all the backends). This is the
first part as we need to make sure to also limit the use of
GetBitCount method and also use of it in SalGraphics.
Change-Id: I8d2b6adfcb8fe3dd78010538411f338c9a1c3996
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113603
Tested-by: Jenkins
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
|
|
since we have already removed the 4-bit internal bitmap formats.
Change-Id: Ie481aaa8e25642a47e30beb6f37e2d3beda304e9
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113412
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
The use of polygons currently causes misalignment by one pixel.
Use of polygons is dropped on macOS by this change similar it has
been done for SKIA to fix tdf#133208.
Change-Id: I31faf7cf9b33908a52cb60d1b631308b4fe45e56
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/112823
Tested-by: Jenkins
Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
Reviewed-by: Tor Lillqvist <tml@collabora.com>
|
|
This allows the VCL backends the apply the extra alpha transformation
as it sees fit, rather than it being done manually elsewhere (and
even if the backend doesn't implement it, at least do it in one
place in the function).
With the document from tdf#136223, going from slide 2 to slide 3,
this easily saves 10-30% of CPU cycles. As an additional bonus,
using AlphaMask::BlendWith() rather than AlphaMask::Replace()
makes edges of shapes noticeably more smooth.
Change-Id: I036dc9b887d6def0c7cdad3982becabdc7cd5206
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/111247
Tested-by: Jenkins
Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
|
|
At least with Skia this is faster than GraphicObject trying
to handle it manually, even in raster mode.
Change-Id: If77d108751f5621878d4ea87a996c2ea0253d111
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/111246
Tested-by: Jenkins
Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
|
|
(1) Activate window scaling when at least one retina display is connected
(2) Remove environment variable VCL_MACOS_FORCE_WINDOW_SCALING
(3) Disable related unit tests unless bitmap scaling has been implemented
Change-Id: I218119a21e319e22bf17c609608724fce180f000
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/111267
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
macOS"
This reverts commit f318b856ed055f1952276355f811153f6b29c93e.
It appears this reliably causes CppunitTest_vcl_backend_test to fail on macOS on
at least tb69, see e.g. <https://ci.libreoffice.org/job/gerrit_mac/82587/
consoleFull#-500134232d893063f-7f3d-4b7e-b56f-4e0f225817cd> and
<https://ci.libreoffice.org/job/gerrit_mac/82592/
consoleFull#-500134232d893063f-7f3d-4b7e-b56f-4e0f225817cd>,
[_RUN_____] BackendTest::testDrawBlendExtended
/Users/tdf/lode/jenkins/workspace/lo_gerrit/Config/macosx_clang_dbgutil/vcl/qa/cppunit/BackendTest.cxx:688:BackendTest::testDrawBlendExtended
equality assertion failed
- Expected: c[000080ff]
- Actual : c[ffffffff]
BackendTest::testDrawBlendExtended finished in: 1ms
[_RUN_____] BackendTest::testDrawAlphaBitmapMirrored
/Users/tdf/lode/jenkins/workspace/lo_gerrit/Config/macosx_clang_dbgutil/vcl/qa/cppunit/BackendTest.cxx:749:BackendTest::testDrawAlphaBitmapMirrored
equality assertion failed
- Expected: c[ff0000ff]
- Actual : c[000000ff]
BackendTest::testDrawAlphaBitmapMirrored finished in: 1ms
[_RUN_____] BackendTest::testTdf124848
/Users/tdf/lode/jenkins/workspace/lo_gerrit/Config/macosx_clang_dbgutil/vcl/qa/cppunit/BackendTest.cxx:808:BackendTest::testTdf124848
equality assertion failed
- Expected: c[000000ff]
- Actual : c[ffffffff]
And it also causes my local macOS 11.1 ARM64 build to consistently fail that
way, both the original patch set 1 (with the older parent) and the submitted
patch set 2 (with a newer parent).
Change-Id: I2c36fada271e8bc300b6caa19370d8e8bb1e7599
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/110055
Reviewed-by: Tor Lillqvist <tml@collabora.com>
Tested-by: Jenkins
|
|
(1) Activate window scaling when at least one retina display is connected
(2) Remove environment variable VCL_MACOS_FORCE_WINDOW_SCALING
Change-Id: If6926ace7238f2be4ae91290872dbb3dbf658221
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/110002
Tested-by: Jenkins
Reviewed-by: Tor Lillqvist <tml@collabora.com>
|
|
Change-Id: I3225ec0916b793a322acb44010563052451f782e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/109758
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Change-Id: I1dc6256968503ee3865f90e3693acce911a1d65c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/109485
Tested-by: Jenkins
Reviewed-by: Tor Lillqvist <tml@collabora.com>
|
|
Make vcl compile again for iOS and make the Collabora Office iOS app
work again when built against a master build of core.
For now, keep the old versions of the functions touched by
1a167625314bf36b735176ed488e6ba9b5e9b675 in vcl/ios/salios.cxx, and
move the modified versions to the new file vcl/osx/salmacos.cxx.
Keep the functions as they were except that ifdefs for MACOSX or IOS
are expanded. Keep the formatting as it was to make comparisons
easier. Thus add the new files to the clang-format exclusion list.
While at it, also move vcl/quartz/salgdiutils.cxx to vcl/osx as it is
compiled only for macOS anyway.
Change-Id: I990ef678f2263031d4a5af8cc547fffe185d17c4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/109480
Tested-by: Jenkins
Reviewed-by: Tor Lillqvist <tml@collabora.com>
|
|
(1) Remove hack to make application look as if being linked against SDK 10.13
(2) Use quad storage size on virtual devices for displaying on retina displays thereafter
(3) Apply workaround to downsample bitmaps from scaled layers (to be implemented)
(4) Disable dark mode (to be implemented)
(5) Provide new environment variables:
VCL_MACOS_FORCE_WINDOW_SCALING:
window scaling on non retina displays
VCL_MACOS_FORCE_DARK_MODE:
enable dark mode (macOS 10.14, iOS 13 and newer)
VCL_MACOS_USE_SYSTEM_APPEARANCE:
use light mode or dark mode (macOS 10.14, iOS 13 and newer) as configured by system preferences
Change-Id: I99877cd62a98cb91bcbf27af62b043c31c5f5fc9
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/109072
Tested-by: Jenkins
Reviewed-by: Tor Lillqvist <tml@collabora.com>
|
|
Change-Id: I73e106923d463215078a465f9ff933ea3c89255f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/108665
Tested-by: Jenkins
Reviewed-by: Tor Lillqvist <tml@collabora.com>
|
|
Change-Id: I53cfc0451dd67b7508d85050fbf262aafc361550
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/108513
Tested-by: Tor Lillqvist <tml@collabora.com>
Reviewed-by: Tor Lillqvist <tml@collabora.com>
|
|
Change-Id: I0caea1297404e7970571085cc787ff23e614e500
|
|
Change-Id: I72cc28d4df8031e322daa50d79666cabcb6421a7
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/108040
Tested-by: Jenkins
Reviewed-by: Tor Lillqvist <tml@collabora.com>
|
|
Change-Id: Ia9ae40b6286801c7cbdab6856d57e0ddd37aba87
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/108161
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Change-Id: I38a234e6f4a3fc5e0f17cfd9a0068d2081b6c654
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/108099
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-by: Tor Lillqvist <tml@collabora.com>
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/108100
Tested-by: Tor Lillqvist <tml@collabora.com>
|
|
We mean CGLayer, so say so.
Change-Id: Iaa24471ce790114dc5cf2bbf353f9aa4a1d59893
|
|
Change-Id: I63892376154893a97e6b205b93c1682f66fd3064
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/105756
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
...even though CGBitmapContextCreate is documented to take a mixture of
CGImageAlphaInfo and CGBitmapInfo flags; so convert all to the uint32_t
CGBitmapContextCreate bitmapInfo parameter type
Change-Id: Ic6630c68760fe29b6abf6053e80a852a31349839
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/105755
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
cf. e.g. pure virtual SalGraphics::GetResolution (vcl/inc/salgdi.hxx)
Change-Id: I77d54ad0a7b80cf8839b253c14ce468ac4e16c84
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/105748
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
<caolan> that "SalPoint" doesn't really seem to to have a purpose
except to highlight that "Point" is assumed to use LONG under windows
and can be passed unchanged to those windows drawing apis
<caolan> so I guess remove SalPoint entirely, use Point instead,
and convert to "POINT" under windows ?
Change-Id: Ic15a7f4516e2075a228fa65cac4e8494d5b3abaa
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/105634
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
|
|
Change-Id: Ic2833f2e6dfea4a9e3dd1094151f86e07be83040
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/105623
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Change-Id: I94b624f5340709e2cc456be12c7b21eab508dddb
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/105609
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Improve drawing performance on 10-bit displays by avoiding multiple color
space conversions.
Make all drawing context bitmaps have the colour space and byte order of
the host window.
Fix serious CoreGraphics-related memory leak (existed no later than
version 7.0) when changing the window size.
Change-Id: Ia7b7e88d47b728bd1d10dedc1ca222215de41e73
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/104858
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
partly to flush some use of "long" out the codebase,
but also to make it obvious which units are being used
for angle values.
Change-Id: I1dc22494ca42c4677a63f685d5903f2b89886dc2
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/104548
Tested-by: Noel Grandin <noel.grandin@collabora.co.uk>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
...since 2cd47f53b4c7bd300c210eaa466e13adc832c9b5 "tdf#137468: Add debug output
function for CGColorSpaceRef"
Change-Id: If392589071ddbc787e54863bafd65734aafe8c67
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/104480
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Change-Id: I6fdb00652bf3dd892b531b80c2bb621ff22e8717
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/104475
Tested-by: Jenkins
Reviewed-by: Tor Lillqvist <tml@collabora.com>
|
|
A number of powerful functions using B2D polygons such as
OutputDevice::DrawPolyLineDirect() were used only if AA was enabled.
So e.g. dashing for an AA-ed polyline could be drawn directly
using the function, but with AA disabled had to be done manually
by a number of polygon operations. Which doesn't make much sense,
surely these powerful functions can also draw without AA if set so
(and indeed that's mostly the case). And DrawPolyLineDirect() even
had a flag to bypass the check.
So simply try to use B2D-based drawing whenever possible, AA or not.
The previous commit had already changed the naming of the AA option
to not include B2D in the name.
This seems to come from https://bz.apache.org/ooo/show_bug.cgi?id=88795,
which doesn't explain why AA only. There are other bugreports such as
https://bz.apache.org/ooo/show_bug.cgi?id=101491 and
https://bz.apache.org/ooo/show_bug.cgi?id=98289 that are related, but
there I cannot see any difference with this patch. And all unit tests
pass.
Change-Id: Ibb5938e8fff9b7452bac4bf12ed3e42fd3e5d645
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/103354
Tested-by: Jenkins
Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
|
|
This renames AntialiasingFlags::EnableB2dDraw to just Enable,
and the AntiAliasB2DDraw names to just AntiAlias. This is
in preparation for a second commit that will actually separate
the AA and B2D functionality of these flags.
Change-Id: I9cc215c5752dfabce41e00e19d9074fc8dc3d4de
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/103416
Tested-by: Jenkins
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
|
|
It passed "make check" on Linux
Change-Id: I5e2b4f37296b521b5e942a8e9f9caf2137e39172
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/103456
Tested-by: Jenkins
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
|
|
This is basically just some refactoring. Most interestingly the
MacOS used to work with 257 glyphs. I couldn't find any
explaination for the 256 glyph limit. Sadly the PrintFontManager
is out of scope. That needs more inspection.
Change-Id: Ibfa0e905f5efeb7d4a609884d64b4ed2615a9d3d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/102688
Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
Tested-by: Jenkins
|
|
Since removed code in the previous commit is primary used in
CreateFontSubset and GetGlyphWidths, you have a high chance, that
the CMAP was already used for displaying a font, so it's already
decoded and can be forwarded. Also the lookup should be faster in
general this way.
Change-Id: Icf4d8a1a84ff6ccdaccb7e870abe5df3837f9541
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/102686
Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
Tested-by: Jenkins
|
|
Now that GetFontChatMap is a member of PhysicalFontFace, we can
copy the common part of both architectures into a SalGraphics
helper function.
Change-Id: Iad379ea690a1c5346b69b5042188506ccf575cc2
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/102684
Tested-by: Jenkins
Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
|
|
This hides all members, which are needed to create a new TTF font
by calling vcl::CreateTTFromTTGlyphs, and adds an abstraction
to access individual font tables. This is needed, because Qt5
just allows access to the raw font based on font tables.
Change-Id: I74e34cf1aa2529a06ec5ec53aa2be751e58982ad
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/100717
Tested-by: Jenkins
Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
|
|
Change-Id: I9500453c8964b774e4b0be41a7b2f1a8c28040b2
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/99138
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-by: Tor Lillqvist <tml@collabora.com>
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/99183
Tested-by: Jenkins
|
|
Change-Id: I221351bdc43b48e714acca89bc84db007258299e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/99115
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Only the grey palette with 256 colors means that pixel values map
directly to color values. Tdf#121120 has an image with 2-bit
palette where color index 1 is (255,255,255), but that means
the pixel value 1 cannot be just treated as color.
Change-Id: Ifbd953af7f291e4fb8032ea0f4c33c0514770856
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/97283
Tested-by: Jenkins
Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
|
|
Change-Id: Iae0a2966aa6394e16c2ba3d4155d90bac373472f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/96118
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Change-Id: I414eaf0e61be09ccf12d04577c89dbcdb845f85f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/96117
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Change-Id: Ie26580277fa6d0734b8af1eb029e0883a3c6f886
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/95064
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|