Commit Graph

1188 Commits

Author SHA1 Message Date
841f48fcb5 accessibility: prevent possible deadlock
Change-Id: I1dc409644ed2e2bdd0cd38c8343c4ada1af7127b
Reviewed-on: https://gerrit.libreoffice.org/32137
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Tested-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-01-10 06:42:37 +00:00
62affdd4bf accessibility: simplify locking
Change-Id: I87580eabf87fffd86068b5b2e44672aa1f9ffe84
Reviewed-on: https://gerrit.libreoffice.org/32136
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-01-09 18:18:05 +00:00
c1f4d4ddf2 accessibility: simplify CharacterAttributesHelper.
Change-Id: I62063745e704c941fdce306228ebbe3522c3b438
Reviewed-on: https://gerrit.libreoffice.org/32738
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-01-07 13:22:04 +00:00
92a1ad1f36 Localize return value of EditBrowseBoxTableCell::getAccessibleName
Change-Id: I040c1b9b8680a366819254e1d44b80115a339bbf
Reviewed-on: https://gerrit.libreoffice.org/32441
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Andras Timar <andras.timar@collabora.com>
2017-01-06 23:12:37 +00:00
a29bd2dabb cleanup tailing backslashes
Change-Id: Idb4bfc97e7d758c58118742affd9a9345c7a99f2
Reviewed-on: https://gerrit.libreoffice.org/32491
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2016-12-30 18:48:24 +00:00
46d3163f77 loplugin:unusedmethods
Change-Id: Ife4c8d948ffa116f044d43903de9485e43cfcae5
Reviewed-on: https://gerrit.libreoffice.org/32336
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2016-12-23 04:46:35 +00:00
4e1c423358 tdf#104767: Fix calculus of child index in commitTableEvent (accessibility)
bt:
1  0x00002aaade2fea5b in accessibility::AccessibleGridControlTableBase::ensureIsValidIndex (this=0x5555586abdb0, nChildIndex=11)
    at /home/julien/lo/libreoffice/accessibility/source/extended/AccessibleGridControlTableBase.cxx:257
2  0x00002aaade2f97f2 in accessibility::AccessibleGridControlTable::getAccessibleChild (this=0x5555586abdb0, nChildIndex=11)
    at /home/julien/lo/libreoffice/accessibility/source/extended/AccessibleGridControlTable.cxx:60
3  0x00002aaade2ee054 in accessibility::AccessibleGridControl::commitTableEvent (this=0x555557e97500, _nEventId=5, _rNewValue=uno::Any(void), _rOldValue=uno::Any(void))
    at /home/julien/lo/libreoffice/accessibility/source/extended/AccessibleGridControl.cxx:354

Seems a regression from https://cgit.freedesktop.org/libreoffice/core/commit/?id=0f32ba56a1e775e8ecd6c827ebd48f7f2fb51c81

Change-Id: Ia973eb381832da27ecc39fc5273f67a685d5a7bb
Reviewed-on: https://gerrit.libreoffice.org/32205
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
Tested-by: Julien Nabet <serval2412@yahoo.fr>
2016-12-19 23:23:43 +00:00
ba6b35fc68 accessibility: cleanup AccessibleBrowseBoxBase implementation
Change-Id: I5c9b96e2ebd2ac98dfa610346c1da89fbf56e2d2
Reviewed-on: https://gerrit.libreoffice.org/31916
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Tested-by: Noel Grandin <noel.grandin@collabora.co.uk>
2016-12-13 06:06:57 +00:00
8d52045853 tdf#93430: Return the right offsets for runs
MultiLineEdit is a special control which can have
more text portions with different text attributes.

Change-Id: Iab51dba0d0344fad4358f4961c968c031b1660b6
Reviewed-on: https://gerrit.libreoffice.org/31813
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Tamás Zolnai <tamas.zolnai@collabora.com>
2016-12-10 12:44:42 +00:00
e2c956d8e7 Edit accessibility: intended to use dynamic cast here
This is not necessarily a multilineedit.

