summaryrefslogtreecommitdiff
path: root/vcl/quartz
AgeCommit message (Collapse)Author
2018-03-26replace SalColor with ColorNoel Grandin
Change-Id: I615640a378a61cf6e44e84a647ce06bdd8a52807 Reviewed-on: https://gerrit.libreoffice.org/51239 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-03-21Don't initialize data for --enable-dbgutil onlyStephan Bergmann
This had originally been introduced with 0f6149593129c3d208f07d0d017dec0c71760778 "Make it easier to catch code that assumes SalBitmaps are created pre-cleared". But it only made it harder to find the issue reverted with ebe247642d85d39b6e1ffae3cf92c31748f2e983 "Revert 'tdf#116213 OS X and OpenGL bitmap scaline sizes are not 32-bit aligned'". Change-Id: I344e1ab4b390baa8364ade5fd2737a12708facdc
2018-03-21Revert "tdf#116213 OS X and OpenGL bitmap scaline sizes are not 32-bit aligned"Stephan Bergmann
This reverts commit 460f39e687393b3a8906d2adc3e8f7a0c749851a. For one, it had started to make bitmap checksum equality check in svx/qa/unit/XTableImportExportTest.cxx, CppunitTest_svx_unit, fail most of the time in macOS --disable-dbgutil builds, as the bitmap checksum is now computed also over padding bytes containing random values (but --enable-dbgutil initializes those bytes). And why would fixing tdf#116213 for Windows require touching the macOS-specific code, anyway? For another, tdf#116213 comments 6 and 7 report further problems that are likely linked to this commit. Change-Id: I3e158813ab89a1ead3780abbf6b120ec52660231
2018-03-16tdf#116213 OS X and OpenGL bitmap scaline sizes are not 32-bit alignedChris Sherlock
Change-Id: I92b43ae2f034bf63cc3f212ec8728c5c6b5e8934 Reviewed-on: https://gerrit.libreoffice.org/51222 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Michael Meeks <michael.meeks@collabora.com>
2018-03-09loplugin:constantparam in vclNoel Grandin
Change-Id: I1618280494ff10d884a3285501303c6a74ef3542 Reviewed-on: https://gerrit.libreoffice.org/50951 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-03-09drop getColor() method of ColorNoel Grandin
no longer necessary Change-Id: I9e0fcea1134e8c5e27f9effbb5eb79fe5446e33d Reviewed-on: https://gerrit.libreoffice.org/50925 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-02-28convert COL_ constants to be of type ColorNoel Grandin
Change-Id: I0e25c8950ac26b851ff42f71e1471fcbe4770d48 Reviewed-on: https://gerrit.libreoffice.org/50373 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Tested-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-02-26use less RGB_COLORDATANoel Grandin
part of removing ColorData Change-Id: If31b5b88545529863377e9a178f45f4516bf6cbb Reviewed-on: https://gerrit.libreoffice.org/50345 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Tested-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-02-22tdf#68889: Fix the weight reported by the system for the problematic fontTor Lillqvist
Like the previous fix for Courier Std. Let's hope there won't be a lot of these special cases. Maybe some generic heuristic would be better. Like if a font's GetStyleName() is "Medium", "Medium Oblique", or "Medium Italic" then always force its weight to be WEIGHT_NORMAL? Change-Id: I204655cd9c4e32d5cbbd68bb93c6282d23993b80
2018-02-22tdf#67744: Fix the weight reported by the system for the problematic fontTor Lillqvist
A hack, but oh well. Change-Id: I13580d27acfb0cc200bdb0cc1911518675d3e32e Reviewed-on: https://gerrit.libreoffice.org/50172 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Tor Lillqvist <tml@collabora.com>
2018-02-22ColorData->Color in vcl quartzNoel Grandin
Change-Id: Ie0de7f989ab4aefa900da6b9b75fcfe98584c8f3 Reviewed-on: https://gerrit.libreoffice.org/50124 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-02-05vcl: remove BitmapColor Color() operatorChris Sherlock
BitmapColor has a Color() operator. However, this is confusing and tends to hide that the two classes aren't the same. I have converted this to GetColor(). Change-Id: I0be2dcb3fc420e7be9c8d04330e7a3fe69a5412a Reviewed-on: https://gerrit.libreoffice.org/48245 Reviewed-by: Stephan Bergmann <sbergman@redhat.com> Tested-by: Stephan Bergmann <sbergman@redhat.com>
2018-01-23tdf#69254: Tweak mapping from CoreText weight to our FontWeight a bitTor Lillqvist
Make the mapping of light weights more likely to hit different enum values for slightly different weights. We want to be able to distinguish between for instance Overpass Light (with weight -0.4) and Overpass ExtraLight (with weight -0.5). Change-Id: If83fbce68149b267a49ef9bcb6624d8790de7c56 Reviewed-on: https://gerrit.libreoffice.org/48409 Reviewed-by: Tor Lillqvist <tml@collabora.com> Tested-by: Tor Lillqvist <tml@collabora.com>
2018-01-23The CT prefix is used by the CoreText APITor Lillqvist
Surely we should not be using it for our own things in our Quartz code, that is misleading. Also bin a silly typedef. Change-Id: Ie932e8784128246ca449608aad3dc96a575ec9d5
2018-01-20More loplugin:cstylecast on macOSStephan Bergmann
Automatic rewrite (of loplugin:cstylecast and loplugin:unnecessaryparen) after cab0427cadddb3aaf1349c66f2fa13a4234ba4b2 "Enable loplugin:cstylecast for some more cases" and a409d32e7f6fc09e041079d6dbc3c927497adfed "More loplugin:cstylecast" Change-Id: Iff4877e8a42804c952c48c13332caf0a83c92870 Reviewed-on: https://gerrit.libreoffice.org/48216 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2018-01-06convert tolerance params to sal_uInt8 (second try)Noel Grandin
first attempt was in commit e75abe6e0a4ea250366bb29c0ece697e9b1b80a1, reverted in 7accac097688832d8682a88a0176c3e1482ffade Change-Id: I460e9ab5fcca3a99656e5d8434fa04c2387d7183 Reviewed-on: https://gerrit.libreoffice.org/47463 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-01-06iOS, correct DPIX calculationjan Iversen
Patch is thanks to Jon N. Change-Id: Idba9ec9b32b144523f0e7da5f7273f6af9fdfd31
2018-01-05tdf#114837 FILEOPEN: Image is blankNoel Grandin
revert commit e75abe6e0a4ea250366bb29c0ece697e9b1b80a1 Author: Noel Grandin <noel.grandin@collabora.co.uk> Date: Tue Dec 12 09:33:14 2017 +0200 convert tolerance params to sal_uInt8 for now. Change-Id: Iafaada0fb338f60ecc9f94aafe138500dfb27cf7 Reviewed-on: https://gerrit.libreoffice.org/47453 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-12-15Protect all LogicalFontInstance constructorsJan-Marek Glogowski
This way LogicalFontInstance can just be constructed by a PhysicalFontFace based factory. The patch also drops the wrong "Java logical font" comment added by commit 125cdf3404e60cf78f2a5547e9a06ce994df5c8e. Change-Id: Ibd5d7da0c3a65dbfa2c8ae6b05cf616d39b749f2 Reviewed-on: https://gerrit.libreoffice.org/46475 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2017-12-13convert tolerance params to sal_uInt8Noel Grandin
since their range is 0-255 Also drop pTols from ImplColReplaceParam, since it is always nullptr. Change-Id: I9e9ab7f7596e18cab1d67dd69922e5ac9867f45b Reviewed-on: https://gerrit.libreoffice.org/46274 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-11-14use std::unique_ptr for SalLayoutNoel Grandin
to make the ownership passing around more obvious Change-Id: I147ec6d9cfe7566cf3600685e0730ed741c2d90d Reviewed-on: https://gerrit.libreoffice.org/43454 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-10-30Constify some VCL interface functionsJan-Marek Glogowski
This drops the bPaintEnd optimization for vertical and horizontal lines on Windows, where Polyline and LineTo exclude painting the last pixel of the line. Instead we just always set the last pixel. It also merges the various "SetPixel" call sites into a common drawPixelImpl function. Change-Id: I01cc3c01c908ba74f7978fa90eaaf8d88f923ae3 Reviewed-on: https://gerrit.libreoffice.org/43939 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2017-10-24loplugin:includeform: vcl (macOS)Stephan Bergmann
Change-Id: I4382a45dcffb32c7c001ee722ac1deccb2b01c2d
2017-09-29OSX rename mpFirstInstance to mpInstanceJan-Marek Glogowski
In the same spirit as the Windows commit 7c52d86f7b05fe7e0178f6d98a12a531b88a32ff. Change-Id: Ic45803c0715723b6f57c9f6a0c731edd559aa92c Reviewed-on: https://gerrit.libreoffice.org/42932 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2017-09-28Unify SalUserEvent handlingJan-Marek Glogowski
Merges the various SalUserEvent structs and their handling into a single class. This includes a common SalFrame* hash map, as all backends use such a map to verify alive SalFrames. It also reverts the "FIXME: lousy workaround" for i#90083, which was part of commit d6f7c94e5c27ba02ff5c3229760c9808cc9b5bea. At least on my current OSX box application based window switching "just works" "out of the box", even without the code. Change-Id: I188b567e44fd79c162b2d9cabbd771d1f66c7dc4 Reviewed-on: https://gerrit.libreoffice.org/42845 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2017-09-18Acknowledge that WinSalGraphicsImpl::drawPolyLine modifies pPtAryStephan Bergmann
Change-Id: Idde44857f8ace883cc759321c71e2ca7a4359334 Reviewed-on: https://gerrit.libreoffice.org/42406 Reviewed-by: Stephan Bergmann <sbergman@redhat.com> Tested-by: Stephan Bergmann <sbergman@redhat.com>
2017-08-31loplugin:constparams: vcl (macOS)Stephan Bergmann
Change-Id: I993ab0021d0a0bee8e78975bba180355d2bfb19c
2017-08-08tdf#111497: fix leak in FindFontSubstitute with CFReleaseJulien Nabet
Change-Id: I9d7de52b4a1ee102b233b982e97ecbf731b476f2 Reviewed-on: https://gerrit.libreoffice.org/40895 Reviewed-by: Julien Nabet <serval2412@yahoo.fr> Tested-by: Julien Nabet <serval2412@yahoo.fr>
2017-08-07tdf#111432: fix leaks in AddTempDevFont with CFReleaseJulien Nabet
Change-Id: I11183b7fd21d2398de9e5f5854763cef96963caa Reviewed-on: https://gerrit.libreoffice.org/40845 Reviewed-by: Julien Nabet <serval2412@yahoo.fr> Tested-by: Julien Nabet <serval2412@yahoo.fr>
2017-08-07loplugin:casttovoidStephan Bergmann
Change-Id: Icda66259acf54e6771b926ce9d329287bd610e82
2017-08-07loplugin:unnecessaryparenStephan Bergmann
Change-Id: I9496cafef840195e3934bf92600d4e8c8edb6c26
2017-06-20new cannot return nullptrNoel Grandin
unless we are using std::nothrow Change-Id: I3bdd13c8ce18f4e977f18ee5196311bf4fc62de0 Reviewed-on: https://gerrit.libreoffice.org/38998 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-06-18remove unused osl/mutex.hxx includesJochen Nitschke
Change-Id: I3b50e45fdb99e9cd8bfda07356ee3ddb4dd0f8bb Reviewed-on: https://gerrit.libreoffice.org/38905 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Jochen Nitschke <j.nitschke+logerrit@ok.de>
2017-04-21remove unnecessary explicit linefeeds from end of SAL and OSL log callsNoel Grandin
Change-Id: I3fa363c8e76e6cfb297f4ec346e3f031c09d6fbf Reviewed-on: https://gerrit.libreoffice.org/36727 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-03-31tdf#82580 tools: rename Rectangle to tools::RectangleMiklos Vajna
Mostly generated using make check COMPILER_EXTERNAL_TOOL=1 CCACHE_PREFIX=clang-rename-wrapper RENAME_ARGS="-qualified-name=Rectangle -new-name=tools::Rectangle" Except some modules have their own foo::tools namespace, so there have to use ::tools::Rectangle. This commit just moves the class from the global namespace, it does not update pre/postwin.h yet. Change-Id: I42b2de3c6f769fcf28cfe086f98eb31e42a305f2 Reviewed-on: https://gerrit.libreoffice.org/35923 Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk> Tested-by: Jenkins <ci@libreoffice.org>
2017-03-28ofz#954 out of memoryCaolán McNamara
Change-Id: Ib27f2dfe0d0837544910208f38a1bc11a35e3cb4 Reviewed-on: https://gerrit.libreoffice.org/35794 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2017-03-02Fix typosAndrea Gelmini
Change-Id: I72db7ff99cde394bc161dfd835bfb0d9a47a53d1 Reviewed-on: https://gerrit.libreoffice.org/34780 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-02-26Round glyph bbox on Mac similar to other platformsKhaled Hosny
Core Text API gives us float bounding box that we round ourselves, on other platforms we get rounding integers. Try to use the same rounding on Mac as FreeType does internally, hopefully this is the same on Windows. Change-Id: I7eb08464b008174270880575c4f3df28ede5c89d Reviewed-on: https://gerrit.libreoffice.org/34661 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Khaled Hosny <khaledhosny@eglug.org>
2017-02-22tdf#104509: Fix GetGlyphBoundRect on MacKhaled Hosny
The rectangle top and bottom were mixed up! I tried to fix this in 8cef9b4dbafdebc0566d6d7f715f27f978ddfe5b, but it was not the right fix. Change-Id: Ia033ff2823bfd641e830d748d413d7791bfee5b8 Reviewed-on: https://gerrit.libreoffice.org/34557 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Khaled Hosny <khaledhosny@eglug.org>
2017-02-09convert FontType to scoped enumNoel Grandin
Change-Id: Ieb8f90be8effde5f25bc872784c3ea2177b14bf9 Reviewed-on: https://gerrit.libreoffice.org/34056 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-02-08drop unused enum TTCreationFlagsNoel Grandin
there is only one method using it, and all of the call sites pass 0 Change-Id: I5d71b36cf890fbcf0be9d795756da0cfd61ae309 Reviewed-on: https://gerrit.libreoffice.org/34024 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-02-02convert method names in tools::SvRef to be more like our other..Noel Grandin
reference classes, uno::Reference and rtl::Reference. Specifically rename Is()->is() and Clear()->clear(). Change-Id: Icb7e05e2d09cb9977121508b837ba0961dabb4ae Reviewed-on: https://gerrit.libreoffice.org/33576 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-01-30tdf#104693: screenshot: fix mirrored mac screenshotsThorsten Behrens
Change-Id: Ie13689d7e15bf8dee6f21e6f5e7d75c9e53e931b Reviewed-on: https://gerrit.libreoffice.org/32543 Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de> Tested-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
2016-12-12Don’t return false for blank glyphsKhaled Hosny
CTFontCreatePathForGlyph() will return NULL for blank glyphs causing CoreTextStyle::GetGlyphOutline() to return false which propagated as error all the way to OutputDevice::GetTextOutlines() causing it to needlessly enter into fallback code. Other implementations just return true and an empty polygon here. Change-Id: Ib20ebff00f7cb3aae22f1c6b4c3a0e9d7a429987 Reviewed-on: https://gerrit.libreoffice.org/31902 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Khaled Hosny <khaledhosny@eglug.org>
2016-12-11sal_GlyphId is a simple glyph id nowKhaled Hosny
No more cleverness. Change-Id: I760c602802961b37728c6987c4ade14fb02ca034 Reviewed-on: https://gerrit.libreoffice.org/31819 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Khaled Hosny <khaledhosny@eglug.org>
2016-12-11Don’t encode font fallback level in the glyph idKhaled Hosny
Change-Id: I747d969c3c1dc42b1a3b5d12d06fed3af9a64675 Reviewed-on: https://gerrit.libreoffice.org/31818 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Khaled Hosny <khaledhosny@eglug.org>
2016-12-11Don’t encode the vertical flag in the glyph idKhaled Hosny
Change-Id: I00485dd4d42004e4eaa163a9e6ad0a43cf98a30a Reviewed-on: https://gerrit.libreoffice.org/31816 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Khaled Hosny <khaledhosny@eglug.org>
2016-12-10Use GlyphItem in more placesKhaled Hosny
Change-Id: Ic0dd8c0311161271817eb9a3f454d00a319e43a8 Reviewed-on: https://gerrit.libreoffice.org/31814 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Khaled Hosny <khaledhosny@eglug.org>
2016-12-10Pass GlyphItem aroundKhaled Hosny
We have this nice structure that contains (almost) all the information we need, so pass it around instead of passing separate fragments of said information. The ultimate is to kill the horrible sal_GlyphId hack if encoding various bits of information in the higher bits of a 32-bit integer. Change-Id: Ie496bb4c2932157527a388e2a94e46bf0a325a70 Reviewed-on: https://gerrit.libreoffice.org/31781 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Khaled Hosny <khaledhosny@eglug.org>
2016-12-07convert PolyFlags to scoped enumNoel Grandin
and remove the XPolyFlags enum, which has the same values and was being converted to PolyFlags anyhow Change-Id: Iaead84933c79a7603698a4e50257dd944df89c41 Reviewed-on: https://gerrit.libreoffice.org/31627 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Tested-by: Noel Grandin <noel.grandin@collabora.co.uk>