Commit Graph

1397 Commits

Author SHA1 Message Date
f6283cf6b4 sd: track view shell id in SdUndoAction
This helps in case of e.g. setting the page size of an Impress slide
from the sidebar.

Change-Id: I6247d6efcc59f2c6311dcd33d0f989a39fd7b3f9
Reviewed-on: https://gerrit.libreoffice.org/27827
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
Tested-by: Jenkins <ci@libreoffice.org>
2016-08-03 16:30:00 +00:00
6c87b02840 loplugin:countusersofdefaultparams in sd
Change-Id: I848d9b555a26e9d343efdfaaaec44a2c7d8be5b5
Reviewed-on: https://gerrit.libreoffice.org/27765
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2016-08-02 05:34:49 +00:00
4cbaa49c0e svl: implement SfxUndoAction::GetViewShellId() interface in SfxListUndoAction
Client code in sw, sd, sc and svx is adapted, the rest is just a
placeholder for now.

With this, e.g. the undo item for Writer's insert comment properly
tracks which window was used for the insertion.

Change-Id: Idad587e6ca07ba69bf59aa7013b251af8bf95bab
Reviewed-on: https://gerrit.libreoffice.org/27781
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
Tested-by: Jenkins <ci@libreoffice.org>
2016-08-01 17:04:45 +00:00
6850f4e845 svl: avoid defaulted parameter in SfxUndoManager::EnterListAction()
It's a virtual function, and defaulted parameters there are problematic.

Change-Id: I3f110c7ac36dfda90811b033620286ad9fce1af1
Reviewed-on: https://gerrit.libreoffice.org/27772
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
Tested-by: Jenkins <ci@libreoffice.org>
2016-08-01 10:32:27 +00:00
508c95f1b6 improve passstuffbyref return analysis
Change-Id: I4258bcc97273d8bb7a8c4879fac02a427f76e18c
Reviewed-on: https://gerrit.libreoffice.org/27317
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2016-07-27 06:48:25 +00:00
a860df25dd masses of MessBoxes not being disposed promptly
since...

commit ba81e5c6bd420b41a84ade6ccd774011a8089f7f
Date:   Thu May 28 21:35:43 2015 +0100

    tdf#91702 - fix stack-based MessBox allocation.

There is no special ScopedVclPtr<X>::Create or
ScopedVclPtrInstance<X>::Create just
VclPtr<X>::Create and a raw VclPtr<X>::Create()->foo
doesn't call dispose on the owned X

Change-Id: Ifacc8d5e742820701307c3c37b9b86487667d84f
2016-07-26 11:26:52 +01:00
5206929f3a sd: OOoXML import: fix loss of animations
There are 2 different animation formats, legacy one used in OOoXML
format, based on presentation:animations element, and SMIL based one
used in ODF format, based on a node hierarchy with
<anim:par presentation:node-type="timing-root"> at the top.

The problem is that when the legacy animations are imported, they are
not immediately set on the draw-page in the same way as the new
animations are imported.

"soffice --convert-to odp ooo28334-1.sxi" loses all of the animations,
whereas loading the file in the UI and storing it all animations are
converted, and if you use API load/store methods some are converted and
some not depending on timing.

The problem is that there is a necessary conversion step
MainSequence::implRebuild() that needs to happen after all the
EffectMigration calls for a particular SdPage are finished, which
is only triggered by a timer MainSequence::onTimerHdl().

Fix it by forcing a call to implRebuild() from DrawDocShell::Load().

Note: SdDrawDocument::NewOrLoadCompleted() is a horribly misleading
function name as it is actually called *before* loading the document.

Change-Id: I9881cb9bf2ae6ccc5fcf06602343f2d0e0704699
2016-07-25 12:12:53 +02:00
6e72f0251b new loplugin unnecessary override
Change-Id: I88d3e33823d68745b98625050a8a274f9ef04bcb
Reviewed-on: https://gerrit.libreoffice.org/27135
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
Tested-by: Stephan Bergmann <sbergman@redhat.com>
2016-07-15 14:05:41 +00:00
f7b1cd6616 Moved SfxModule owner to SfxApplication
::GetAppData replaced with SfxApplication::GetModule
that now returns SfxModule*

SfxModule no longer registers self for ownership
instead it is now registered using SfxApplication::SetModule

