summaryrefslogtreecommitdiff
path: root/vcl
AgeCommit message (Collapse)Author
2016-04-18clang-tidy performance-unnecessary-copy-initializationNoel Grandin
probably not much performance benefit, but it sure is good at identifying leftover intermediate variables from previous refactorings. Change-Id: I3ce16fe496ac2733c1cb0a35f74c0fc9193cc657 Reviewed-on: https://gerrit.libreoffice.org/24026 Reviewed-by: Noel Grandin <noelgrandin@gmail.com> Tested-by: Noel Grandin <noelgrandin@gmail.com>
2016-04-18clean-up: unused using declarations and includesJochen Nitschke
Searched source for using declarations. Checked if those symbols reappear in the source file, even in comments or dead code but not in #include statements. If they don't reappear, remove the declaration. Remove includes whose symbol got removed. Change-Id: Ibb77163f63c1120070e9518e3dc0a78c6c59fab0 Reviewed-on: https://gerrit.libreoffice.org/24148 Reviewed-by: Jochen Nitschke <j.nitschke+logerrit@ok.de> Reviewed-by: Noel Grandin <noelgrandin@gmail.com> Tested-by: Noel Grandin <noelgrandin@gmail.com>
2016-04-15loplugin:defaultparamsStephan Bergmann
Change-Id: Ie1ae7247ddbdb6cd2390e173ba91b269e7be1195
2016-04-15tdf#95845 Use CommandInfoProvider in formsSamuel Mehrbrodt
Change-Id: I697f8c442cc4db7b38601c32fb71e0201f145354 Reviewed-on: https://gerrit.libreoffice.org/24106 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>
2016-04-15vcl: replace boost::bind with C++11 lambdasMichael Stahl
Change-Id: I275674edf4fc16fdf7aa1155ae488d96ecc4d643
2016-04-14-Werror=logical-op (GCC 6)Stephan Bergmann
...where NoSymbol is apparently defined as zero in X11/X.h (though the X11 docs at <http://www.x.org/releases/X11R7.7/doc/libX11/libX11/libX11.html> are silent about that), even though XKeysymToKeycode is specified to return zero, not NoSymbol, if "the specified KeySym is not defined" (<http://www.x.org/releases/ 11R7.7/doc/libX11/libX11/libX11.html#id2813072>); lets assume NoSymbol /is/ zero, and static_assert that assumption Change-Id: Ib3db59373fb084fcd936e0c7be1b76be994e261f
2016-04-14tdf#40863 only use polygons with area for WinClipRegionsArmin Le Grand
Due to a former fix CustomShapes have extra polygons with a single point in the top-left and bottom-right corner of their BoundRect, a workaround to allow getting their correct BoundRect in slideshow. Unfortunately this makes the win command CreatePolyPolygonRgn fail to create the needed ClipRegions so that the geometry is processed without clipping. Changed to only use polygons as input that have an area. Change-Id: I0eeda5776402777ed00de92f42a55f206575f58b Reviewed-on: https://gerrit.libreoffice.org/24059 Reviewed-by: Noel Grandin <noelgrandin@gmail.com> Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Armin Le Grand <Armin.Le.Grand@cib.de>
2016-04-14Avoid null ToolBox::mpData deref during Frame::closeStephan Bergmann
Oh my, whatever the true cause for this SEGV in JunitTest_framework_complex (but probably the same cause as in previous 7f863e890640d0924a6e6f85cf99447dcd7836f7 "Avoid null ToolBox::mpData deref during Frame::close"), <http://ci.libreoffice.org/job/lo_tb_master_linux_dbg/6652/console>, processing an incoming URP request > ToolBox::SetDropdownClickHdl(Link<ToolBox*, void> const&) at vcl/source/window/toolbox2.cxx:1735 > framework::ToolBarManager::Destroy() at framework/source/uielement/toolbarmanager.cxx:232 > framework::ToolBarManager::dispose() at framework/source/uielement/toolbarmanager.cxx:473 > framework::ToolBarWrapper::dispose() at framework/source/uielement/toolbarwrapper.cxx:106 > framework::ToolbarLayoutManager::destroyToolbars() at framework/source/layoutmanager/toolbarlayoutmanager.cxx:654 > framework::ToolbarLayoutManager::reset() at framework/source/layoutmanager/toolbarlayoutmanager.cxx:363 > framework::LayoutManager::implts_reset(bool) at framework/source/layoutmanager/layoutmanager.cxx:413 > framework::LayoutManager::frameAction(com::sun::star::frame::FrameActionEvent const&) at framework/source/layoutmanager/layoutmanager.cxx:2816 > (anonymous namespace)::Frame::implts_sendFrameActionEvent(com::sun::star::frame::FrameAction const&) at framework/source/services/frame.cxx:2953 > (anonymous namespace)::Frame::setComponent(com::sun::star::uno::Reference<com::sun::star::awt::XWindow> const&, com::sun::star::uno::Reference<com::sun::star::frame::XController> const&) at framework/source/services/frame.cxx:1449 > (anonymous namespace)::Frame::close(sal_Bool) at framework/source/services/frame.cxx:1689 > framework::Desktop::impl_closeFrames(bool) at framework/source/services/desktop.cxx:1674 > framework::Desktop::terminate() at framework/source/services/desktop.cxx:238 and the main thread idling in Application::Yield. (ToolBox::SetDropdownClickHdl happens to be the only one among the pToolBar->Set*Hdl(...) functions called en bloc in ToolBarManager::Destroy that dereferences mpData.) Change-Id: I2c54f5deb5e132b25e577d4092d65e2069affb3e
2016-04-14Unit test hook for online / fonts.Michael Meeks
Change-Id: I2ae50c826f7fc66367a379447ab3b99cd1f29b4d Reviewed-on: https://gerrit.libreoffice.org/24077 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Michael Meeks <michael.meeks@collabora.com>
2016-04-14loplugin:passstuffbyref in vclNoel Grandin
Change-Id: I17a4dc73c3fc81b0bfebdf442021af65f8f6166c Reviewed-on: https://gerrit.libreoffice.org/24075 Reviewed-by: Noel Grandin <noelgrandin@gmail.com> Tested-by: Noel Grandin <noelgrandin@gmail.com>
2016-04-14remove dead fields from WinSalSystem::DisplayMonitorNoel Grandin
Change-Id: I76254f194ac1bbd019b8c46f3f3f0f28e4e7f0ec Reviewed-on: https://gerrit.libreoffice.org/24074 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2016-04-14use atan2 from std instead of glmTomaž Vajngerl
Some system glm libs don't (yet) have atan2 available and it is not really needed in this case anyway (as we don't use it for glm::vec2 for example) so just replace it with std::atan2. Change-Id: I5d417338ec167489f0252821650c64be454cca8a
2016-04-14tdf#99244 opengl: miter limit for poly linesTomaž Vajngerl
Change-Id: I1c363a8f1d21bbacab0c5785544aa8becfe39363
2016-04-13vcl: fix valgrind warning in g_lo_action_group_query_actionMichael Stahl
Change-Id: I0755254d4d6d24689d4f5b39c3a6c9a29ae53b99
2016-04-13Avoid null ToolBox::mpData deref during Frame::closeStephan Bergmann
Oh my, whatever the true cause for this SEGV in JunitTest_framework_complex, <http://ci.libreoffice.org/job/lo_tb_master_linux_dbg/6628/console>, processing an incoming URP request > ToolBox::GetMenu() const at vcl/source/window/toolbox2.cxx:1775 > framework::ToolBarManager::ImplClearPopupMenu(ToolBox*) at framework/source/uielement/toolbarmanager.cxx:1309 > framework::ToolBarManager::dispose() at framework/source/uielement/toolbarmanager.cxx:470 > framework::ToolBarWrapper::dispose() at framework/source/uielement/toolbarwrapper.cxx:106 > framework::ToolbarLayoutManager::destroyToolbars() at framework/source/layoutmanager/toolbarlayoutmanager.cxx:654 > framework::ToolbarLayoutManager::reset() at framework/source/layoutmanager/toolbarlayoutmanager.cxx:363 > framework::LayoutManager::implts_reset(bool) at framework/source/layoutmanager/layoutmanager.cxx:413 > framework::LayoutManager::frameAction(com::sun::star::frame::FrameActionEvent const&) at framework/source/layoutmanager/layoutmanager.cxx:2804 > (anonymous namespace)::Frame::implts_sendFrameActionEvent(com::sun::star::frame::FrameAction const&) at framework/source/services/frame.cxx:2953 > (anonymous namespace)::Frame::setComponent(com::sun::star::uno::Reference<com::sun::star::awt::XWindow> const&, com::sun::star::uno::Reference<com::sun::star::frame::XController> const&) at framework/source/services/frame.cxx:1449 > (anonymous namespace)::Frame::close(sal_Bool) at framework/source/services/frame.cxx:1689 > framework::Desktop::impl_closeFrames(bool) at framework/source/services/desktop.cxx:1674 > framework::Desktop::terminate() at framework/source/services/desktop.cxx:238 and the main thread idling in Application::Yield. Change-Id: I41ff8007ee4bbc37473aa5f077ff706b51d31c64
2016-04-13Fix showing tooltips in RTL UI with GTK 3Khaled Hosny
Change-Id: I29c2c7988fb97e2472188a600a483e5f6ed12d80
2016-04-13tdf#94306 replace boost::noncopyable in stoc to xmlsec..Jochen Nitschke
Replace with C++11 delete copy-constructur and copy-assignment. Remove boost/noncopyable.hpp includes. Add missing default ctors. With this commit there should be no users of boost::noncopyable left. Change-Id: I6b1e47824912a6a80cc3f00f34938ebc048d8975 Reviewed-on: https://gerrit.libreoffice.org/24051 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Michael Stahl <mstahl@redhat.com>
2016-04-13remove dead stuff from Windows SalDataNoel Grandin
- drop mbInTimerProc field - drop mnSageStatus,mpSageEnableProc fields i.e. SAGE.DLL (System Agent) workaround, which died out with Win95/98 - convert some TRUE/FALSE constants to true/false where the field is a bool - drop maDwmLib, mpDwmIsCompositionEnabled fields Change-Id: I7b773f915dbc329eb0262bc8fee2ea7c72d25c66 Reviewed-on: https://gerrit.libreoffice.org/24047 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Michael Stahl <mstahl@redhat.com>
2016-04-13remove Windows95 MouseWheel supportNoel Grandin
since we no longer support Windows95 Change-Id: I6b2fe5fdb2cde3c69fc0d18bcaac25afccbffc16 Reviewed-on: https://gerrit.libreoffice.org/24049 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Michael Stahl <mstahl@redhat.com>
2016-04-13tdf#99165 always provide control points for beziersArmin Le Grand
Some graphic sub systems cannot handle cases where control points of bezier curves are not set and produce wrong geometry for fat line drawing when MITER or similar LineCap and/or LineJoin is used. To avoid that, provide the mathematically correct fallback control points instead. Change-Id: Iabc724e51fb89e702f858db820c920f7b5b7d302 Reviewed-on: https://gerrit.libreoffice.org/24031 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Armin Le Grand <Armin.Le.Grand@cib.de>
2016-04-13tdf#97087 Give comprehensible names to timersMuhammet Kara
Timers and idles should have programmer comprehensible, unique names Change-Id: I837d1890c687936f8a31278c0102391e6f87212d Reviewed-on: https://gerrit.libreoffice.org/23917 Reviewed-by: Michael Meeks <michael.meeks@collabora.com> Tested-by: Michael Meeks <michael.meeks@collabora.com> Tested-by: Jenkins <ci@libreoffice.org>
2016-04-13Stop assigning null to intrusive_ptrTakeshi Abe
which added at f6d61562d41b8a49449d881da66a3d8fa519487f. But they seems unnecessay because, even without them, soon the intrusive_ptr goes out of scope then its dtor decrements refcount. Change-Id: I6e35ecb7d5a0b5ccaef6ea9b7507300dcb589801 Reviewed-on: https://gerrit.libreoffice.org/24013 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: David Tardon <dtardon@redhat.com>
2016-04-12lp#1560328: clear cache before disposing rest of VCLBjoern Michaelsen
Change-Id: Iac325cf934953c61cb4dbbb67cfbab1777dc45cc Reviewed-on: https://gerrit.libreoffice.org/24038 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Björn Michaelsen <bjoern.michaelsen@canonical.com>
2016-04-12Avoid reserved identifiersStephan Bergmann
Change-Id: Ie832e82ca3767114457780581444f6fc8aa9fdd2
2016-04-12Avoid reserved identifierStephan Bergmann
Change-Id: I8b8d0322e62a64379eb72ca648c06b092c363f6a
2016-04-12vcl: simplify WNT SalYieldMutex::release() further ...Michael Stahl
... by asserting that the current thread is the owner of the SalYieldMutex. Anything else would be a bug anyway. Change-Id: I564c184ae21b99a096f67edbc729b3f2b0e307de
2016-04-12vcl: simplify WNT SalYieldMutex::release() a bitMichael Stahl
The ordering between clearing mnThreadId and OpenGLContext shouldn't matter since it was already inconsistent. Change-Id: I0b7b6457547e9e38527de58ba062fd7092178056
2016-04-12WNT: check result of PostMessage()Michael Stahl
... so the next time something overflows the main thread's message queue it's easier to debug. Change-Id: I90a35e46f3b2cab190c7da5e53024ec549159ac6
2016-04-12vcl: split out part of ImplGetTabRect into new functionDouglas Mencken
Change-Id: I387417bf8fdfa85379b6d8eaa32738d0ed7ab519 Reviewed-on: https://gerrit.libreoffice.org/23900 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Michael Meeks <michael.meeks@collabora.com>
2016-04-12tdf#96887 enhance SolarMutex AcquireWithWait for WindowsArmin Le Grand
Currently the Windows-specific method ImplSalYieldMutexAcquireWithWait() uses a messaging mechanism to learn about the SolarMutex being free again. This is not reliable when the MessageQueue overflows (MS allows 10000 messages per queue). It is more safe to use MsgWaitForMultipleObjects. This also allows to not only wait for the SolarMutex to be freed, but also to detect when SendMessage() is used which needs to lead to a reschedule to not block current Window handling. Change-Id: Id317dda62aaa1fe7677d8d28929e6936e5a22705 Reviewed-on: https://gerrit.libreoffice.org/23921 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Armin Le Grand <Armin.Le.Grand@cib.de>
2016-04-12give tools::ResId a shave and a haircutNoel Grandin
m_nRT2 and m_nWinBits fields are not in use anymore, at least as far back as 2013, when the heading files were moved around Change-Id: Ie3299a5999976450803332aeab72d5c0e68227e2 Reviewed-on: https://gerrit.libreoffice.org/23960 Reviewed-by: Noel Grandin <noelgrandin@gmail.com> Tested-by: Noel Grandin <noelgrandin@gmail.com>
2016-04-12cleanup: remove unused com/sun/star/uno includesJochen Nitschke
Sequence.h(xx), Any.h(xx) and Type.h(xx) and remove unused using-declarations from these files. Add a few missing includes provided by them. Change-Id: I6b91b6d1fdf9d0496dd546c0aab9bdcc6831a5d4 Reviewed-on: https://gerrit.libreoffice.org/23805 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2016-04-12clang-tidy performance-unnecessary-value-param in vclNoel Grandin
Change-Id: I403f148060891feec56d7d2ef173a9c4934baf9e Reviewed-on: https://gerrit.libreoffice.org/23995 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2016-04-11Don't get excited about "inline"Stephan Bergmann
Change-Id: I4f067bd60706814b4d2cc6057a0342696021ad75
2016-04-11Avoid reserved identifiersStephan Bergmann
Change-Id: I3c3ca71a2e0098ec8df49c6bf4c2045218c91ee9
2016-04-11Remove unused macrosStephan Bergmann
...that were introduced with b5a9cc71d246c26da8aca4203da84c10c104c222 "Exif reading/writing and Jpeg lossless transformations support" but apparently never used Change-Id: I7e3367b5753b06746a82ae18453b6f9a291ff77a
2016-04-11Get rid of _XPMPRIVATEStephan Bergmann
Change-Id: I37396cfe303bdc17520a69ee7cbdbdbc219eea1c
2016-04-11Get rid of _XBMPRIVATEStephan Bergmann
Change-Id: I4e2cd2d98299ee0b25e05b8a96fb8c3b8390b66d
2016-04-11Get rid of _GIFPRIVATEStephan Bergmann
Change-Id: I3e6b8d424c460987f7a6269ad035ecaeafe48366
2016-04-11tdf#87944 COLOR-PICKER stays on wrong position.Juergen Funk
After this patch dab2582f05979cd99a5937cb95a387cfed70bb8d under windows always open on the wrong position (open in the middle of the application but not under the pushbutton) Change-Id: Ib245df6ccb2be768f7a12b638864d5c3cea1a390 Reviewed-on: https://gerrit.libreoffice.org/23557 Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2016-04-11cppcheck: noExplicitConstructorCaolán McNamara
Change-Id: Ie25240030fd848a5b30526746206bfd5fe543091
2016-04-11cppcheck: silence warnings assertWithSideEffectJochen Nitschke
Mark some class methods as pure. warnings look like this: > dbaccess/source/core/api/RowSetBase.cxx > 593 assertWithSideEffect 398 warning Assert statement calls > a function which may have desired side effects: 'isAfterLast'. Change-Id: I1b69340c3714be4678b599fa9a8ca933122aa857 Reviewed-on: https://gerrit.libreoffice.org/23981 Reviewed-by: Noel Grandin <noelgrandin@gmail.com> Tested-by: Noel Grandin <noelgrandin@gmail.com>
2016-04-11coverity#1358428 fix "Null pointer dereferences"Tomaž Vajngerl
Change-Id: I629ff54ea721f4d9626258690767088b1abfb0c6
2016-04-11loplugin:constantparamNoel Grandin
Change-Id: Ie690088d7a7d568703afd22f544628fc8012a7e1
2016-04-08Silence loplugin:unreffunStephan Bergmann
Change-Id: Id68ec3e157445249bd96635d50e1de9c68cc0a46
2016-04-08Change #include <cairo-svg.h> to <cairo.h>Korrawit Pruegsanusak
Since we don't need cairo's svg feature, and we build internal cairo with --disable-svg. Also remove commented-out codes which use svg. Change-Id: I5a8e8c672588bb6eca28696f21221770972ec3d3 Reviewed-on: https://gerrit.libreoffice.org/23456 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Michael Stahl <mstahl@redhat.com>
2016-04-08opengl: refactor GL texture slot mechanism to be more generalTomaž Vajngerl
Slot mechanism in ImplOpenGLTexture was written to support needs for FixedTextureAtlas. This commit makes the slot mechanism more general so it can be used in other kinds of texture atlases like PackedTextureAtlas. The ImplOpenGLTexture still tracks slots, but it is not needed to define beforehand how many slots there are. The deallocation has been factored out, ImplOpenGLTexture instead calls a callback function that a slot with a specific "slot id" has been deallocated. Change-Id: I23950d325b803969f958d03ebf34805687c4e620
2016-04-08opengl: cleanup texture, const internal formatTomaž Vajngerl
- Move IncreaseRefCount and DecreaseRefCount to texture.cxx - Add a constInternalFormat constant for the internal texture format that we want to use. Change-Id: I1c1e1f784075dc0d20b033d3bd2e52d2ffbd8252
2016-04-08opengl: fix wrong clipping when drawing textTomaž Vajngerl
Change-Id: I41a182c5309586337032328dfe82b1c6715f0dc2
2016-04-08opengl: use packed texture atlas for glyph cache in win. backendTomaž Vajngerl
Change-Id: I6a627699d49bad47213788877fa3947ad2ef83f4