Commit Graph
6763 Commits
Author SHA1 Message Date
Maxim Monastirsky b769152dca tdf#96444 Shortcuts are saved with non-parsed URL
MenuBarManager overwrites the item URL with the parsed
version. This causes the keyboard shortcuts of style
commands to no longer be found on subsequent opening of
the menu, because they have spaces, which in the parsed
version were replaced with "%20".

Change-Id: I80b559203742922f70b7cec54b5a5ae57d3ef7dd
2017-05-14 14:07:17 +03:00
Maxim Monastirsky b91fb08fd6 tdf#106999 Feedback for style commands
The .uno:StyleApply command takes some arguments, which make
it possible to apply any style of any type. The problem is
that it doesn't provide toggle state to be used when placing
such commands on a toolbar or a menubar. The reason is that
sfx2, by design, can provide status updates only for the
.uno:StyleApply command as a whole, ignoring any arguments
that might be specified in the UI element description. This
behavior is even documented in the XDispatch idl.

wrt solution, changing the generic UI code to handle the
specifics of an individual command can never be a good idea.
The usual approach in such cases is to create separate
commands which will handle the status updates correctly. This
is however not possible in our case because styles can be
created by users, and we can't predict their names and create
separate commands for all of them (given that now it's easy to
add style commands to toolbars and menus - see tdf#106681).

One possible solution is to create a toolbar button controller
on top of .uno:StyleApply, which will be able to translate its
status update to a state compatible with the toolbar. The downside
is that it won't work when placing such command inside a menu, and
in general the menu code in framework doesn't provide any way to
control individual menu items, only a whole sub-menus via a
popup menu controller.

To fix the menu use-case too, this commit introduces a "proxy"
dispatch implementation, which can be used by MenuBarManager
in a transparent way, as if it was the "real" application-level
dispatcher. This means that the changes needed in MenuBarManager
are minimal and do not over-complicate the code, which is a good
thing (Alternatively, such dispatcher could be registered via
the dispatch interception mechanism, but it will add no gain,
given the current requirements, and just add more complexity).
And to make it easier to reuse the code, the new dispatcher
is also used for the toolbar solution.

Change-Id: Ia73b0fa70fd4d1d59360b255aa8fd19570b971ee
Reviewed-on: https://gerrit.libreoffice.org/37590
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Maxim Monastirsky <momonasmon@gmail.com>
2017-05-14 11:08:35 +02:00
Maxim Monastirsky c606bacc58 Allow destroying old MenuBarManager instances
... after dispatch interception change.

To reproduce:

1. Open the testdoc of tdf#102355
2. If not under gtk3 - Open several menus or sub menus.
3. Click the "Intercept" button.
4. Tools > Customize.. > Menus, make some change, click OK.

Expected that old MenuBarManagers (except the top level) are
destructed, and new ones are created. Actually the dtors of
MenuBarManagers from step 2 aren't called (but they will be
eventually called after closing Writer).

The reason we keep active status listening is mainly for
Unity's HUD (see my comment in MenuBarManager::Activate).
But it assumes that Activate was called for all menus,
which is done by GtkSalMenu at application startup,
but not after dispatch interception change. Should we fix
that, or maybe we can just kill this hack (along with
some related code in GtkSalMenu) anytime soon, given
that Unity is officially dead?

Change-Id: Ia1cb24391b393e31c98355dc91833c7511a17cda
Reviewed-on: https://gerrit.libreoffice.org/37589
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Maxim Monastirsky <momonasmon@gmail.com>
2017-05-14 11:07:29 +02:00
Maxim Monastirsky c7c445e93b Remove useless m_xContext.is() check
Similar to commit 3268092322 ("Fix the copy-paste").
The original code was using this to get URLTransformer,
but it was later switched to using m_xURLTransformer
in ca00697e3d ("CWS-TOOLING: integrate CWS oj18").

