summaryrefslogtreecommitdiff
path: root/vcl
AgeCommit message (Collapse)Author
2018-10-31loplugin:useuniqueptr in DeletePrinterQueueInfoNoel Grandin
Change-Id: Ia124a4af642e449dc05f5bae2d5ca766bd67bd68 Reviewed-on: https://gerrit.libreoffice.org/62388 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-10-30qt5 a11y: Implement QAccessibleTextInterface::attributesSamuel Mehrbrodt
Only a few basic attributes for now Change-Id: I1147e4feaf9eac3664142a678e918a65e9a7b2a3 Reviewed-on: https://gerrit.libreoffice.org/62633 Tested-by: Jenkins Reviewed-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>
2018-10-30Qt5 actually return the selectionJan-Marek Glogowski
This broke my Windows build with interesting error messages: Qt5AccessibleWidget.cxx(772): error C2440: "=": "sal_Int32 *" kann nicht in "int *" konvertiert werden Qt5AccessibleWidget.cxx(772): note: Die Typen, auf die verwiesen wird, sind nicht verknuepft; die Konvertierung erfordert einen reinterpret_cast-Operator oder eine Typumwandlung im C- oder Funktionsformat. Same for line 774. So actually return the selection parts depending on the provided int pointers. Change-Id: Iffbe4481883450b9dacefa867ba7035861d62cdf Reviewed-on: https://gerrit.libreoffice.org/62635 Reviewed-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de> Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2018-10-30Move SalGraphics glyph functions into FontInstanceJan-Marek Glogowski
As we already rely on the GlyphItem's font instance, consequently this removes the SalGraphics GlyphItem based functions. Also unifies the glyph bound rect cache handling. An interesting aspect is the rotated glyph bounding box handling moved from CairoTextRender to FreetypeFont. It doesn't look like an implementation detail for Cairo, so it may have been a bug. Change-Id: I81bbb5d8ee98fb77a1eee05568c456f9e4553023 Reviewed-on: https://gerrit.libreoffice.org/62503 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2018-10-30Fix typoAndrea Gelmini
Change-Id: I1d00e975eaf85b5233755abefb952ca1eeacbb4e Reviewed-on: https://gerrit.libreoffice.org/62630 Tested-by: Jenkins Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2018-10-30Fix SalLayoutGlyphs copy constructorJan-Marek Glogowski
Since we can't know the real SalLayoutGlyphsImpl type, we always have to clone and delete it on assignemt and in the copy constructor. Change-Id: I3e3aa1e0271c5ecbb1474a70fae5e63bd7124677 Reviewed-on: https://gerrit.libreoffice.org/62583 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2018-10-30Add comment about AquaSalGraphics::GetResolution() returning a DPI of 96Tor Lillqvist
Change-Id: I3b89cb6c24c263a1a8ea4e249ab24256a7d6f3f7
2018-10-30tdf#119020 always scale icons as 24bit RGBJan-Marek Glogowski
We don't really care for the palette or even lower bitness of the original icons, when scaling them. So just convert them to 24bit to get the best scaling quality. And also actually fail the OpenGL scaling for 8bit color icons, instead of handling them as a grayscale image, which results in "funny" luminance based color icons. Change-Id: I62ff9e7cd45dbffba81b0db5a0252737b6189059 Reviewed-on: https://gerrit.libreoffice.org/62505 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk> Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2018-10-30qt5 a11y: Fix QAccessibleValueInterfaceSamuel Mehrbrodt
Needs to be part of Qt5AccessibleWidget Change-Id: I3543cb3b5834c9967066733f0dbd73e974175892 Reviewed-on: https://gerrit.libreoffice.org/62515 Tested-by: Jenkins Reviewed-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>
2018-10-30qt5 a11y: Implement most of QAccessibleTextInterfaceSamuel Mehrbrodt
Change-Id: I184bad8a6915048d425f8baa56d2e5675d4b97d1 Reviewed-on: https://gerrit.libreoffice.org/62512 Reviewed-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de> Tested-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>
2018-10-30tdf#120982 add font reference to SalLayoutGlyphsImplJan-Marek Glogowski
Now that we store the LogicalFontInstance instead of the fallback level, it's not enough to keep a pointer in the glyphs in SalLayoutGlyphsImpl. We also need a reference to the font, to keep the font instance alive. Change-Id: Idc99cf9259af6be672a97ab2c67dbffd9cf29c70 Reviewed-on: https://gerrit.libreoffice.org/62520 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2018-10-30Hide SalLayoutGlyphs detailsJan-Marek Glogowski
Nobody outside of VCL should deal with GlyphItems. Change-Id: Id84b0f320bc49f790658f23efe129b92262c2aea Reviewed-on: https://gerrit.libreoffice.org/62446 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2018-10-30Rely on the font instance of the glyphJan-Marek Glogowski
The FreetypeFont might already have released the font instance of the glyph, but the glyphs font instance must still be valid, so use this instead to cache glyph bound rect. For whatever reason the Windows compiler doesn't accept inline functions in the GlyphItem struct and wants to export them in the DLL, even when declared VCL_DLLPRIVATE, so this just uses static inlines as a workaround. Change-Id: I4539d91a846a54a05f9648638494e1e99f704b0a Reviewed-on: https://gerrit.libreoffice.org/62425 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2018-10-30m_FeedbackFDs is unused on iOSTor Lillqvist
I wonder why we have that iOS ifdef in SvpSalInstance::Wakeup()? Elsewhere in this file we do compile code that uses those same fields for iOS, too. Change-Id: Ib801ea81fafcf2296181874018c1df2ceef144a1
2018-10-29loplugin:oncevarNoel Grandin
Change-Id: Iba892694acb378887a1d15ab59104c55f591f0bd Reviewed-on: https://gerrit.libreoffice.org/62498 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-10-29tdf#120703 PVS: V547 Expression is always true/falseMike Kaganski
Change-Id: I0516dc68cf7d451eafc044be8e50a66d2bddf15f Reviewed-on: https://gerrit.libreoffice.org/62484 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2018-10-29Resolves: tdf#120988 mismatch of in/out locale formattingCaolán McNamara
Change-Id: I9def43c111adc877aeec9f1990f5dd76fabdbf8f Reviewed-on: https://gerrit.libreoffice.org/62485 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2018-10-28update old 'interface-requires' comments to <requires> tagCaolán McNamara
Change-Id: If7533650ae543f9d43a3a50fdfc137141fa64586 Reviewed-on: https://gerrit.libreoffice.org/62444 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2018-10-28tdf#120703 PVS: V547 Expression is always true/falseMike Kaganski
Change-Id: I2b2ea62ff4ed3e16cd4fa2a5e588d001d21121cb Reviewed-on: https://gerrit.libreoffice.org/62465 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2018-10-27tdf#120703 (PVS): V519 variable is assigned values twice successivelyMike Kaganski
V519 The 'xFontCharMap' variable is assigned values twice successively. Perhaps this is a mistake. Check lines: 1673, 1674. Change-Id: I008c268bd2440e489d4cd50f94b4f04129589448 Reviewed-on: https://gerrit.libreoffice.org/62408 Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com> Tested-by: Mike Kaganski <mike.kaganski@collabora.com>
2018-10-27tdf#120703 (PVS): V519 The variable is assigned values twice successivelyMike Kaganski
Change-Id: I9265425a215609ef6bf4298ba39c8399f215ce27 Reviewed-on: https://gerrit.libreoffice.org/62406 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2018-10-27tdf#120453 Preserve literal '&' in Qt menu textsMichael Weghorn
As described in the QMenuBar documentation, a single ampersand in a menu item text is used to set the shortcut for the menu, while "&&" is used to get a real ampersand character. Change-Id: Idf510641c8919ff8223114413851cb3ee7d7b4a2 Reviewed-on: https://gerrit.libreoffice.org/62405 Tested-by: Jenkins Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2018-10-26tdf#119719: Move the window to the requested screenKatarina Behrens
According to Qt doc, setScreen by itself is ineffective and this additional step is needed. It still wouldn't work w/ dual screen on older KDE Plasma (<= 5.12) but tests positively in GNOME and Plasma 5.13.5 Change-Id: I080b6f93aa3c21411f606ade6df42e9bc3f6f299 Reviewed-on: https://gerrit.libreoffice.org/62351 Reviewed-by: Katarina Behrens <Katarina.Behrens@cib.de> Tested-by: Katarina Behrens <Katarina.Behrens@cib.de>
2018-10-26tdf#42949 Fix IWYU warnings in include/unotools/*Gabor Kelemen
Found with bin/find-unneeded-includes Only removal proposals are dealt with here. Change-Id: I444c43b9d549977039f25bec2b5bf666c3e15e0e Reviewed-on: https://gerrit.libreoffice.org/62041 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
2018-10-26Towards solving tdf#120747: Remember the preview file of personaMuhammet Kara
Change-Id: I9230421a98ea5d1ec61bf1500b24949635db68d3 Reviewed-on: https://gerrit.libreoffice.org/62387 Tested-by: Jenkins Reviewed-by: Muhammet Kara <muhammet.kara@pardus.org.tr>
2018-10-26loplugin:singlevalfields improvementNoel Grandin
look for any kind of types, not just POD types, helps to find smart pointer fields that are only assigned nullptr Change-Id: I2d887e98db012f03b646e1023985bcc196285abc Reviewed-on: https://gerrit.libreoffice.org/62382 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-10-26tdf#120907 Arrow keys don't work in palette listMaxim Monastirsky
For a docking window which reparented to a floating window via DockingManager, Window::GetParent() won't find the floating window, because WindowImpl::mpRealParent points to the previous parent (e.g. the toolbar). What we need is to check WindowImpl::mpParent instead. Change-Id: Ibdc5e29b7b8db37f9cbea65b3d7fbe39de334319 Reviewed-on: https://gerrit.libreoffice.org/62361 Tested-by: Jenkins Reviewed-by: Maxim Monastirsky <momonasmon@gmail.com>
2018-10-25Qt5 fix Windows -Werror buildJan-Marek Glogowski
Change-Id: I8e58f9132c382885aa4cc85cf3e0a5277ec71623 Reviewed-on: https://gerrit.libreoffice.org/62368 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2018-10-25Change GlyphItem::nFallbackLevel to font instanceJan-Marek Glogowski
No need for a real reference, as GlyphItems are bound to their GenericSalLayout, which holds the valid reference and doesn't allow font change. Change-Id: I8e1129ef99f576e43d55f39aee040ceeb635d51d Reviewed-on: https://gerrit.libreoffice.org/62359 Reviewed-by: Khaled Hosny <khaledhosny@eglug.org> Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2018-10-25Return bool from InitFont and try to init the fontJan-Marek Glogowski
InitFont() is always called after ImplNewFont(). Calling InitFont() without a call to ImplNewFont() doesn't make much sense. There are some places which don't need to set the SalGraphics font, but these are fine with calling ImplNewFont() as is. It now looks like Printer' and OutputDevice' InitFont() do the same, after commit c766a05ae035 ("Antialias drawing is part of the font selection") moved Antialias handling into the common ImplNewFont() function. Change-Id: I77b9a5b6dbed186a2b0868537930d6bf3fccd9d5 Reviewed-on: https://gerrit.libreoffice.org/62202 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2018-10-25Move GlyphItem into its own headerJan-Marek Glogowski
Actually GlyphItem should be VCL internal, but this requires a transparent SalLayoutGlyphs (i.e. via pImpl), which I'm too lazy to implement currently. This seperation makes the affected source files more obvious and later migration of vcl/glyphitem.hxx easier. While at it apply the coding style and add '_' to member prefix. Change-Id: I61497af5c628c40f51597ce0ef286c47321acbc2 Reviewed-on: https://gerrit.libreoffice.org/62358 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2018-10-25Need <o3tl/make_unique.hxx>Tor Lillqvist
Change-Id: I416523b701f6468bcbbc47e9e4e507c319b6beaa
2018-10-25Remembering window position regressed a littleKatarina Behrens
since commit 8d791a9d9657f6573ce27947c0289b36c6eba77c (Set Qt5Widget to be a central widget of QMainWindow) Change-Id: Ifd23043312a92b260871630862f1b949851a6d89 Reviewed-on: https://gerrit.libreoffice.org/62348 Tested-by: Jenkins Reviewed-by: Katarina Behrens <Katarina.Behrens@cib.de>
2018-10-25Drop duplicate PhysicalFontFace referenceJan-Marek Glogowski
A LogicalFontInstance has a pointer to its parent font face. And don't pretend we can actually nest MultiSalLayout, so store the GenericSalLayout internally. Change-Id: I801acbc34497fc57e8e185eee34c1a1162dbea93 Reviewed-on: https://gerrit.libreoffice.org/62314 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2018-10-25weld SwTOXStylesTabPageCaolán McNamara
Change-Id: I1e7056ef8293ddc7072e95ee248e45b2785d1234 Reviewed-on: https://gerrit.libreoffice.org/62347 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2018-10-25tdf#119856 related: opening kde5 filepicker from extensions now possibleKatarina Behrens
certain things have to be done exclusively in main thread Change-Id: Ib9f5a3187080cd986977e323a38a1e6c2ed57366 Reviewed-on: https://gerrit.libreoffice.org/62281 Reviewed-by: Katarina Behrens <Katarina.Behrens@cib.de> Tested-by: Katarina Behrens <Katarina.Behrens@cib.de>
2018-10-25loplugin:unusedmethodsNoel Grandin
Change-Id: I1f9ac5f8a090f365d9a21486029e1c13d721a4a4 Reviewed-on: https://gerrit.libreoffice.org/62338 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-10-24tdf#120764 Toolbar popups sometimes not showing under WaylandMaxim Monastirsky
This happens with gtk 3.24 if the toolbar button is clicked when the tooltip of that button is visible. The warning gtk emits is "Tried to map a popup with a non-top most parent". The solution is to hide the tooltip early on mouse button press event processing. (gtk does hiding too, but in a way which isn't useful here - see the code comment. We also have similar code for the non-native case in ImplHandleMouseEvent of winproc.cxx.) Note that it's likely a gtk bug, as this new tooltip behavior breaks some native cases too, e.g. combo boxes with tooltips. But we can't leave our toolbars broken until this is fixed upstream. Change-Id: I1ce8bffcd78a3bcbbfe2ffdd1bd006ae5dc79618 Reviewed-on: https://gerrit.libreoffice.org/62207 Tested-by: Jenkins Reviewed-by: Maxim Monastirsky <momonasmon@gmail.com>
2018-10-24remove more rtl::OUString and OString prefixesNoel Grandin
which seem to have snuck back in since the great rounds of removals. Change-Id: I85f7f5f4801c0b48dae8b50f51f83595b286d6a1 Reviewed-on: https://gerrit.libreoffice.org/62229 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-10-24Introduce OutputDevice type OUTDEV_PDFJan-Marek Glogowski
Originally I thought mpPDFWriter can be used to create PDF from any OutputDevice, but it's actually just set for the internal VirtualDevice of the PDF writer. So this gets rid of all the special mpPDFWriter and GetPDFWriter() handling and replaces it with checks for OUTDEV_PDF. But since ImplPDFWriter used to be a OUTDEV_VIRDEV, this also introduces OutputDevice::IsVirtual(), which now replaces most of the direct OUTDEV_VIRDEV checks. Change-Id: I11824143b6b8833ecc81119762448cbdf1145dbc Reviewed-on: https://gerrit.libreoffice.org/62257 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2018-10-24tdf#120807 check for valid ImplGetWindowImpl()Jan-Marek Glogowski
Change-Id: Ia1135d11990abc303849bd1b6a549c82008c79de Reviewed-on: https://gerrit.libreoffice.org/62260 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2018-10-24Change PDFWriterImpl into an OutputDeviceJan-Marek Glogowski
It actually changes it into a VirtualDevice and should just be a refactoring. We get rid of the crude stuff in a follow up patch, While at it unfriend PDFWriterImpl from OutputDevice. Change-Id: Id43731ad076690292c30f9f3e05ff0dd58edc5e5 Reviewed-on: https://gerrit.libreoffice.org/62201 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2018-10-24tdf#120450: Radiobuttons want to be checked tooKatarina Behrens
Change-Id: If9b67bf866ed9fe38f69d440deeb2eccb87301bc Reviewed-on: https://gerrit.libreoffice.org/62237 Tested-by: Jenkins Reviewed-by: Katarina Behrens <Katarina.Behrens@cib.de>
2018-10-24clang-tidy performance-unnecessary-copy-init in test..xmlscriptNoel Grandin
Change-Id: I1ae16467a8e58e8a50f59b7a140e9f8b68bde07e Reviewed-on: https://gerrit.libreoffice.org/62254 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-10-23Constify VirtDevice::me(Alpha)?FormatJan-Marek Glogowski
Change-Id: I619c19837c3bb6124009787ba0fc53991b4c4d0b Reviewed-on: https://gerrit.libreoffice.org/62256 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2018-10-23Constify OutputDevice::meOutDevTypeJan-Marek Glogowski
Change-Id: Idfa57c545704626a8b8b7405cd32c49666a04746 Reviewed-on: https://gerrit.libreoffice.org/62255 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2018-10-23tdf#120449: Show keyboard shortcuts in native menusKatarina Behrens
Who would have thought that this information has to be stored in SalFrame Change-Id: I8fbdf1794184e8dfd0b0025d29a19938dbb2af03 Reviewed-on: https://gerrit.libreoffice.org/62236 Tested-by: Jenkins Reviewed-by: Katarina Behrens <Katarina.Behrens@cib.de>
2018-10-23remove all use_action_appearance linesCaolán McNamara
Change-Id: I031676e939f53a28b1a62654ffe0a91b95dea029 Reviewed-on: https://gerrit.libreoffice.org/62234 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2018-10-23tdf#120803: avoid crash if no valid vcl::WindowKatarina Behrens
when called from the destructor it is no longer alive Change-Id: Ia68272253f9c459b2647a0bd389e833fb0b519e3 Reviewed-on: https://gerrit.libreoffice.org/62228 Tested-by: Jenkins Reviewed-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>
2018-10-23weld SpecialSettingsPage and GeneratedValuesPageCaolán McNamara
Change-Id: I3b4c2a4d553032128efe25c008df30d6f1f77628 Reviewed-on: https://gerrit.libreoffice.org/61018 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>