path: root/vcl
AgeCommit message (Collapse)AuthorFilesLines
2019-10-10initial implementation of Skia drawing on screen in Windowsprivate/llunak/skiaLuboš Luňák15-5/+195
Change-Id: I1562bd2cfd1862947042bef3343aefd851a65002
2019-10-10make WinSalVirtualDevice::SetSize() always call Init() for all Impl'sLuboš Luňák1-6/+1
I don't see why this should be OpenGL-only. For WinSalGraphicsImpl it's a no-op anyway, and for other Impl's it may be useful to find out that they have been in fact resized. For Skia this is necessary because Init() the first time may get called with empty size. Change-Id: I4a8fa0fc633b415735d3633e89f208ab1c1f1229
2019-10-10make X11/Skia render to screen using Skia codeLuboš Luňák4-44/+51
Change-Id: I3056afe2ba0a15e0798d209ab9bd833c773948be
2019-10-04ok, skia on linux actually really needs -DSK_R32_SHIFT=16Luboš Luňák1-1/+0
Otherwise the RGB order is swapped. Interestingly SkSurface::makeImageSnapshot() then returns the non-native 32bit format, but that doesn't seem to actually matter. Change-Id: I5ab2f339e1a8d3a73bf0a76c640051e0e96e5d59
2019-10-04implement skia x11 cairo text drawingLuboš Luňák3-13/+14
Change-Id: Id7d29980d2ea82b98e478e24b7e3189c31fa7257
2019-10-04move opengl and skia cairotextrender.cxx to their dirsLuboš Luňák8-10/+12
Change-Id: I67a87db644dc6fd7d69d615f7b4c388c3a1d97f6
2019-10-02make the X11/Skia backend finally capable of drawing on screenLuboš Luňák4-9/+133
Change-Id: I5c847c1036c671137ee27053691189093b1dafae
2019-10-02WIP avoid checking Bitmap checksums in a testLuboš Luňák1-61/+14
TODO: The data is somewhat random, because on all the data in a scanline is necessarily filled in, but checksumming counts it all. But then, this should work, as even copying a bitmap should generally just copy all the data, so why is this broken? Change-Id: Ie9efa01b191c817543bb79278125e6ddd5b0d83e
2019-10-02correct SkPaint usage when paintingLuboš Luňák2-12/+50
Handle SALCOLOR_NONE properly. Also avoid reusing a global SkPaint, creating a new one is as cheap as making a copy, and this way it's less error-prone. Change-Id: I12659cdc58b02f5105029b2b89d1b0c147c7a471
2019-10-02flush SkSurface's SkCanvas before getting data from itLuboš Luňák1-0/+3
It seems this is necessary, otherwise there may be pending operations. Change-Id: I93650bbd622d8ab8b6535a950afd2b6ac6a87db7
2019-10-02implement Skia setClipRegion()Luboš Luňák1-3/+44
Change-Id: I9e525936bba50b565704ee1b60d7464a7397dc80
2019-10-02adjust a confusing testLuboš Luňák1-2/+2
GetPrefSize() at this point is Size(0,0), so the test was testing topleft corner. And getPixel() takes Y,X , so even then it wasn't testing the center. Change-Id: Ie2e489a693fae2b7ea41075ebe6fa3ef405545d5
2019-10-01better handling of bit depths in skia codeLuboš Luňák2-39/+71
Change-Id: Ifb3103cc3494bc55a562d4b6a16b59a044782416
2019-10-01fix skia bitmap copyingLuboš Luňák1-1/+1
Change-Id: I6eef23a0feaf577e1007ef197fc2fbaf138994b0
2019-10-01implement skia copyBits()Luboš Luňák4-11/+24
Change-Id: I6706de1daaac60ce493b60af129e7a8e92c73bed
2019-09-30fix test for CanvasBitmap not handling N32BitTcMask bpp properlyLuboš Luňák1-1/+4
Change-Id: Ic331d33e0f0feca1fde4425fdb4106b1a769194d
2019-09-24more SkiaSalgraphicsImpl drawingLuboš Luňák1-24/+54
Change-Id: Ie17e8180a07ea96eff5f98b7a59efb8f576801ff
2019-09-24Skia alpha handling improvementsLuboš Luňák7-121/+200
CppunitTest_vcl_bitmap_render_test now passes. Change-Id: I88863c63de84f28b5dfeeaf73d3879bc7cbba1b2
2019-09-24Skia supports 32bit bitmapsLuboš Luňák2-0/+15
And I'd say OpenGL does as well, but enabling this for OpenGL makes some tests fail, so let's keep this only for Skia. Change-Id: Ibbbb460cd053f4a6caa4e3a8a9c6ec52e19dcd38
2019-09-23better support for <8 bpp in SkiaSalBitmapLuboš Luňák5-9/+85
Change-Id: Ife79abfb9c36925405fd0b7da40f5274c0339117
2019-09-23move opengl's code for converting 1,2,4bpp to 24bppLuboš Luňák3-135/+149
To be reused by the Skia code. Change-Id: If3befdbd86d98a2d931c7a366c47be57a0ae6c59
2019-09-23add .cxx file for SalBitmapLuboš Luňák3-23/+46
And move the non-trivial virtual UpdateChecksum() there. Change-Id: I6776a51373e375e12f1ec9588a9c49410ae5124a
2019-09-23WIP add forgotten skia/gdiimpl.hxx changesLuboš Luňák1-2/+38
Change-Id: I9bd809fe1e1896a119cd4c3c72e1fd41fa4bed41
2019-09-23more work on SkiaSalGraphicsImpl, mainly drawBitmapLuboš Luňák2-11/+41
Change-Id: I153f71abe4612e2561e41ee923eb28e46cc31a98
2019-09-23Skia dump() should be constLuboš Luňák3-3/+3
Change-Id: I01302255daf37222ad13f9151b1a80aacb784a3c
2019-09-23initial work on Skia SalGraphicsLuboš Luňák4-41/+122
Change-Id: I3a86052ac1243e1dcdf63c7d003a7cd7c678faa8
2019-09-23(merge?) move skiagdiimpl.hxx to skia/Luboš Luňák4-3/+3
Change-Id: Ide61571d9298e657119b42a16cc9b62777c20e53
2019-09-23move openglgdiimpl.hxx to opengl/Luboš Luňák7-12/+12
That's where all the other opengl headers are. Change-Id: I1f8bbfb7018a6c28c87e4dfa2acbf4efde62894b
2019-09-20basic functional implementation of Skia SalBmpLuboš Luňák4-20/+175
Change-Id: I8e81c44554663a99cd4b262e37f4841ba0687cf1
2019-09-20(merge) improve salbmp.hxx styleLuboš Luňák1-16/+19
Change-Id: Ib75a6a63e55c559b34033f2afb59f18d15e17700
2019-08-16WIP skia now actually buildsLuboš Luňák1-1/+1
Change-Id: I4f1253f1ad4496b1578f9d6838662c1fbba377db
2019-08-15WIP empty Skia vcl implementationLuboš Luňák11-126/+665
Change-Id: I3849c7895a3a8747f5874a91c023a38a26d18179
2019-08-15add missing #includeLuboš Luňák1-0/+3
Change-Id: Ib0576a5d90d4e1d7dd97104d4be3a253a80c9392
2019-07-30WIP skia integrationLuboš Luňák16-6/+602
Change-Id: I3c810d8eaf242527e6274cb59c7caaa7da30bb23
2019-07-29return early if no work to be doneCaolán McNamara1-0/+2
Change-Id: I79cef4af708220c962df48d0bcf347bdc1c8a218 Reviewed-on: Tested-by: Jenkins Reviewed-by: Caolán McNamara <> Tested-by: Caolán McNamara <>
2019-07-29revert part of "add some error checking to the UI file loading"Noel Grandin1-39/+31
revert part of commit cba5cd06c8ffd8628ae3d39efe715a5d8b3ac7e7 Author: Noel Grandin <> Date: Fri Jul 26 12:49:10 2019 +0200 add some error checking to the UI file loading because some places eg. "writer format->bullets and numbering" expect a silent return of nullptr for a missing button Change-Id: I5cf8fa64d703636a65dc96987688c283016c87e8 Reviewed-on: Tested-by: Jenkins Reviewed-by: Noel Grandin <>
2019-07-29Avoid -fsanitize=float-cast-overflowStephan Bergmann1-39/+68
...when converting sal_Int64 9223372036854775807 (i.e., 0xFFFFFFFFFFFFFFF) to double 9.22337e+18 (i.e., by rounding up to 2^63, represented as 0x43e0000000000000) and then back to sal_Int64 (for which it is now too large). Started to happen during UITest_writer_dialogs: > vcl/source/control/field.cxx:1116:35: runtime error: 9.22337e+18 is outside the range of representable values of type 'long' > #0 in MetricField::ConvertValue(long, unsigned short, MapUnit, FieldUnit) at vcl/source/control/field.cxx:1116:35 > #1 in svx::sidebar::PosSizePropertyPanel::SetPosSizeMinMax() at svx/source/sidebar/possize/PosSizePropertyPanel.cxx:1058:47 > #2 in svx::sidebar::PosSizePropertyPanel::MetricState(SfxItemState, SfxPoolItem const*) at svx/source/sidebar/possize/PosSizePropertyPanel.cxx:893:5 > #3 in svx::sidebar::PosSizePropertyPanel::NotifyItemUpdate(unsigned short, SfxItemState, SfxPoolItem const*, bool) at svx/source/sidebar/possize/PosSizePropertyPanel.cxx:735:13 > #4 in sfx2::sidebar::ControllerItem::StateChanged(unsigned short, SfxItemState, SfxPoolItem const*) at sfx2/source/sidebar/ControllerItem.cxx:67:26 > #5 in SfxStateCache::SetState_Impl(SfxItemState, SfxPoolItem const*, bool) at sfx2/source/control/statcach.cxx:412:24 > #6 in SfxStateCache::SetState(SfxItemState, SfxPoolItem const*, bool) at sfx2/source/control/statcach.cxx:326:5 > #7 in SfxBindings::Update(unsigned short) at sfx2/source/control/bindings.cxx:352:25 > #8 in svx::sidebar::PosSizePropertyPanel::PosSizePropertyPanel(vcl::Window*, com::sun::star::uno::Reference<com::sun::star::frame::XFrame> const&, SfxBindings*, com::sun::star::uno::Reference<com::sun::star::ui::XSidebar> const&) at svx/source/sidebar/possize/PosSizePropertyPanel.cxx:114:17 [...] Change-Id: I23a39181a241129f3c6c83e9934405509bd98292 Reviewed-on: Tested-by: Jenkins Reviewed-by: Stephan Bergmann <>
2019-07-28loplugin:collapseifNoel Grandin2-24/+18
Change-Id: I69bfafa97c66ef944cc6ae35c7e2f66d0430d6a4 Reviewed-on: Tested-by: Jenkins Reviewed-by: Noel Grandin <>
2019-07-28loplugin:oncevarNoel Grandin2-4/+2
Change-Id: I3c014f53607a849c743a2fd1aa47d03d5af978fb Reviewed-on: Tested-by: Jenkins Reviewed-by: Noel Grandin <>
2019-07-28tdf#126559: vcl_pdfexport unit test failureJulien Nabet1-2/+4
Revert back part of 3f7e8ddea89f6340cd18b5b34f5a7c5f503962be Some investigation is needed here Change-Id: I4fc0648bdef0df6cd2cd4b114dd479bc0a722fe6 Reviewed-on: Reviewed-by: Jan-Marek Glogowski <> Reviewed-by: Julien Nabet <> Tested-by: Julien Nabet <>
2019-07-27enable setting a highlight bgCaolán McNamara2-5/+21
(cherry picked from commit 9b618c846835abb1fe664b5951dffb3c133380fe) Change-Id: I44649a9e2b1b267b56c2a5691d23665e7df94a58 Reviewed-on: Tested-by: Jenkins Reviewed-by: Caolán McNamara <> Tested-by: Caolán McNamara <>
2019-07-27factor out setting widget bgCaolán McNamara1-7/+24
Change-Id: I9f958e62df9efb00d5225ec485076fe8edbc2744 (cherry picked from commit e1252cc0bd300bf873325c598a7e5ad940061055) Reviewed-on: Tested-by: Jenkins Reviewed-by: Caolán McNamara <> Tested-by: Caolán McNamara <>
2019-07-27drop empty GetParentLabeledBy and GetParentLabelFor membersCaolán McNamara2-28/+2
Change-Id: I92b36874879f89ef4dc862d61da58edd64867e92 Reviewed-on: Tested-by: Jenkins Reviewed-by: Caolán McNamara <> Tested-by: Caolán McNamara <>
2019-07-27tdf#74702: remove GetOutDevType() from ImplAnimViewChris Sherlock3-23/+17
I have done a spot of refactoring - it turns out that the bits where we save and reset the map mode during background saves should probably be done in Window::SaveBackground(). As Window::SaveBackground() doesn't need the animation size (maSzPix) I have rarrange the parameter order so the Window function can ignore the parameter. OutputDevice::SaveBackground() has been introduced as a virtual function and now is overridden by Window for its own purposes - OutputDevice just does a DrawOutDev(...) operation on the background. Change-Id: Ifeffe9536c01d8e4737f6e39a4f3dd14ba418f4d Reviewed-on: Reviewed-by: Michael Meeks <> Tested-by: Michael Meeks <>
2019-07-27vcl: make ImpAnimView variables more clearChris Sherlock2-46/+46
Change-Id: I58904862974c416cddbd996af7d38ce639f1eb78 Reviewed-on: Tested-by: Jenkins Reviewed-by: Michael Meeks <>
2019-07-26Use the colibre icon theme in Online and appsTor Lillqvist1-0/+5
Change-Id: Idb79b3d4b1f14712f2e03d17fca6bec56f317edf Reviewed-on: Tested-by: Jenkins Reviewed-by: Noel Grandin <>
2019-07-26Extension support for gtkmenuItem and notebookbar.ui file added for writerSumit Chauhan2-29/+76
Change-Id: I65a07fbef7726cdaa9061ebf2227fbedd725d4db Reviewed-on: Tested-by: Jenkins Reviewed-by: Szymon Kłos <>
2019-07-26add some error checking to the UI file loadingNoel Grandin1-32/+42
so we error out early when we have a bug in the file name, or a bug in the id, instead of triggering a SIGSEGV much later on Change-Id: Iacde09df620acdd8ae86321d38e8ce0c99715d42 Reviewed-on: Tested-by: Jenkins Reviewed-by: Noel Grandin <>
2019-07-26LOK: sidebar: release LOKNotifier on destructionAshod Nakashian1-0/+2
And enable sidebar routing only while we have a valid SidebarController instance (i.e. not disposed). Change-Id: I665f934f762c0ce9efdce5489ec9babe006376a8 Reviewed-on: Tested-by: Jenkins Reviewed-by: Noel Grandin <>
2019-07-25Fix typosAndrea Gelmini3-3/+3
Change-Id: I1efccb8b926e4aa10e9ccee7e8e36919e38c05fc Reviewed-on: Tested-by: Jenkins Reviewed-by: Andrea Gelmini <>