Change-Id: Ibcbc104513bc6523e61efa5f3ff22efd3422e036
2016-12-09 13:09:05 +00:00
a564821eb9 Fix 32-bit builds
Change-Id: Ia9739aaf2d6d5d7083cf9b9aa7dc7819fbb0f941
2016-12-09 11:12:47 +01:00
e0d8c3821b tdf#93430: Cannot get accessible text attributes for 'Not in dictionary' entry
Change-Id: Iaa2b4fdb582025b763d43f0f24960e2ccee708e3
Reviewed-on: https://gerrit.libreoffice.org/31778
Reviewed-by: Tamás Zolnai <tamas.zolnai@collabora.com>
Tested-by: Tamás Zolnai <tamas.zolnai@collabora.com>
2016-12-09 09:16:17 +00:00
a66731982e convert SFX_HINT to scoped enum
Notes

(*) In SC, BULK_DATACHANGED was or'ed into the hint id. Replaced with a
dynamic_cast check.

(*) In SC, removed the hint id field from ScIndexHint, no point in
storing the hint id twice

(*) Fold the SfxStyleSheetHintId enum into the new SfxHintId enum, no
point in storing two different hint ids

(*) In some cases, multiple #define's used to map to the same SFX_HINT
value (notably the SFX_HINT_USER* values). I made all of those separate
values.