Change-Id: Ifbbe1b2b4c5122da8e643b7926d47878d116c6c8
Reviewed-on: https://gerrit.libreoffice.org/26914
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2016-07-13 06:32:46 +00:00
85185f8884 loplugin:redundantcast: redundant static_casts in sd
Change-Id: I843ca15d3515273bd78bf9f111974f9be5252549
2016-07-08 16:47:31 +02:00
b46492d06e loplugin:passstuffbyref also for {css::uno,rtl}::Reference
Change-Id: If24b3ba75023c68fddcaec1ff7ae5f2517761587
2016-07-07 18:59:55 +02:00
de4908eb4d Resolves: rhbz#1353069 don't clear XATTR_FILL* from stylesheet if...
the master page is not the sole owner. Which happens when copying
and pasting slides which bring along a duplicate master page to
an already existing one, and the attempt to remove the duplicate
strips the fill properties from the shared stylesheet in use by
the other

regression from...

commit b876bbe2cacce8af379b10d82da6c7e7d229b361
Author: David Tardon <dtardon@redhat.com>
Date:   Tue Apr 26 09:17:11 2016 +0200

    rbhz#1326602 avoid exp. bg bitmaps from deleted slides

Change-Id: I91fb8f622a0e35741ecc37cef14fc93199bb730b
2016-07-06 10:44:40 +01:00
fbd23182ee loplugin:unusedfields
Change-Id: If06fffa8db050df0f9c1c7da6163575bf522382e
Reviewed-on: https://gerrit.libreoffice.org/26754
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2016-06-30 07:01:41 +00:00
19bacff27b loplugin:singlevalfields in sd
Change-Id: Idde7bdbd57080518fc416ce97a062ab979393d8e
Reviewed-on: https://gerrit.libreoffice.org/26656
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2016-06-27 05:21:09 +00:00
5b5706f41f comphelper lok: remove the g_bViewCallback global
Its purpose was to allow incrementally migrate all callers of
SdrModel::libreOfficeKitCallback() to use
SfxViewShell::libreOfficeKitViewCallback() (which allows notifying only
the currently active or all views) instead. That is done by now, so it
can go.

Change-Id: I521bbbe5c638dfd844ebf025153459a37362d3c3
Reviewed-on: https://gerrit.libreoffice.org/26413
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
Tested-by: Jenkins <ci@libreoffice.org>
2016-06-17 12:47:46 +00:00
cfe33278f5 sd: implement per-view LOK_CALLBACK_DOCUMENT_SIZE_CHANGED
These callbacks were invoked from the model, so need to iterate over the
view shells and invoke them on all the views.

Change-Id: Ie8107f4782b513b874d0b94464ea372994dabbe9
Reviewed-on: https://gerrit.libreoffice.org/26221
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
Tested-by: Jenkins <ci@libreoffice.org>
2016-06-13 13:36:30 +00:00
8c5452044b Resolves: tdf#93135 there is no SDRATTR_TEXT_AUTOGROWSIZE property
as far as I can see there is no use of SDRATTR_TEXT_AUTOGROWSIZE anywhere,
just a reuse of SDRATTR_TEXT_AUTOGROWHEIGHT for a different mechanism to resize
the surrounding shape to fit text in custom shapes.

Note there is another different feature to resize text to fit into its frame
of SDRATTR_TEXT_FITTOSIZE.

Change-Id: Icf08966c70ef79271f462da7d4b2c6e8e855d5df
2016-06-09 09:59:47 +01:00
954f853c7b tdf#96099 Remove sfx std::shared_ptr typedefs
Removed SfxItemSet_Pointer_t and SfxStyleSheetIteratorPtr

Change-Id: Ibfa6a79809fdbbe2648dacc02625e620ceaf9bf0
Reviewed-on: https://gerrit.libreoffice.org/25851
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2016-06-04 09:45:55 +00:00
990082f37c Convert FontRelief to scoped enum
Change-Id: I545c83d742db27f1a004b66e5eb1ef768f62e011
Reviewed-on: https://gerrit.libreoffice.org/25626
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2016-05-30 06:41:53 +00:00
7b26389414 clang-tidy clang-analyzer-deadcode.DeadStores
Change-Id: I7113a13ac36db5beef3a17e9849c1f5506df2374
Reviewed-on: https://gerrit.libreoffice.org/25194
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2016-05-23 06:17:29 +00:00
b73f45ef0b loplugin:unusedmethods in sd
Change-Id: I27da3e7afd86217ec9f75958775da9c144d7a0a5
Reviewed-on: https://gerrit.libreoffice.org/25111
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2016-05-19 06:42:34 +00:00
db00223e6d Related: tdf#99523 select only the desired slides
when selecting the same slides in the document as are
selected in the slide pane, don't forget to unselect
any slides already selected in the document.

impress is nuts in carrying around two selection
mechanisms.