Change-Id: I05592915a651a9d8e0fc443f6adeb494704a99d8
Reviewed-on: https://gerrit.libreoffice.org/37588
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Maxim Monastirsky <momonasmon@gmail.com>
2017-05-14 11:06:47 +02:00
Noel Grandin 389da66dfc remove unused uno::Reference vars
found by temporarily marking Reference as SAL_WARN_UNUSED.

Change-Id: I18809b62654467f890016adcc92576980ced393b
Reviewed-on: https://gerrit.libreoffice.org/37511
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-05-12 09:56:01 +02:00
Caolán McNamara a99707d2c4 Resolves: rhbz#144437 make gnome-documents not crash the whole time
accept that once initted that LibreOffice cannot be deinitted and reinited
(without lots of work), but allow the main loop to quit and restart so LOKs
thread can run and exit successfully, new LOK connections will restart the main
loop.

The buckets of global state continues to be valid the whole time this way

Change-Id: Ide54c0df2ce4065f7c192ae8c2cedfaaa2b58d72
Reviewed-on: https://gerrit.libreoffice.org/37399
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
2017-05-10 15:28:16 +02:00
Jochen Nitschke 959496794c cleanup osl/diagnose.h includes
with command
> git grep -l osl/diagnose.h *.cxx |
  xargs grep -L -w 'OSL_\w*' |
  xargs sed -i '/#include *\(<\|\"\)osl\/diagnose.h\(>\|\"\).*/d'

headers need more work

Change-Id: I906519ebbd47a04703b4fa5943b2f7abea7a97ab
Reviewed-on: https://gerrit.libreoffice.org/37350
Tested-by: Jochen Nitschke <j.nitschke+logerrit@ok.de>
Reviewed-by: Michael Stahl <mstahl@redhat.com>
2017-05-09 15:41:46 +02:00
Noel Grandin 719a2adfbd remove unnecessary empty OUString fields and vars
Change-Id: I940120087a0bc6b1b0abc30a3e7727ce22b7d9a7
Reviewed-on: https://gerrit.libreoffice.org/37394
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-05-09 08:28:56 +02:00
Jochen Nitschke b3eb843766 cleanup tools/debug.hxx includes
with command
> git grep -l tools/debug.hxx |
  xargs grep -L DBG_ |
  xargs sed -i '/#include *\(<\|\"\)tools\/debug.hxx.*/d'

don't change files in includes/ and */pch

Change-Id: Ie429d6a7dca5dfa1073e0f5ba037f7c84bdbec08
Reviewed-on: https://gerrit.libreoffice.org/37349
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-05-08 08:33:01 +02:00
Chris Sherlock 97eb00c75e revert OSL_ASSERT changes
Change-Id: I365d140446bd2a62cf8256acbfdd53fe72987380
2017-05-07 17:03:35 +10:00
Chris Sherlock ddce1e22fb tdf#43157: convert framework module away from OSL_ASSERT to assert
Change-Id: Iac0093a2a69d53c91c827ebba01fcdb5353e9b96
2017-05-07 09:54:46 +10:00
Andrea Gelmini a940826162 Fix typos
To complete commit 0ef94e2b55
and f12096272e

Change-Id: Ie86bbfbd58dd728a013bef221e4d5c8fbcaf8e03
Reviewed-on: https://gerrit.libreoffice.org/37199
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2017-05-05 23:35:06 +02:00
Noel Grandin 076758857a fix spelling, methode -> method
Change-Id: I1c7a4e657601e28d9d50d86e24c4e0ba7579b9d4
Reviewed-on: https://gerrit.libreoffice.org/37289
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-05-05 15:39:08 +02:00
Noel Grandin 68e213319f remove empty comments
found with:
   git ls-files | xargs grep -Pzl '/\*\*
(\*|\s|
)*\*/'