Change-Id: I990e2fb587335ebc51c9005588c6a44f768d9de5
Reviewed-on: https://gerrit.libreoffice.org/31751
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Tested-by: Noel Grandin <noel.grandin@collabora.co.uk>
2016-12-08 12:35:09 +00:00
a238c829b2 tdf#88206 replace cppu::WeakImplHelper* in unotools
[needs 288386f6986622461f28276ff7ff3e7172143159 "Another 'Do not export whole
class to avoid MS C++ implicitly exporting...'" to build with MSVC]

Change-Id: I8de7c4a1947ce91f9a629536e481c012e7c5c7ec
Reviewed-on: https://gerrit.libreoffice.org/31679
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2016-12-08 10:30:36 +00:00
2d48f5fc0a convert VCLEVENT constants to scoped enum
Change-Id: Ic8ccb0a9715ec05182dacddab2c015b0de6a0fba
Reviewed-on: https://gerrit.libreoffice.org/31675
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2016-12-07 07:10:39 +00:00
c1afa80bb3 tdf#99687: Find Text widget fails to emit object:text-caret-moved events
Must be an integration bug:
efb23f29983f87104a684e7fab00b84fc59d131d

Change-Id: I53b15975fb97a299103fab870307b03b2607e9e5
Reviewed-on: https://gerrit.libreoffice.org/31238
Reviewed-by: Tamás Zolnai <tamas.zolnai@collabora.com>
Tested-by: Tamás Zolnai <tamas.zolnai@collabora.com>
2016-11-26 17:27:08 +00:00
78b4a1fb01 update vclwidget loplugin to find ref-dropping assigment
Look for places where we are accidentally assigning a returned-by-value
VclPtr<T> to a T*, which generally ends up in a use-after-free.

Change-Id: I4f361eaca88820cdb7aa3b8340212db61580fdd9
Reviewed-on: https://gerrit.libreoffice.org/30749
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2016-11-11 06:55:41 +00:00
8955c3fde6 loplugin:oncevar
Change-Id: I44fb6858eeff14fcbd9fdfbbb0aabd1433b6a27d
Reviewed-on: https://gerrit.libreoffice.org/30668
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2016-11-08 06:11:51 +00:00
14301589d7 style fix for cppcheck redundantCondition
Change-Id: I5d02c6f4c6b411c23a6de43374884a76e1c408fe
Reviewed-on: https://gerrit.libreoffice.org/30667
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Tested-by: Noel Grandin <noel.grandin@collabora.co.uk>
2016-11-07 18:55:52 +00:00
49c7bc5af2 loplugin:expandablemethods in accessibility
Change-Id: I51d13c12274d99623b97f611e30204bea624cbfc
2016-11-01 14:54:13 +02:00
9ac8a57e52 replace <<= with assign for <<= with rhs Any
makeAny and Any ctor return an Any

Change-Id: Iaa361bc315d785f80153acf1009bf47d109728ec
Reviewed-on: https://gerrit.libreoffice.org/29914
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Jochen Nitschke <j.nitschke+logerrit@ok.de>
2016-10-17 15:39:13 +00:00
afd9bf19ae loplugin:refcounting
Change-Id: Ia7ec56c754d6eafcd4c6d981a0d8ca03af23a18e
2016-10-11 16:17:55 +02:00
99a4ab06a9 parent will definitely exist at ctor time
Change-Id: I3d30b17e4105a98ad6ab378cee7128cac23f1dc0
2016-10-11 10:08:27 +01:00
6c220995aa Resolves: tdf#103032 a11y crash on listbox dispose in toolbar dropdown
Change-Id: I70bce310ba9b46efdbdfdec8d2c6689d0ba2e655
2016-10-11 10:06:03 +01:00
708253a214 loplugin:unnecessaryoverride in accessibility..chart2
Change-Id: I14ba52fe8352f8bbdfcaa90177f4f3ac9f0e08b1
2016-10-05 13:13:06 +02:00
106ea87205 Remove _TYPED suffix from tools/link.hxx macros
...which was introduced with 3ead3ad52f9bb2f9d1d6cf8dfc73a0a25e6778ed "Gradually
typed Link" to distinguish the new, typed versions from the old, untyped ones,
but is no longer necessary since 382eb1a23c390154619c385414bdbe6f6e461173
"remove untyped Link<>" removed the old versions.

Change-Id: I494025df486a16a45861fcd8192dfe0275b1103c
2016-10-05 07:56:12 +02:00
7d8196ea2f perf: eliminate SfxSimpleHint and move to SfxHint, tdf#87101 related
There were over 150 places in *::Notify() functions that did some
dynamic_cast<SfxSimpleHint*> of which ~98% were unnecessary because the
base class SfxHint passed was an SfxSimpleHint anyway. dynamic_cast
operations come with quite some cost, so avoid if possible. Specifically
for ScFormulaCell::Notify() that created a bottleneck in scenarios where
cells were notified that already handled a previous notification. In
mass operations doing the dynamic_cast before it could be decided
whether having to act on it or not this made 2/3 of all time spent in
the Notify() call.

To get rid of that rename/move SfxSimpleHint to SfxHint and let classes
derive from SfxHint instead of SfxSimpleHint. This comes only with a
slight cost that an additional sal_uInt32 is transported in such hints,
initialized to 0, but this is neglectable compared to the huge gain.

For the rare cases where a Notify() actually expects both, an SfxHint
(formerly SfxSimpleHint) and a derived hint, this changed order of the
dynamic_cast involved so the simple SfxHint::GetId() is handled last.
Modules using such combinations can further optimize by treating the
simple SfxHint::GetId() first once verified that none of the other
derived hints use an ID not equal to zero respectively none of the ID
values the simple hint uses.

Change-Id: I9fcf723e3a4487ceb92336189d23a62c344cf0ce
Reviewed-on: https://gerrit.libreoffice.org/29205
Reviewed-by: Eike Rathke <erack@redhat.com>
Tested-by: Eike Rathke <erack@redhat.com>
2016-09-23 15:14:03 +00:00
0761f97525 loplugin:constantparam in accessibility to basic
Change-Id: Id77cbcaefebf310a5d99c6ac12d154e182fd0a1c
Reviewed-on: https://gerrit.libreoffice.org/28860
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Tested-by: Noel Grandin <noel.grandin@collabora.co.uk>
2016-09-14 08:46:12 +00:00
f1018190a8 tdf#88205 use list ctor for uno::Sequence a11y to canvas
Change-Id: Ib719c94c0488b8a48fdb013bc8fbd1a988595d18
Reviewed-on: https://gerrit.libreoffice.org/28866
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Tested-by: Noel Grandin <noel.grandin@collabora.co.uk>
2016-09-14 07:23:51 +00:00
6dd32d4274 chmod 644 some source files
Change-Id: Icd8821278635c1bd27b5185cddf5dc25dfba7eb4
2016-09-13 13:23:53 +02:00
91dd2db17b loplugin:override: No more need for the "MSVC dtor override" workaround
The issue of 362d4f0cd4e50111edfae9d30c90602c37ed65a2 "Explicitly mark
overriding destructors as 'virtual'" appears to no longer be a problem with
MSVC 2013.

(The little change in the rewriting code of compilerplugins/clang/override.cxx
was necessary to prevent an endless loop when adding "override" to

  OOO_DLLPUBLIC_CHARTTOOLS    virtual ~CloseableLifeTimeManager();

in chart2/source/inc/LifeTime.hxx, getting stuck in the leading
OOO_DLLPUBLIC_CHARTTOOLS macro.  Can't remember what that
isAtEndOfImmediateMacroExpansion thing was originally necessary for, anyway.)

Change-Id: I534c634504d7216b9bb632c2775c04eaf27e927e
2016-09-13 13:19:22 +02:00
f62d222869 tdf#43157 - Clean up OSL_ASSERT, DBG_ASSERT, etc.
Change-Id: I8114e338451b5b2e79b2318f558cbd075f024f08
Reviewed-on: https://gerrit.libreoffice.org/28584
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Michael Stahl <mstahl@redhat.com>
2016-09-05 12:53:19 +00:00
04a8ba2084 convert ScrollType to scoped enum
Change-Id: I6dd02d4f7df028dada6cfd5d767a6ec1b1c1efe1
2016-09-05 08:21:46 +02:00
ef699b4d41 convert SV_ITEM_ID_LBOX defines to scoped enum
and remove unused SV_ITEM_ID_EXTENDRLBOXSTRING

Change-Id: Ic84d9341d0225b01b9ef46814483c66b1af307b5
Reviewed-on: https://gerrit.libreoffice.org/28397
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2016-08-26 07:51:19 +00:00
3716b14426 loplugin:constantparam
Change-Id: Ia06b9b189033b9409d7a59a211866f66a0614886
Reviewed-on: https://gerrit.libreoffice.org/28016
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2016-08-11 06:05:32 +00:00
f5e3b7b0e4 loplugin:countusersofdefaultparams in accessibility,avmedia
Change-Id: Ic173f43c882384fe594e8ba3e44aedc3796a45f6
Reviewed-on: https://gerrit.libreoffice.org/27792
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
Tested-by: Noel Grandin <noelgrandin@gmail.com>
2016-08-04 05:48:30 +00:00
018e89337d Improve loplugin:unnecessaryoverride
<sberg> thorsten, remember what that "TODO" in
 SvxAccessibleTextPropertySet::getSupportedServiceNames was to be about exactly,
 in a909acb7009acadffa53e74ea05ddb88803490f1 ?
<thorsten> sberg: that's a nonsense, prolly copy'n'pasted, or a 'please review
 me'
<sberg> thorsten, OK, thanks (that override will eventually go away with
 loplugin:unnecessaryoverride, and the TODO comment be lost)

Change-Id: Iba964c61768459aac4067bbd4e1f7d4f78f6adac
Reviewed-on: https://gerrit.libreoffice.org/27232
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
Tested-by: Stephan Bergmann <sbergman@redhat.com>
2016-07-15 14:08:07 +00: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
38ae35db26 tdf#84635 - Slow layout of large tables
Based on suggestion from Aron Budea.
And do something similar to most other places keeping vectors
of weak references where the code looks like it will hold more than
a few entries.

Measurements:
the 26 page file file takes
    51s without my path
    15s with this patch
the 69 page file file takes
    5m28 without my path
    51s with this patch
the 84 page file file takes
    8m28 without my path
    58s with this patch

Change-Id: I8da94c525fc73ebd969e0343c6f074be4f0063b1
Reviewed-on: https://gerrit.libreoffice.org/27093
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2016-07-13 13:08:16 +00:00
52b91f3454 new loplugin fragiledestructor
fix up a small number of places that it finds

Change-Id: Iedc91e141edfb28f727454f698cd2155a7fd5bf4
Reviewed-on: https://gerrit.libreoffice.org/26566
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2016-07-12 08:45:14 +00:00
0e69b6bcc5 so the global Application GetAutoMnemonic is always true, simplify
Change-Id: I6c23273bd02841f72b489535f8a546e561df94e8
2016-07-10 19:12:39 +01:00
cd71034b26 comphelper::OBaseMutex -> cppu::BaseMutex
convert usage of deprecated class, and remove the old class

Change-Id: I19fb9271090d19e5531622b58492e1a848d306e2
Reviewed-on: https://gerrit.libreoffice.org/26843
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2016-07-04 06:49:07 +00:00
428e23f4f7 Fix some spelling errors in comments and strings
Change-Id: Iecd6b5e13d6be14651f77d8e37f01117ba15a11e
Reviewed-on: https://gerrit.libreoffice.org/26883
Reviewed-by: jan iversen <jani@documentfoundation.org>
Tested-by: jan iversen <jani@documentfoundation.org>
2016-07-04 06:11:36 +00:00
85aa807316 tdf#88205: Adapt uses of css::uno::Sequence to use initializer_list ctor
Change-Id: I45b0ae284ccd34f53ee93114ae45ebacd212251f
Reviewed-on: https://gerrit.libreoffice.org/26857
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
Tested-by: Stephan Bergmann <sbergman@redhat.com>
2016-07-01 15:26:58 +00:00
9742ee52a8 tdf#88205: Adapt uses of css::uno::Sequence to use initializer_list ctor
Change-Id: I6fc54accb6c08e34909db2131e0abc84d32da2f5
Reviewed-on: https://gerrit.libreoffice.org/26763
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2016-06-29 14:45:01 +00:00
aa0d0536a4 tdf#97527 - vcl: reference-count Menu
some places are marked with "dodgy"- need to check those to see
what is going on, because they are leaving dangling pointers behind
in the Menu class

Change-Id: I41d5c7c0fec2f70ce9e3ffdc48cd03d26c0a869b
Reviewed-on: https://gerrit.libreoffice.org/26516
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2016-06-23 06:28:00 +00:00
0f32ba56a1 Resolves: tdf#100272 row ally index is ROW_INVALID
which is < 0 so bad things happen, consider ROW_INVALID/COL_INVALID before
looking for a11y child at that index

Change-Id: I16a9d86879e1a894c63932705c056268e98db7aa
2016-06-11 15:53:12 +01:00
4d49c9601c Let loplugin:passstuffbyref also look at fn defn not preceded by any decl
Change-Id: I752bc96d2d521d790e919283cabb14b6526626f4
2016-06-08 17:14:34 +02:00
c47b170c71 Convert SelectionMode to scoped enum
Change-Id: I86c435de3918540cb54a0cb24568e58456c2f9d1
Reviewed-on: https://gerrit.libreoffice.org/25611
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2016-05-30 06:41:28 +00:00
e0849330bc Get rid of unnecessary directory levels $D/inc/$D
Change-Id: Ibf313b8948a493043006ebf3a8281487c1f67b48
Reviewed-on: https://gerrit.libreoffice.org/25532
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Tor Lillqvist <tml@collabora.com>
Tested-by: Tor Lillqvist <tml@collabora.com>
2016-05-27 17:10:45 +00:00