Change-Id: I97d744c1c57b68dc312a17a5cd5290e1b6ccf083
2016-05-18 12:54:38 +01:00
d96c114171 clang-tidy modernize-make-shared
Change-Id: I3fa866bfb3093fc876474a9d9db29fe05dc2af3a
Reviewed-on: https://gerrit.libreoffice.org/25056
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2016-05-18 06:58:44 +00:00
8eb8b9c1d2 Add SAL_FALLTHROUGH, where apparently appropriate
Change-Id: I1f147c4a0ebc6895435722d8385131917f88ecb5
2016-05-10 17:10:32 +02:00
14cd5182c5 Replace fallthrough comments with new SAL_FALLTHROUGH macro
...which (in LIBO_INTERNAL_ONLY) for Clang expands to [[clang::fallthrough]] in
preparation of enabling -Wimplicit-fallthrough.  (This is only relevant for
C++11, as neither C nor old C++ has a way to annotate intended fallthroughs.)

Could use BOOST_FALLTHROUGH instead of introducing our own SAL_FALLTHROUGH, but
that would require adding back in dependencies on boost_headers to many
libraries where we carefully removed any remaining Boost dependencies only
recently.  (At least make SAL_FALLTHROUGH strictly LIBO_INTERNAL_ONLY, so its
future evolution will not have any impact on the stable URE interface.)  C++17
will have a proper [[fallthroug]], eventually removing the need for a macro
altogether.

Change-Id: I342a7610a107db7d7a344ea9cbddfd9714d7e9ca
2016-05-10 16:42:16 +02:00
f469309e26 clang-tidy modernize-loop-convert scaddins to sdext
Change-Id: I63ccc56df1a1de8bc443abb95e520246c457912f
Reviewed-on: https://gerrit.libreoffice.org/24798
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
Tested-by: Noel Grandin <noelgrandin@gmail.com>
2016-05-10 06:29:32 +00:00
17076d8ecf convert OUTLINER_MODE to scoped enum
Change-Id: I7ac45d7fbd5e77a105cbe942c6d4fd6cfc8ff909
Reviewed-on: https://gerrit.libreoffice.org/24789
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
Tested-by: Noel Grandin <noelgrandin@gmail.com>
2016-05-09 11:15:16 +00:00
50ac0f503b convert FONT_EMPHASIS_MARK to scoped enum
Change-Id: I137c78b337e57d3442db08334128e79d186b278f
Reviewed-on: https://gerrit.libreoffice.org/24753
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
Tested-by: Noel Grandin <noelgrandin@gmail.com>
2016-05-09 09:41:34 +00:00
bcb41235de convert SfxStyleFamily to scoped enum
and update the RSC compiler to accept such

In the process fix some confusion in SD where it was confusing
SfxStyleFamily and the index of the relevant family
(which other parts of the code in SVL use)

Change-Id: I1efc9f85fbed8ab76eafe8f6e1ada411753ae5f9
2016-05-09 10:17:13 +02:00
58a32075ca use Any constructor instead of temporaries
Change-Id: Iffb82a2cee1a28d89eeea2b905aaa14086ee475a
2016-05-04 12:39:40 +02:00
43b4903db3 teach stylepolice plugin about ref-counted-pointer naming
Change-Id: I6e91d22fc1826038c05ddb6fc065563c6a250752
Reviewed-on: https://gerrit.libreoffice.org/24459
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2016-04-28 09:31:16 +00:00
e8fd5a07ec update loplugin stylepolice to check local pointers vars
are actually pointer vars.

Also convert from regex to normal code, so we can enable this
plugin all the time.

Change-Id: Ie36a25ecba61c18f99c77c77646d6459a443cbd1
Reviewed-on: https://gerrit.libreoffice.org/24391
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2016-04-26 10:55:58 +00:00
fc233b52ce Avoid reserved identifiers
Change-Id: I3542622f6b3752f7254abd07d9f3a8141f10c3dc
2016-04-22 09:53:59 +02:00
1a74c6333a lokit: add getPartHash
In the tiled rendering case, the slides, no matter
if it is inserted or deleted, the part names always return
sequential names i.e. Slide 1, Slide 2, ..., Slide N.

However the client side needs to know what slides had been
deleted or inserted, so it is necessary to send the hash codes.

