summaryrefslogtreecommitdiff
path: root/sd/source/ui/view/drviewsh.cxx
AgeCommit message (Collapse)Author
2024-02-24IASS: make live slideshow experimental and configurableArmin Le Grand (allotropia)
* adding an option button to slideshow settings dlg * switch from env var to officecfg Change-Id: I9713fde374b04264947daaab73759eb585c4a3f6 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/163851 Tested-by: Jenkins Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
2024-02-18IASS: Preparations for InterActiveSlideShowArmin Le Grand (allotropia)
The idea is a long wanted feature, to allow the EditView to stay active during a running Presentation so that you can do changes which then directly show up in the running presentation. This will need quite some steps. To be on the safe side all of the changes are isolated by a variable to cause no harm. For now this uses ENVVAR ENABLE_INTERACTIVE_SLIDESHOW, but that may change e.g. as config entry or option. Change-Id: Id0ab9a473603225456206fbd933e932248681509 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/163514 Tested-by: Jenkins Reviewed-by: Armin Le Grand <Armin.Le.Grand@me.com>
2022-07-11tools: rename getHeight/Width() to GetOpenHeight/Width()Chris Sherlock
By default Rectangle uses closed interval, if we really want to use half open intervals then we should specifically say as such in the name. Change-Id: Id7a91120ba1a1a4bc330014216b73a692dbf03a2 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136575 Tested-by: Jenkins Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
2022-04-14use more string_view in sdNoel Grandin
Change-Id: I301f3d8a6634df8be5fdd42649c0c265da8f9099 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133004 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-09-28vcl: rename OutDevState to StackChris Sherlock
I have moved the header file to include/vcl/rendercontext as this will eventually be part of the RenderContext split from OutputDevice. State and associated enums have also been moved to the vcl namespace. I have also moved ComplexTextLayoutFlags into the vcl::text namespace. Change-Id: I0abbf560e75b45a272854b267e948c240cd69091 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/121524 Tested-by: Jenkins Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
2021-09-20clean up ambiguous confusing rectangle APIs like IsInside()Luboš Luňák
Reading 'rectA.IsInside( rectB )' kind of suggests that the code checks whether 'rectA is inside rectB', but it's actually the other way around. Rename IsInside() -> Contains(), IsOver() -> Overlaps(), which should make it clear which way the logic goes. Change-Id: I9347450fe7dc34c96df6d636a4e3e660de1801ac Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122271 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Reviewed-by: Luboš Luňák <l.lunak@collabora.com> Tested-by: Jenkins
2021-05-17split OutputDevice from WindowNoel Grandin
as part of a longer-term goal of doing our widget rendering only inside a top-level render- context. I moved all of the OutputDevice-related code that existed in vcl::Window into a new subclass of OutputDevice called WindowOutputDevice. Notes for further work (*) not sure why we are getting an 1x1 surface in SvpSalGraphics::releaseCairoContext, but to fix it I clamp the size there (*) might have to dump VCLXDevice, and move it's code down into VCLXWindow and VCLXVirtualDevice (*) can we remove use of VCLXDevice in other places, in favour of just talking to the VCL code? Change-Id: I105946377f5322677d6f7d0c1c23847178a720b6 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113204 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2020-10-23long->tools::Long in pyuno..sdNoel
Change-Id: I67c1218d225f49ea9ce789433283ab85275e39a5 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/104627 Tested-by: Noel Grandin <noel.grandin@collabora.co.uk> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2020-04-22tdf#42949 Simplify use of rtl::math::approxEqual in include/basegfx/Gabor Kelemen
Turns out we can save about 500Mb of preprocessor input if we use rtl_math_approxEqual from rtl/math.h instead of its C++ wrapper rtl::math::approxEqual from rtl/math.hxx and manage the fallout accordingly. Before: bin/includebloat.awk | head sum total bytes included (excluding system headers): 19017296671 After: $ bin/includebloat.awk | head sum total bytes included (excluding system headers): 18535432672 Change-Id: I1691171f3a309405a7099882ad9989d147f59118 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/92508 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2019-09-12tdf#42949 Fix IWYU warnings in sd/source/ui/[u-v]*/*cxxGabor Kelemen
Found with bin/find-unneeded-includes Only removal proposals are dealt with here. Change-Id: I878a639eee26f543093f640cd10b8cb7bfbbd108 Reviewed-on: https://gerrit.libreoffice.org/78350 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2019-02-15loplugin:flatten in sd/source/ui/viewNoel Grandin
Change-Id: I28e75ec162cde89fe1aa7d85aecce7ce80878d88 Reviewed-on: https://gerrit.libreoffice.org/67828 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-07-30Add missing sal/log.hxx headersGabor Kelemen
rtl/string.hxx and rtl/ustring.hxx both unnecessarily #include <sal/log.hxx> (and don't make use of it themselves), but many other files happen to depend on it. This is a continuation of commit 6ff2d84ade299cb3d14d4110e4cf1a4b8070c030 to be able to remove those unneeded includes. This commit adds missing headers to every file found by: grep -FwL sal/log.hxx $(git grep -Elw 'SAL_INFO|SAL_INFO_IF|SAL_WARN|SAL_WARN_IF|SAL_DETAIL_LOG_STREAM|SAL_WHERE|SAL_STREAM|SAL_DEBUG') to directories scripting, sd, sdext Change-Id: I47889cd889cf1d68353184229bfd4712f1528fbf Reviewed-on: https://gerrit.libreoffice.org/58220 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
2018-07-02tdf#109190 sd: only MakeVisible on mouseclick-upJustin Luth
Since MakeVisible is called on both mousebuttom-down and mousebuttom-up, this also eliminates useless double-processing. In the problematic use case, the user pressed Ctrl-A to select a tall table. When clicking to de-select the cells, the contents moved around in unexpected ways because the rectangle is at the end of the selection during down-click, not at the cursor location. The re-arrangment of the screen invalidates the mouse-up, so the intended cursor position shifted. In the bug's calendar example, position the screen so that items 20-31 are hidden, select the whole month, and then click on 5. Before, it would move the screen down to show 31, and the cursor would be placed at the screen position where 5 had originally been. Solved by only repositioning on mouse-click up. However, mouseButtonDown must still be honoured while selecting, otherwise you can't select off-screen content with the mouse. Change-Id: I41c90a7b113dc59a3c8c385139a5bb41993646fa Reviewed-on: https://gerrit.libreoffice.org/56262 Tested-by: Jenkins Reviewed-by: Justin Luth <justin_luth@sil.org>
2018-06-21NFC sd misc cleanup: earlier exit, commentsJustin Luth
The exception in the case of a running slideshow has been around since the function was introduced, but more and more code has been building up in front of that if clause. Since no changes will be made, include that exception in the initial exit clause to avoid unnecessary computations. This cleanup is prep work for a bug fix. Change-Id: Ief0b07d8108e1576459486ef61f038443f64705f Reviewed-on: https://gerrit.libreoffice.org/54678 Tested-by: Jenkins Reviewed-by: Justin Luth <justin_luth@sil.org>
2018-06-06tdf#109190 sd MakeVisible: fix flattened loop logic errorJustin Luth
There is a bug in the conversion from while(rRect.Bottom() > aNewPos.Y() + aVisAreaSize.Height()) to const long distBottom(rRect.Bottom() - aNewPos.Y() + aVisAreaSize.Height()); While the bottom of the object is lower on the page than the visual Top position plus the height of the screen, (in other words, it isn't in the visible range of the screen), move the screen down by the size of the object and try again. The loop could first be finished when the shape bottom is exactly at the bottom of the screen: rRect.Bottom() = aNewPos.Y() + screen Height. or rRect.Bottom() - (aNewPos.Y() + aVisAreaSize.Height()) = 0 or rRect.Bottom() - aNewPos.Y() - aVisAreaSize.Height() = 0 Change-Id: I762a39df3cdcd5689c8f6742797a9f7b38ddb384 Reviewed-on: https://gerrit.libreoffice.org/55156 Reviewed-by: Justin Luth <justin_luth@sil.org> Tested-by: Justin Luth <justin_luth@sil.org> Reviewed-by: Armin Le Grand <Armin.Le.Grand@cib.de>
2018-04-03tdf#42949 Remove unnecessary localization headers from sdGabor Kelemen
Found by searching for the header names and the localization function: git grep -l -e \<sdresid.hxx\> -e \<strings.hrc\> sd | xargs grep -c SdResId | grep :0$ | grep -v /pch Change-Id: Ibcd9b8403c398ec205c9bcc2ed1f04a7ef6a37aa Reviewed-on: https://gerrit.libreoffice.org/52199 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
2018-02-16Revert "loplugin:changetoolsgen in sd" and reapply the plugin...Noel Grandin
because I (a) forgot to insert parentheses which changes the meaning of some expressions and (b) I now use the AdjustFoo calls when changing unary operations, which reads much better This reverts commit 0d9f3f7628f88fa66aaeea1f7148db620e17e728. Change-Id: I33f79bf755aedc1ed48d95f7b82f3fabed1347fb Reviewed-on: https://gerrit.libreoffice.org/49834 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-02-15loplugin:changetoolsgen in sdNoel Grandin
Change-Id: I41c5510f95167fe028f219fb593f12b75709bd65 Reviewed-on: https://gerrit.libreoffice.org/49726 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-01-12More loplugin:cstylecast: sdStephan Bergmann
auto-rewrite with <https://gerrit.libreoffice.org/#/c/47798/> "Enable loplugin:cstylecast for some more cases" plus solenv/clang-format/reformat-formatted-files Change-Id: I144975b94fe2725ac740a953ca2133e99f8a3fce
2017-10-23loplugin:includeform: sdStephan Bergmann
Change-Id: I4b75316c8644a591e6d1cfab4945ef123f945b53
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>
2016-09-22sd lok: fix pixel-to-logic conversion in DrawViewShell::MakeVisible()Miklos Vajna
The problem, as seen by the user is that during shape text edit, sometimes just traveling with the cursor causes invalidations, which is unexpected. What happens is sd::Window::KeyInput() invokes sd::DrawViewShell::MakeVisible(), which does a pixel-to-logic conversion, but because the map mode is in general disabled in the LOK case, nothing happens. Then a bit later aVisArea.IsInside(rRect) fails, as it compares pixel and logic units, which results in sd::ViewOverlayManager::UpdateTags() scheduling an async call to sd::ViewOverlayManager::UpdateTagsHdl(), which at the end causes a full invalidation in sd::SmartTagSet::remove(). Fix the situation by temporarily enabling map mode, so we don't detect a visible cursor area as a non-visible one. Change-Id: I6d16f24d13143dc263a89317fbc38111e652c0ac
2016-03-29cid#1357164 correct CovertyScan possible DIVIDE_BY_ZEROArmin Le Grand
Also covers cid#1357165, exclude possibility that value equals zero at the same place negative values get excluded Change-Id: If3fd6143fb13f0d29f5fba304f9f337f7a7aa74c Reviewed-on: https://gerrit.libreoffice.org/23592 Reviewed-by: Armin Le Grand <Armin.Le.Grand@cib.de> Tested-by: Armin Le Grand <Armin.Le.Grand@cib.de>
2016-03-22tdf#98646 Fixed freeze by flattening loopsArmin Le Grand
DrawViewShell::MakeVisible was using loops for finding the area to change the visible part of the EditView to. That could (and did) potentially loop for a long time for very large objects, deep zoom or numerical problems. That loops were flattened, the results checked to be the same. Also added a test for numerical overflow for getting values from the Rectangle describing the object size. Despite these values being the result of erraneous import, I opt for checking and avoiding using these values. Change-Id: I783dc1f2ad9b6a60a47e660b0d576ea3f22a4e42 Reviewed-on: https://gerrit.libreoffice.org/23278 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Björn Michaelsen <bjoern.michaelsen@canonical.com> Reviewed-by: Armin Le Grand <Armin.Le.Grand@cib.de>
2016-01-14loplugin:unusedmethods unused return value in sdNoel Grandin
Change-Id: I9bf87cad19b7371076fd0b2333c83697021fe0e1
2014-09-23fdo#82577: Handle WindowNoel Grandin
Put the VCL Window class in the vcl namespace. Avoids clash with the X11 Window typedef. Change-Id: Ib1beb7ab4ad75562a42aeb252732a073d25eff1a
2014-06-25remove whitespacesMarkus Mohrhard
Change-Id: I9daea42a433b5032931a722878874917cf37f4d1
2014-04-24sd: sal_Bool->boolNoel Grandin
Change-Id: I3172a42f6b6abe434ffe0475d1201ff50b6c06ea
2014-03-24coverity#704298 Logically dead codeCaolán McNamara
Change-Id: Ic2f52bb5ec072f11c99f20455e4536bc298b47c7
2013-10-16cleanupThomas Arnhold
Change-Id: I7bfd221f89718ba8634417c93a26b3a199178694
2013-08-11String->OUStringIvan Timofeev
Change-Id: I98aae013433adb644d289b5d15625dcce824916e
2013-05-15Spelling "separate" (etc) correctly is hardTor Lillqvist
2013-03-27-Wunused-macrosStephan Bergmann
Change-Id: Ifaa1637122d6f9cae1e29b77ac36ca5d1f220aed
2013-03-19translation and cleanup of comments in sd/source/ui/view/Urs Fässler
Change-Id: I988c0545600185c6b09131d27fb8480efddd947f
2012-11-28re-base on ALv2 code. Includes:Michael Meeks
Patches contributed by Armin Le-Grand #118898# Adapted ImpGraphic::ImplGetBitmap to correctly convert metafiles... http://svn.apache.org/viewvc?view=revision&revision=1293316 #118485# - Styles for OLEs are not saved. http://svn.apache.org/viewvc?view=revision&revision=1182166 Patches contributed by Andre Fischer http://svn.apache.org/viewvc?view=revision&revision=1172128 http://svn.apache.org/viewvc?view=revision&revision=1172133 Patch contributed by Ariel Constenla-Haile i#118505# - Remove MN_OLE_OBJECT menu item from Draw/Impress contextmenu - CWS contextmenu1 http://svn.apache.org/viewvc?view=revision&revision=1182915 Patch contributed by Zhang Jian Fang #118876#, Add check if the OutlinerParaObject is created successfully http://svn.apache.org/viewvc?view=revision&revision=1243381 restore a re-based rdbedit.
2011-11-27remove include of pch header from sdNorbert Thiebaud
2011-03-29drop bogus executable flag from [ch]xx/bas/asm filesFrancisco Saito
2011-03-12Merge commit 'ooo/DEV300_m101' into integration/dev300_m101Bjoern Michaelsen
2011-02-08Remove all bogus comments in impress.Guillaume Poussel
2011-01-17removetooltypes01: #i112600# Remove tools types from sdCarsten Driesner
2010-10-13Add vim/emacs modelines to all source filesSebastian Spaeth
Fixes #fdo30794 Based on bin/add-modelines script (originally posted in mail 1286706307.1871.1399280959@webmail.messagingengine.com) Signed-off-by: Sebastian Spaeth <Sebastian@SSpaeth.de>
2010-10-05remove include guards using fixguard.pyPetr Mladek
2010-02-12changefileheader2: #i109125#: change source file copyright notice from Sun ↵Jens-Heiner Rechtien
Microsystems to Oracle; remove CVS style keywords (RCSfile, Revision)
2009-10-16#i103496#: split svtools; improve ConfitItemsMathias Bauer
2008-04-10INTEGRATION: CWS changefileheader (1.10.358); FILE MERGEDRüdiger Timm
2008/04/01 15:36:33 thb 1.10.358.3: #i85898# Stripping all external header guards 2008/04/01 12:39:40 thb 1.10.358.2: #i85898# Stripping all external header guards 2008/03/31 13:59:13 rt 1.10.358.1: #i87441# Change license header to LPGL v3.
2008-04-03INTEGRATION: CWS presenterview (1.10.122); FILE MERGEDKurt Zenker
2008/01/09 18:28:27 cl 1.10.122.1: #i15900# slideshow api consolidation
2006-09-16INTEGRATION: CWS pchfix02 (1.9.282); FILE MERGEDOliver Bolte
2006/09/01 17:37:38 kaib 1.9.282.1: #i68856# Added header markers and pch files
2005-09-09INTEGRATION: CWS ooo19126 (1.8.268); FILE MERGEDRüdiger Timm
2005/09/05 13:25:50 rt 1.8.268.1: #i54170# Change license header: remove SISSL
2004-12-23INTEGRATION: CWS bm3 (1.7.4); FILE MERGEDVladimir Glazounov
2004/12/10 15:34:50 iha 1.7.4.1: #i26016# enable 'GotoBookmark' for already opened document
2004-11-26INTEGRATION: CWS presentationengine01 (1.6.12); FILE MERGEDRüdiger Timm
2004/08/25 16:32:49 cl 1.6.12.1: replaced old FuSlideShow with new SlideShow