summaryrefslogtreecommitdiffstats
path: root/vcl
Commit message (Collapse)AuthorAgeFilesLines
* Revert "Werror: C4324 structure was padded due to __declspec(align())"Michael Stahl2015-02-101-1/+1
| | | | | | | This reverts commit 9150bb0b3ea3f32e867aad478ef82a74fe0726ce. It causes CppunitTest_vcl_filters_test to segfault in longjmp() on Linux.
* Werror: C4324 structure was padded due to __declspec(align())David Ostrovsky2015-02-101-1/+1
| | | | | | | Change-Id: I5a065f9e875640bda2cab67733a5e2684f63d000 Reviewed-on: https://gerrit.libreoffice.org/14391 Tested-by: Michael Stahl <mstahl@redhat.com> Reviewed-by: Michael Stahl <mstahl@redhat.com>
* coverity#1267630 Logically dead codeCaolán McNamara2015-02-101-1/+0
| | | | Change-Id: Idf857f5681766923675bdc210c02a796e0f58024
* coverity#1267683: vcl: try to suppress a silly oneMichael Stahl2015-02-101-0/+1
| | | | Change-Id: Idcd0cc761121dd356e307003441f56c239efd4f1
* EMF clip regions should be ignored sometimes.Eilidh McAdam2015-02-094-13/+29
| | | | | | | | | | | | | | | | | Specifically, the record EMR_EXTSELECTCLIPRGN specifies the default clip region if the RegionMode field is set to RGN_COPY. See EMF specification section 2.3.2.2 available from http://msdn.microsoft.com/en-us/library/cc230624.aspx A unit test had to be changed for this - instead of checking for a specific clip region, it now checks that no clip region is specified. This is under the assumption that the default clip region for our device context is "show everything" - i.e. no clip. Note also that RGN_COPY seems to be a common mode value for this record type. Change-Id: I7bd4fe305dda184d121465005fe09d3c113e3063
* coverity#1267681 Dereference before null checkCaolán McNamara2015-02-081-2/+2
| | | | Change-Id: I629b12d53ef3bbadeb43e9555a8499252c1a1800
* loplugin:deletedspecial (Mac OS X)Stephan Bergmann2015-02-073-20/+11
| | | | Change-Id: Ia09e2e7b3e40bd04da64b52fe29258017b90b156
* loplugin:deletedspecialStephan Bergmann2015-02-0713-46/+33
| | | | Change-Id: I9ea64443350ed2e1341b99270fa8b29189f07eb2
* tdf#88836: UI: in-form navigation bar icons goneZolnai Tamás2015-02-071-2/+2
| | | | | | | | | Regression from: 6419c745e5e9802da264250d5e131fb9a3b6e4de Revert it and use IsEmpty() instead of operator!(). Change-Id: Icc4f5dbba848a1d4ef807e598f0aa3b940459c82
* Fixup --without-x buildRiccardo Magliocchetti2015-02-075-22/+30
| | | | | | | | | | | Accept gl linkage in hope of future offscreen mesa support. Avoid linking with GLX though. Change-Id: I4e666f60e74fe34075a8da9eeba95807cf8fe38c Signed-off-by: Riccardo Magliocchetti <riccardo.magliocchetti@gmail.com> Reviewed-on: https://gerrit.libreoffice.org/13452 Reviewed-by: Michael Stahl <mstahl@redhat.com> Tested-by: Michael Stahl <mstahl@redhat.com>
* fix mac buildCaolán McNamara2015-02-061-1/+1
| | | | Change-Id: Ic98ada6d0bca124194cea24a1ed30d30a1c0a85e
* shared_ptr<T>(new T(args)) -> make_shared<T>(args)Caolán McNamara2015-02-0617-724/+709
| | | | | | and boost:make_shared->std::make_shared Change-Id: Ic1e187c52c856a7b27817967b2caa8920f23a98d
* Resolves tdf#89129: crash when defining a specific relationshipJulien Nabet2015-02-051-5/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Returns early if comparison matches so you can reduce iterator scope and avoid last test for logging. /usr/include/c++/4.9/debug/safe_iterator.h:168:error: attempt to copy- construct an iterator from a singular iterator. Objects involved in the operation: iterator "this" @ 0x0x7fffffff3a30 { type = N11__gnu_debug14_Safe_iteratorIN9__gnu_cxx17__normal_iteratorIPPvNSt9__cxx19986vectorIS3_SaIS3_EEEEENSt7__debug6vectorIS3_S7_EEEE (mutable iterator); state = past-the-end; references sequence with type `NSt7__debug6vectorIPvSaIS1_EEE' @ 0x0x7fffffff4088 } iterator "other" @ 0x0x7fffffff3a90 { type = N11__gnu_debug14_Safe_iteratorIN9__gnu_cxx17__normal_iteratorIPPvNSt9__cxx19986vectorIS3_SaIS3_EEEEENSt7__debug6vectorIS3_S7_EEEE (mutable iterator); state = singular; references sequence with type `NSt7__debug6vectorIPvSaIS1_EEE' @ 0x0x7fffffff4088 } 4 0x00002aaab193d6e9 in boost::void_ptr_iterator<__gnu_debug::_Safe_iterator<__gnu_cxx::__normal_iterator<void**, std::__cxx1998::vector<void*, std::allocator<void*> > >, std::__debug::vector<void*, std::allocator<void*> > >, ImplBtnDlgItem>::base (this=0x7fffffff3a90) at /home/julien/compile-libreoffice/libreoffice/workdir/UnpackedTarball/boost/boost/ptr_container/detail/void_ptr_iterator.hpp:121 5 0x00002aaab193d269 in boost::operator==<__gnu_debug::_Safe_iterator<__gnu_cxx::__normal_iterator<void**, std::__cxx1998::vector<void*, std::allocator<void*> > >, std::__debug::vector<void*, std::allocator<void*> > >, ImplBtnDlgItem, __gnu_debug::_Safe_iterator<__gnu_cxx::__normal_iterator<void**, std::__cxx1998::vector<void*, std::allocator<void*> > >, std::__debug::vector<void*, std::allocator<void*> > >, ImplBtnDlgItem> (l=..., r=...) at /home/julien/compile-libreoffice/libreoffice/workdir/UnpackedTarball/boost/boost/ptr_container/detail/void_ptr_iterator.hpp:179 6 0x00002aaab193c2ca in ButtonDialog::RemoveButton (this=0x7fffffff3d90, nId=1) at /home/julien/compile-libreoffice/libreoffice/vcl/source/window/btndlg.cxx:340 7 0x00002aaad8ed109b in dbaui::ORelationTableView::lookForUiActivities (this=0x317ef30) at /home/julien/compile-libreoffice/libreoffice/dbaccess/source/ui/relationdesign/RelationTableView.cxx:342 Change-Id: Ied45c222c94d2a362075a3b1550b6092aad77c62 Reviewed-on: https://gerrit.libreoffice.org/14325 Reviewed-by: Lionel Elie Mamane <lionel@mamane.lu> Tested-by: Lionel Elie Mamane <lionel@mamane.lu>
* convert all remaining BOOST_STATIC_ASSERT to static_assertCaolán McNamara2015-02-053-8/+2
| | | | | | and we can include a few less headers Change-Id: Id742849ff4c1c37a2b861aa3d6ab823f00ea87f8
* Remove uses of deprecated salhelper/refobj.hxxStephan Bergmann2015-02-051-2/+0
| | | | Change-Id: Ibf4a2ed99024568b2d370b22919e3a25c43c6fbf
* -Werror,-Wformat-securityStephan Bergmann2015-02-051-1/+1
| | | | Change-Id: I62ff8a172a9c4f361ef5fcb6d60bd9fd2e959c2d
* tdf#84102: Expose XAccessibleExtendedAttributes through ATKJacobo Aragunde Pérez2015-02-053-0/+66
| | | | | | | Those attributes contain a lot of interesting properties, among them the heading level which fixes this bug. Change-Id: I634ef404123cb1b2831563b9b186db4b7e9e7d8b
* Updated all precompiled headers.Ashod Nakashian2015-02-051-1/+4
| | | | | | | | Change-Id: I955c8ac4dbe002d23531df7eb10fb4444d6b5157 Reviewed-on: https://gerrit.libreoffice.org/14292 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
* callcatcher: update unused codeCaolán McNamara2015-02-054-30/+0
| | | | Change-Id: I540d192a361938cd4dca811e7170d762841662ee
* fix leak from framework::AddonMenuManager::BuildMenuCaolán McNamara2015-02-043-4/+14
| | | | | | provide a callback when a menu item gets deleted Change-Id: I5b5f1a181fb10f53f6b1fe7b5637d385e1517530
* discard excessive (X11) autorepeat keyboard events if they overload LOLuboš Luňák2015-02-042-28/+61
| | | | | | | | | | | If e.g. a document is slow to redraw, scrolling it by holding down a key such as PageDown can make LO lag behind and continue processing the queued up input events even (long) after the key has been released. Since with autorepeat keyboard events the normal user expectations are to hold it until something happens and the exact number of the events doesn't matter, simply discard excessive autorepeat keyboard events if LO can't keep up with them. Change-Id: I45acdc9aa5033647fb80760991437dddfcb6591c
* compress (X11) mouse wheel eventsLuboš Luňák2015-02-041-2/+57
| | | | | | | | | | There is one event per wheel step, so wheeling more can create a number of wheel events, and LO processed those one by one. If processing one took long (e.g. the repaint was complicated), the scrolling visibly lagged. This commit works only for X11 VCL backend (and by extension, KDE3/4 backends). Change-Id: I5eff7446da16167ec75925e75243314c68bc81a4
* make idle timers actually activate only when idleLuboš Luňák2015-02-0417-20/+67
| | | | | | | | | | | | | | | Without this, they can activate after any call to the event processing, so they may activate in cases such as when updating progressbar while loading a document, or on repeated user input (so things like showing spellchecking get updated when the app is busy redrawing). This change makes idle timers activate only when there's nothing more for the event loop to process. It's a bit of a question if this doesn't break something that happens to expect idle timers to be not-really-idle timers, but oh well. No change for non-X11 platforms, as there's I don't know how to check the event queues. Change-Id: I074a88f2f5eeb4b456a11916a0ec2ad6f54dfbab
* coverity#708576 Uninitialized scalar fieldCaolán McNamara2015-02-041-0/+1
| | | | Change-Id: I8810389998fdcf43c55db7e6cd1acd8600e91e2b
* coverity#982431 Division or modulo by float zeroCaolán McNamara2015-02-041-0/+5
| | | | Change-Id: Icb43cae170b8ca5dc3ef3379136d265869eb978e
* coverity#1268022 Logically dead codeCaolán McNamara2015-02-041-1/+1
| | | | Change-Id: I49a058915f0fd7caaa3793e70784a30efcac15d3
* coverity#1268025 Uninitialized scalar fieldCaolán McNamara2015-02-041-0/+1
| | | | Change-Id: I36b72abc7021aa9a0f64f4a2ac71a7eedd75f6ec
* coverity#1268025 mnOrigHeight and mnNewHeight is unused nowCaolán McNamara2015-02-042-5/+2
| | | | Change-Id: I242a332adf9961881599ba048f8f63b2711e8b4d
* GlyphCachePeer::mnBytesUsed is always zeroStephan Bergmann2015-02-032-8/+3
| | | | | | | | ...at least since 1c064d1460fbf84a2fc6c2cdc7824937735a4312 "I don't see that any of this makes sense anymore" removed the last uses of it from X11GlyphPeer::RemovingGlyph. Change-Id: Ic8c879ac6023a1e796da220dd61dc33750aaad60
* valgrind: glXChooseVisual says to use XFree to free its returned dataCaolán McNamara2015-02-031-0/+1
| | | | Change-Id: I4949b9daaae183efcbab21dafca0c84838c2c6d0
* WaE: variable 'kind' set but not usedTor Lillqvist2015-02-031-25/+0
| | | | Change-Id: I5078e0e4df18d0aece3240dc537504c11cd623de
* Initialize graphics in OutputDevice::getFallbackFont.Ashod Nakashian2015-02-031-0/+5
| | | | | | | | | | OutputDevice::getFallbackFont requires mpGraphics to be created/initialized. Without the check and initialization OutputDevice::getFallbackFont will segfault. Change-Id: I18225a24a6767933c8f1ff8f1cfd392543a95132 Reviewed-on: https://gerrit.libreoffice.org/14287 Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
* Fix for unaddressable access reading TT font data.Ashod Nakashian2015-02-031-1/+0
| | | | | | | | | | | | | | | | | | | | | | | As part of commit 'fdo#82259 we don't actually care about the ttf version here' the font data table pointer was incremented presumably to skip the version number. This results in reading past the end of the array, confirmed by DrMemory. There is no need in changing the pointer as the parsing is done using absolute offsets. Furthermore, by moving the pointer, the parser reads incorrect fields (everything shifted 4 bytes). However, moving the pointer had the desired side-effect (at least on Windows) that the hints on the right side of most of the fonts were gone for most cases (the purpose of fdo#82259). It seems that this was accidental and not the proper fix to that issue. This patch does make most of the hints show up again on win, and I don't have a mac to verify if the fonts with the nonsensical hint texts still suffer the issue in fdo#82259. Change-Id: Idf3bfa292fa063fa05e0ff62920a6bdfa4c94647 Reviewed-on: https://gerrit.libreoffice.org/14281 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
* Don't call touch_ui_*() API that are no-ops anywayTor Lillqvist2015-02-031-20/+4
| | | | | | | | | Theiry implementations were empty both for iOS (well, TiledLibreOffice, our iOS test viewer app, anyway) and Android. Part of work to make TiledLibreOffice use LibreOffieKit instead of <touch/touch.h> and the older Writer-specific tiled rendering API. Change-Id: I602a1ebd58ec2c8d6b2d170d65e157d91e0bf521
* vcl: Remove commented-out codeAdolfo Jayme Barrientos2015-02-031-37/+0
| | | | | | | Change-Id: I4bd2cf8a920c119d508e3316107fa2a616472ba2 Reviewed-on: https://gerrit.libreoffice.org/14259 Reviewed-by: Noel Grandin <noelgrandin@gmail.com> Tested-by: Noel Grandin <noelgrandin@gmail.com>
* crash on toggling "empty" menu in basic's language toolbarCaolán McNamara2015-02-021-8/+18
| | | | | | | | | | | | | tools->macros->organize->basic->edit drag language toolbar to undock, click down arrow in pseudo-title bar to get "no selection possible" entry. click down arrow again to dismiss it. get debug stl iterator error the mpSalMenu goes out of sync with its owner Change-Id: If82aac004e623787389dd415c2006b99778f710d
* don't need this caseCaolán McNamara2015-02-021-2/+1
| | | | Change-Id: Ib4445031b62248207e3eee257e2b71c446aa5b9d
* coverity#1244944 Untrusted value as argumentCaolán McNamara2015-02-021-2/+12
| | | | Change-Id: If50a20e9fbb0bf55488b3ccc8ea28f2a54aa62e0
* coverity#1242704 Untrusted loop boundCaolán McNamara2015-02-021-0/+13
| | | | Change-Id: I88c8ff03361aa83b23c811b5d693864360f31f7f
* coverity#736943 Untrusted loop boundCaolán McNamara2015-02-021-1/+1
| | | | Change-Id: I18a19770f7bb328b889b8da1fb73d20bc1ca9064
* vcl: add SAL_OVERRIDE attributes to Windows-specific classesNoel Grandin2015-02-0212-225/+225
| | | | | | | | | | | | and fix a bug where SalObject::Enabled(bool) should be virtual, introduced by my commit b44cbb26efe1d0b0950b1e1613e131b506dc3876 "new loplugin: change virtual methods to non-virtual" Change-Id: I08cdddb36eed887ea7bd01f6260fa5fd89d12429 Reviewed-on: https://gerrit.libreoffice.org/14273 Reviewed-by: Noel Grandin <noelgrandin@gmail.com> Tested-by: Noel Grandin <noelgrandin@gmail.com>
* coverity#1267676 Identical code for different branchesCaolán McNamara2015-02-011-2/+0
| | | | Change-Id: Ia7abc084acb0f9e8a25e93fa86bf254eee7cda21
* help coverity out wrt coverity#1267682 String not null terminatedCaolán McNamara2015-02-011-1/+1
| | | | Change-Id: Ib72c0daf8573314d601d7acea3a1fbb3183b4bb6
* coverity#1267670 Division or modulo by float zeroCaolán McNamara2015-01-311-7/+5
| | | | | | | | and coverity#1267699 Division or modulo by float zero Change-Id: If31037712208673438155b30369ebe1068387cba
* chisel off some more unused codeCaolán McNamara2015-01-301-4/+0
| | | | Change-Id: I62cafc8e10e9c9dab3fde1785b826ba8ff68569f
* fix buildMarkus Mohrhard2015-01-301-2/+0
| | | | Change-Id: I8cea0324a6bee716dd352e5a21f5e5444872760b
* vcl: add GenericSalLayout::GetTextRect()Chris Sherlock2015-01-303-2/+48
| | | | | | | | | | I have extended GlyphItem to also record the original and new height, along with the y offset. Change-Id: I1e9646a8f0d844951d5533d035d9a16dbc8e257c Reviewed-on: https://gerrit.libreoffice.org/14216 Reviewed-by: Chris Sherlock <chris.sherlock79@gmail.com> Tested-by: Chris Sherlock <chris.sherlock79@gmail.com>
* vcldemo: more text changesChris Sherlock2015-01-301-20/+64
| | | | | | | | | | | | | | | | | Changes: + Move the rotated text down the screen to show more of it. + Only one colour (black) + Only one line of text now + smaller font size + fixed issue caused by not resetting clipping area at the right time Note that the old changes can be brought back easily by changing a hardcoded variable in the source. Change-Id: I5b0688af0f344f89cd252d43b1b8964b0c456bef Reviewed-on: https://gerrit.libreoffice.org/14247 Reviewed-by: Chris Sherlock <chris.sherlock79@gmail.com> Tested-by: Chris Sherlock <chris.sherlock79@gmail.com>
* vcl: OpenGL code for adding preambles to glsl fragments now handles #versionChris Sherlock2015-01-301-2/+31
| | | | | | | | | | If you include the #version directive then it must be on the first non-comment line in a glsl fragment. This is now handled. Change-Id: I7e938c27b24d20f25e656667a122d7a341f51611 Reviewed-on: https://gerrit.libreoffice.org/14246 Reviewed-by: Chris Sherlock <chris.sherlock79@gmail.com> Tested-by: Chris Sherlock <chris.sherlock79@gmail.com>
* callcatcher: large newly detected unused methods post de-virtualizationCaolán McNamara2015-01-293-29/+0
| | | | | | | | | | | | | | | | | | i.e lots now able to be detected after... commit b44cbb26efe1d0b0950b1e1613e131b506dc3876 Author: Noel Grandin <noel@peralex.com> Date: Tue Jan 20 12:38:10 2015 +0200 new loplugin: change virtual methods to non-virtual Where we can prove that the virtual method is never overriden. In the case of pure-virtual methods, we remove the method entirely. Sometimes this leads to entire methods and fields being eliminated. Change-Id: I605e2fa56f7186c3d3a764f3cd30f5cf7f881f9d