Change-Id: I1f47bcb94d5a7b290a6c622c6941195fbb578597
Reviewed-on: https://gerrit.libreoffice.org/37159
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-05-03 09:07:36 +02:00
Noel Grandin 666403a4b6 loplugin:checkunusedparams in framework
Change-Id: I963159550da9d735bb70636917ecc290744298b4
Reviewed-on: https://gerrit.libreoffice.org/37142
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-05-02 14:25:25 +02:00
Stephan Bergmann c561a6a636 loplugin:salunicodeliteral: framework
Change-Id: I80665b97a7fb278dd9a1e9cc0fc48174ce18b4a9
2017-04-28 18:26:59 +02:00
Caolán McNamara 99f0165c8b fwk_services.src doesn't exist
since

748ed65ffb

Change-Id: Ief2efad17b3f485aeb975257e120ce20e67fb5b8
2017-04-27 13:29:58 +01:00
Caolán McNamara dd1df645b4 remove svx bitmaps from .src files
Change-Id: Ie3795870484648e62dea483f9976af31cd1be167
Reviewed-on: https://gerrit.libreoffice.org/37006
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
2017-04-27 10:50:48 +02:00
Maxim Monastirsky 17026b7073 Use ToolBox::GetImageSize
Change-Id: Iaad0ca0e3957e54f11dfa1687b33b08239451bfb
2017-04-27 08:58:57 +03:00
Maxim Monastirsky 3268092322 Fix the copy-paste
Use m_xUrlTransformer, and drop the now unneeded m_xContext.is()
check.

Here is the history of this:

- commit ef8f9cfb26 (CWS docking1) introduced this code in
  ToolboxController::execute.

- commit a2bbbc5130 (CWS docking3) copy-pasted this into
  GenericToolbarController::execute.

- commit 0fc90c8a06 (CWS insight02) changed the original
  code, but not the copy-pasted one.

- commit d7afd8e128 (CWS toolbars2) That CWS didn't have
  the above change yet, and copy-pasted the old code to yet
  another place (GenericToolboxController::execute).

Change-Id: I7f4e8dfb52b96ea5285ea7b2bb3083847dd84932
2017-04-27 08:58:10 +03:00
Caolán McNamara 5fc07f0781 remove framework bitmaps from .src files
Change-Id: Iea85517a60874d49cdf60860071f0924b96cbf62
Reviewed-on: https://gerrit.libreoffice.org/36966
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
2017-04-26 10:02:55 +02:00
Noel Grandin c70d49c7c8 use strong_int for LanguageType
Change-Id: If99a944f7032180355da291ad283b4cfcea4f448
Reviewed-on: https://gerrit.libreoffice.org/36629
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-04-26 08:50:54 +02:00
Chris Sherlock 3b85b72d64 errinf.hxx moved out of tools and into vcl module
ErrorInfo has a hard depency on VCL, yet is in the tools package. It is more
appropriate to have it reside in the VCL module.

Change-Id: Ica54a46c3a7f86cf0331ed7245234bea69c05650
Reviewed-on: https://gerrit.libreoffice.org/36839
Reviewed-by: Chris Sherlock <chris.sherlock79@gmail.com>
Tested-by: Chris Sherlock <chris.sherlock79@gmail.com>
2017-04-25 10:55:17 +02:00
Chris Sherlock da64d198ec tools: svstream.hxx needs only errcode.hxx & not errinf.hxx
Change-Id: Ia28e35ae5af4f601e9a586a3deffbcd61702b0ca
Reviewed-on: https://gerrit.libreoffice.org/36896
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Chris Sherlock <chris.sherlock79@gmail.com>
2017-04-25 09:31:31 +02:00
Maxim Monastirsky fb698d5e81 Replace GetImage with CommandInfoProvider::GetImageForCommand
And move ToolBoxButtonSize->ImageType mapping code to a
common place.

Change-Id: If158f4b6f2750054fcf64491c2941706e7d3a329
2017-04-23 19:50:15 +03:00
Maxim Monastirsky 94490fdf76 tdf#95845 Use CommandInfoProvider
And a few unused theUICommandDescription includes.

Change-Id: Ic80dbfb91e5e7662723efe0cb4090416994adabd
2017-04-23 19:50:14 +03:00
David Ostrovsky de030cd7a2 gbuild: Remove MSVC 2013 legacy code
Uwinapi is discontinued.