Change-Id: I0e9caeec660c3e42dd9f751bdce7690f9ad365a1
Reviewed-on: https://gerrit.libreoffice.org/24267
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
2016-04-21 13:48:33 +00:00
0003e99b39 loplugin:salbool: Automatic rewrite of sal_False/True
Change-Id: Iae2e695c26e19275ea02bc6737c311d31a45e1d7
2016-04-20 17:25:49 +02:00
b0c0a074a2 clang-tidy clang-analyzer-deadcode.DeadStores
suspect that some of these may reveal latent bugs....

Change-Id: I9de9aabbda9c8952715631577c29c1830df1eb71
Reviewed-on: https://gerrit.libreoffice.org/24200
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2016-04-20 11:02:45 +00:00
7a06ef161c sd doc model dump: include undo manager info
So that it's easy to see where the implementation for a given undo
action is.

Change-Id: I93b8603f75d0b5a68922e02540b9db6824f4d0db
Reviewed-on: https://gerrit.libreoffice.org/24243
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
Tested-by: Jenkins <ci@libreoffice.org>
2016-04-19 12:47:57 +00:00
789055bc2a clang-tidy performance-unnecessary-copy-initialization
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-18 07:37:31 +00:00
150ac9cf05 clean-up: unused using declarations and includes
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-18 07:25:24 +00:00
c03a11b8f0 tdf#97087 Give comprehensible names to timers
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-13 08:06:29 +00:00
9649026cf5 clang-tidy performance-unnecessary-value-param in sd
Change-Id: Id55410931305a9695a001977a5227b430a984e99
2016-04-12 11:54:45 +02:00
c210bf4510 tdf#94306 replace boost::noncopyable r.. to sdext
... in modules reportdesign to sdext
Replace with C++11 delete copy-constructur and
copy-assignment.
Remove boost/noncopyable.hpp includes.
Make some overloaded ctors explicit
(most in sd slidesorter).
Add deleted copy-assignment in sc/inc/chart2uno.hxx.

Change-Id: I21d4209f0ddb00063ca827474516a05ab4bb2f9a
Reviewed-on: https://gerrit.libreoffice.org/23970
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2016-04-11 07:15:35 +00:00
e88ba02a70 tdf#97087 - Give Idles comprehensible and unique names
Change-Id: I435d26c00f48506a3f6bfb22aae156e91636842a
Reviewed-on: https://gerrit.libreoffice.org/23887
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Michael Stahl <mstahl@redhat.com>
2016-04-07 20:48:56 +00:00
b8c528a351 loplugin:constantparam in sd
Change-Id: Ife610abb1f8ed19ab219301d41d7fc2174ff1d29
Reviewed-on: https://gerrit.libreoffice.org/23830
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2016-04-05 07:15:04 +00:00
f7a75a66fa cleanup: remove unused Reference.h(xx) includes
and unused using-declarations from Reference.h

Change-Id: I297a7ae6044fa329d245ecf08fd5c4cb930f5b19
Reviewed-on: https://gerrit.libreoffice.org/23735
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Markus Mohrhard <markus.mohrhard@googlemail.com>
2016-04-02 19:01:24 +00:00
c09d0aa46c loplugin:constantparam in sd
Change-Id: I1a7f4cab28a70c45e5232e1c44f6ca6f7b014bff
2016-03-24 11:41:01 +02:00
f4c59e5364 loplugin:constantparam in sd
Change-Id: Idad86a005a7df1af38722fa0e909ed9b6e0858fa
2016-03-18 11:32:16 +02:00
5873b3643d coverity#1356337 Resource leak
Change-Id: Id00ee8abd5f22bf0594ad41e3922222872d6c5ca
2016-03-16 09:29:52 +00:00
52e438caaf remove unnecessary parentheses in case labels
Change-Id: I987bf68c767709080c67c8b183c036a4109c6caa
2016-03-15 08:52:23 +02:00
e94d5233dd work on sane lifecylce for SfxFilter
all SfxFilter instances should now be hold inside of a std::shared_ptr.

This fixes a number of huge memory leaks in the test framework and
removes one huge source of memory issue in sfx2. SfxMedium contains a
pointer to the SfxFilter but does not own. Therefore it is required that
any SfxFilter belonging to a SfxMedium lives longer. However this seems
to work mostly by hoping that all SfxFilter instances are stored in a
global array. As we have seen with the tests this is not true (there are
also some cases inside of sd that seem to not follow that pattern as
well).

Change-Id: I12fd04a504cc4efc0a94967abd91c6fe2c6a8ce8
Reviewed-on: https://gerrit.libreoffice.org/23140
Reviewed-by: Markus Mohrhard <markus.mohrhard@googlemail.com>
Tested-by: Markus Mohrhard <markus.mohrhard@googlemail.com>
2016-03-11 06:38:15 +00:00