Change-Id: I063b4d0d8fab2d60de168e960a63b8181158ac01
Reviewed-on: https://gerrit.libreoffice.org/23198
Reviewed-by: David Ostrovsky <david@ostrovsky.org>
Tested-by: David Ostrovsky <david@ostrovsky.org>
2017-04-21 18:18:44 +02:00
Noel Grandin 841e1a6f36 remove some old MSVC workarounds
Change-Id: I6abd8aaffb27b3c85df7c0518f7f576be4e32222
Reviewed-on: https://gerrit.libreoffice.org/36660
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-04-21 09:14:45 +02:00
Noel Grandin b2764a9b66 convert EDynamicMenuType to scoped enum
and drop unused E_HELPBOOKMARKS

Change-Id: I5756ea326bdc1a99f7d6f1ba43baf6aca9f7f2fc
Reviewed-on: https://gerrit.libreoffice.org/36728
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-04-20 12:55:51 +02:00
Noel Grandin 1c5cae479b loplugin:unusedmethods
Change-Id: Ib7a9b1b0802ca751da258065e89b412b090bb672
Reviewed-on: https://gerrit.libreoffice.org/36718
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-04-20 10:07:10 +02:00
Noel Grandin 447a013299 clang-tidy readability-simplify-boolean-expr in dbaccess..framework
Change-Id: I96e1bd4000f4ade6ccfac53c57653772b249df99
Reviewed-on: https://gerrit.libreoffice.org/36678
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-04-19 14:52:50 +02:00
Caolán McNamara 2b83e73fd7 remove freshly unused menu support from src files
Change-Id: I038711a0c4d440d452d5b2ae1bfcba5c9305815b
Reviewed-on: https://gerrit.libreoffice.org/36646
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
2017-04-19 13:42:07 +02:00
Caolán McNamara 13bf3cb129 convert over weird hidden RID_FMSHELL_CONVERSIONMENU use to new .ui
Change-Id: I61691a4148c1ff38703bb0d6ad9169242eb09871
2017-04-19 08:49:23 +01:00
Andrea Gelmini 9f5a275a42 Fix typos
Change-Id: I0238202c0dc0380b0e33a9c4567a9513c0afbe91
Reviewed-on: https://gerrit.libreoffice.org/36556
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Tested-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-04-15 10:13:34 +02:00
Caolán McNamara c6e96bb451 rework POPUPMENU_TOOLBAR_QUICKCUSTOMIZATION
don't create a menu in order to copy certain entries under certain
conditions to another menu, just insert the specific entries
from more elemental parts

Change-Id: I2254753fdc374742422afdb40fed7e78ae5dfbb2
2017-04-14 11:51:32 +01:00
Andrea Gelmini 3c3f7d784e Removed duplicated includes
No automatic tools. Manual checked and tested.

Change-Id: Ife260fa4e1d786cf81f2917a901664cc54943754
Reviewed-on: https://gerrit.libreoffice.org/36371
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2017-04-13 07:46:16 +02:00
Caolán McNamara b2af27abaf update test to pass now that .ui files are found
with 506cab1a01

"take the .ui files from $BRAND_BASE_DIR/$BRAND_SHARE_SUBDIR"

in place .ui files are found and the count here changes,

reverting the above makes it pass, but also reverting
08cf2fd010 (framework: last dispatchInterceptor
gets asked first, 2016-05-20) that this test wants to test also passes

Change-Id: I01f5b77065e9562619412824bf69494b7b672b68
2017-04-12 17:04:41 +01:00
Noel Grandin 5676ced825 make UNO enums scoped for internal LO code
this modifies codemaker so that, for an UNO enum, we generate code
that effectively looks like:

   #ifdef LIBO_INTERNAL_ONLY && HAVE_CX11_CONSTEXPR
       enum class XXX {
           ONE = 1
       };
       constexpr auto ONE = XXX_ONE;
   #else
      ...the old normal way..
   #endif

which means that for LO internal code, the enums are scoped.

The "constexpr auto" trick acts like an alias so we don't have to
use scoped naming everywhere.

Change-Id: I3054ecb230e8666ce98b4a9cb87b384df5f64fb4
Reviewed-on: https://gerrit.libreoffice.org/34546
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-04-04 06:38:03 +00:00
Julien Nabet 4c16651356 Replace OSL_FAIL by SAL_WARN_IF
+ simplify message and code to create it

Change-Id: I40cc0c1bf62a974ad5a5c5f27c4ed78c822390fa
Reviewed-on: https://gerrit.libreoffice.org/35984
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
Tested-by: Julien Nabet <serval2412@yahoo.fr>
2017-04-01 08:06:58 +00:00
Miklos Vajna a5a571307f tdf#82580 tools: rename Rectangle to tools::Rectangle
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>
2017-03-31 06:27:11 +00:00
Justin Luth 17d821af6b spelling in comments: minmal -> minimal
Change-Id: Ie1947782cd7679c0c979d01ee7776176d771fc04
Reviewed-on: https://gerrit.libreoffice.org/35925
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Justin Luth <justin_luth@sil.org>
2017-03-31 06:02:03 +00:00
Jochen Nitschke da56de9ac4 remove type decorations on char literals
they are only needed where type deduction fails.
left them in defines for now.

Change-Id: I7f002dd6bc7acc083c73b6c64076de6dd28d0b09
Reviewed-on: https://gerrit.libreoffice.org/35893
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2017-03-30 12:21:40 +00:00
Jens Carl ad3681df0a tdf#39468 Translate German comments
Translate German comments and terms in dbaccess/, forms/, fpicker/, framework/,
and idl/

Change-Id: I08b3db9492f16fc1c457e8f5eff838c13561c945
Reviewed-on: https://gerrit.libreoffice.org/35888
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Michael Stahl <mstahl@redhat.com>
2017-03-30 10:27:35 +00:00
Noel Grandin 9bfd742d8c loplugin:unusedmethods
Change-Id: Ib008613fb06c82791c63d5b074a3e2ff1c3607a0
Reviewed-on: https://gerrit.libreoffice.org/35834
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-03-29 11:43:40 +00:00
Maxim Monastirsky 91053763a7 Fix sub-toolbar tearoff for .uno:ChooseControls
Regression of 81d4fbc0da
("tdf#42029 Use a floating toolbar to show clipped items").

Change-Id: Id32a49109477745122d78354a5d3bd94cb126310
2017-03-26 16:29:56 +03:00
Andrea Gelmini 74d67cffec Fix typos
Change-Id: I63ae7dbd7edf66aa5542f7d41f1bfd8ac04fc5e8
Reviewed-on: https://gerrit.libreoffice.org/35631
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
Tested-by: Julien Nabet <serval2412@yahoo.fr>
2017-03-25 08:50:08 +00:00
Noel Grandin 7916487cf4 convert ViewShellId to o3tl::strong_int
Change-Id: I45553d11d56aa8c4432aec126ca51f24bd3ead09
Reviewed-on: https://gerrit.libreoffice.org/35421
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-03-24 06:14:17 +00:00
Noel Grandin ed76d1d350 loplugins:redundantcast teach it about c-style typedef casts
Change-Id: I1ac11a2481c0f4d8be1e1fd7c7637ac0ece3d65c
Reviewed-on: https://gerrit.libreoffice.org/35558
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-03-23 09:48:10 +00:00
Noel Grandin 7299481834 loplugin:redundantcast find redundant c-style enum casts
Change-Id: I2dab376d87804521aed6b6bd41ad7762830fa349
Reviewed-on: https://gerrit.libreoffice.org/35467
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-03-22 06:47:35 +00:00
Julien Nabet 7b3825c66e Typos
Change-Id: Id1b96b56b16ebf2d8a99dd6fb64c73906dfd598f
Reviewed-on: https://gerrit.libreoffice.org/35435
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
Tested-by: Julien Nabet <serval2412@yahoo.fr>
2017-03-19 19:24:52 +00:00