summaryrefslogtreecommitdiff
path: root/include/sfx2/sidebar/SidebarController.hxx
AgeCommit message (Collapse)Author
2018-10-10Unhardcode sidebar used customizable key bindingsJim Raykowski
Change-Id: Ia3bc171e2c9805955394fac274de382c3f87d35f Reviewed-on: https://gerrit.libreoffice.org/61564 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2018-09-11loplugin:constantparamNoel Grandin
Change-Id: Ia11bf93768d5f722b7fe62df15f24809cb7e7f04 Reviewed-on: https://gerrit.libreoffice.org/60280 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-08-29tdf#119461 Fix focus hidden on deck collapseJim Raykowski
Makes Space key behavior the same as mouse click. Focus remains on the tab button when the deck collapses. Makes Enter key never collapses the deck but to open if collapsed and always place focus on the first panel title. Change-Id: Id6d7624e88b421dcfc62f3d0e79986f10c76a65d Reviewed-on: https://gerrit.libreoffice.org/59616 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2018-04-24Prep mouse event handler to indicate dragging startedKatarina Behrens
Change-Id: Icdb865e511047b166767ca9e87e808c308ad7643 Reviewed-on: https://gerrit.libreoffice.org/53324 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Katarina Behrens <Katarina.Behrens@cib.de>
2018-03-27tdf#115786: Fix reopening undocked sidebarKatarina Behrens
while trying hard to keep tdf#88241 fixed. Had to introduce yet another bool variable as now that previously active sidebar deck is remembered (= it is visible when floating window opens) it's impossible to tell whether sidebar was already opened or not Change-Id: If2c9edfa2f9beb400537b106d3094f256b0cc183 Reviewed-on: https://gerrit.libreoffice.org/51866 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Katarina Behrens <Katarina.Behrens@cib.de>
2017-04-25tools: svstream.hxx needs only errcode.hxx & not errinf.hxxChris Sherlock
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-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>
2017-01-31Resolves: tdf#104884 print preview replaces the frame controllerCaolán McNamara
so the sidebar is listening to the old controller which has been disposed[1] so when print preview exits and yet another controller replaces the print preview one then the sidebar still doesn't listen to the current one. framework broadcasts COMPONENT_DETACHING/COMPONENT_REATTACHED around these changes, so if we listen to them we can keep attached to whatever is the current component [1] note that ContextChangeEventMultipler doesn't inform clients that the controller has been disposed, this remains unchanged here Change-Id: I141509d4a262307afd7dcfc3d77de6cdd6dbfa5f Reviewed-on: https://gerrit.libreoffice.org/33758 Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2017-01-26Remove dynamic exception specificationsStephan Bergmann
...(for now, from LIBO_INTERNAL_CODE only). See the mail thread starting at <https://lists.freedesktop.org/archives/libreoffice/2017-January/076665.html> "Dynamic Exception Specifications" for details. Most changes have been done automatically by the rewriting loplugin:dynexcspec (after enabling the rewriting mode, to be committed shortly). The way it only removes exception specs from declarations if it also sees a definition, it identified some dead declarations-w/o-definitions (that have been removed manually) and some cases where a definition appeared in multiple include files (which have also been cleaned up manually). There's also been cases of macro paramters (that were used to abstract over exception specs) that have become unused now (and been removed). Furthermore, some code needed to be cleaned up manually (avmedia/source/quicktime/ and connectivity/source/drivers/kab/), as I had no configurations available that would actually build that code. Missing @throws documentation has not been applied in such manual clean-up. Change-Id: I3408691256c9b0c12bc5332de976743626e13960 Reviewed-on: https://gerrit.libreoffice.org/33574 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2016-12-20Don't use 'this' in ctorStephan Bergmann
Change-Id: I405160743609aae92a37b2359bea5aa42ee66519
2016-12-20ODR violationStephan Bergmann
Change-Id: Ia56bd463c83c0aedcc7f4e9cf1b65c57104d78f2
2016-10-05Remove _TYPED suffix from tools/link.hxx macrosStephan Bergmann
...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-09-29tdf#88206 replace cppu::WeakImplHelper* in sfx2 and svlJochen Nitschke
some fallout in include/editeng/unotext.hxx which uses WeakAggImplHelper1 from implbase1.hxx Change-Id: I7237c46c1eb17752c63eeddc6a3aee41788fbbd2 Reviewed-on: https://gerrit.libreoffice.org/29374 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2016-09-13loplugin:override: No more need for the "MSVC dtor override" workaroundStephan Bergmann
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-08-22GSoC: tdf#101249 Toolbar Mode switchingSzymon Kłos
+ added registry entry for storing current toolbar mode for each application + registry entries to store toolbar mode configuration, remember additional visible toolbars activated by user + changing toolbar mode hides and shows suitable toolbars + added menu controller for toolbar mode + notebookbar implementation entries are disabled when notebookbar mode is not active + each mode can open/collapse the sidebar Change-Id: I2b03f87c6dce53190d12102892d9ad30fbfd3bf6 Reviewed-on: https://gerrit.libreoffice.org/27991 Reviewed-by: Samuel Mehrbrodt <s.mehrbrodt@gmail.com> Tested-by: Samuel Mehrbrodt <s.mehrbrodt@gmail.com>
2016-06-24loplugin:singlevalfields in sfx2Noel Grandin
Change-Id: Ice6d47ccbc3ebf8971887b8b64c0d6860c76eec8 Reviewed-on: https://gerrit.libreoffice.org/26602 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2016-06-23tdf#97527 - vcl: reference-count MenuNoel Grandin
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-03OpenThenSwitchToDeck actually *toggles* deck visibilityCaolán McNamara
so rename it to that and add a OpenThenSwitchToDeck that actually does that, using the Toggle varient as the callback from the sidebar button which toggles the current deck on/off which retains the features of // tdf#67627 Clicking a second time on a Deck icon will close the Deck // tdf#88241 Summoning an undocked sidebar a second time should close sidebar but means that calls to OpenThenSwitchToDeck from e.g. slide layout don't auto close it if that deck is already open Change-Id: I3e3724626b93447a7ab6bc7032e9c6839dabcf55
2016-04-13loplugin:passstuffbyref in sfx2Noel Grandin
Change-Id: I8c9d6e972f74ee04c8befda3b4cabb6e9b6b2054
2016-04-11clang-tidy performance-unnecessary-value-param in sfx2Noel Grandin
Change-Id: I035eec1f3701c48b9a85c60400c68f9365299b48
2016-03-14tdf#97885 SIDEBAR: Message missing from blank properties tabFabio Buso
Change-Id: If810c351644ef80d3882b34861fde0400236bdf3 Reviewed-on: https://gerrit.libreoffice.org/23127 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Katarina Behrens <Katarina.Behrens@cib.de>
2016-01-10Fix typosAndrea Gelmini
Change-Id: I9a5940027423ff0791fa7da0b79b617412ce6b86 Reviewed-on: https://gerrit.libreoffice.org/21209 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Ashod Nakashian <ashnakash@gmail.com>
2015-11-20tdf#67770 store sidebar elements statesLaurent Godard
deck & panel states at user registry level when disposing a sidebar if a shared deck (with "any" context application) is modified, it apply to all applications (eg. Gallery between calc and writer); TODO ? clean ResourceManager Get/Set const/non-const add panels when deck is created & refactoring * macro example Sub Main controller = thisComponent.currentcontroller sidebar = thisComponent.currentcontroller.getSidebar() sidebar.setVisible(true) decks = sidebar.getdecks() deck = decks.getByName("PropertyDeck") deck.activate(true) deck.setTitle("new deck title") deck.moveLast() panels = deck.getPanels() panel = panels.getByName("TextPropertyPanel") panel.setTitle("new panel title") panel.expand(true) ' expand and collapse other panel.moveLast() End Sub Change-Id: I2552000af92a366ebb51a479962a094b72e400b6 Reviewed-on: https://gerrit.libreoffice.org/17992 Reviewed-by: Katarina Behrens <Katarina.Behrens@cib.de> Tested-by: Katarina Behrens <Katarina.Behrens@cib.de>
2015-10-29remove boost::noncopyable from /includeNoel Grandin
Change-Id: I9fa22b06fabf79043ebc68be7afebc6e810f4db1
2015-10-21afl-eventtesting + VclPtr: only current context decks getting disposedCaolán McNamara
but they all have to go, not just the current one Change-Id: I84819c2a74042ad028fbdd8acba5d925c7fdedab
2015-10-12Replace "SAL_OVERRIDE" with "override" in LIBO_INTERNAL_ONLY codeStephan Bergmann
Change-Id: I2ea407acd763ef2d7dae2d3b8f32525523ac8274
2015-10-09correctly dispose the chart sidebar when leaving chart, tdf#94292Markus Mohrhard
This is a much better approach than my old one that tried to use the correct XModel with the chart sidebar. Now everytime we leave the chart edit mdoe we destroy the chart sidebar panels and recreate them when we go back to chart edit mode. As a result we no longer need to have worry that much about using the correct ChartModel and about the lifecycle of the ChartModel. Change-Id: Ie85ad82968e20a81f059d4bd930a83a70da35fc9
2015-09-20convert Link<> to typedNoel Grandin
Change-Id: I10b050dc4aae45e646761a82520caa96969bc511 Reviewed-on: https://gerrit.libreoffice.org/18700 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2015-09-14boost->stdCaolán McNamara
Change-Id: I3fd9e1599c5ad812879a58cf1dabbcd393105e1c Reviewed-on: https://gerrit.libreoffice.org/18564 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2015-09-07convert Link<> to typedNoel Grandin
Change-Id: I38f2c15b4f8bb1d7187b019d26a2644b087898c1 Reviewed-on: https://gerrit.libreoffice.org/18357 Reviewed-by: Noel Grandin <noelgrandin@gmail.com> Tested-by: Noel Grandin <noelgrandin@gmail.com>
2015-08-11Related: tdf#78111 Try to guard against too wide panel layoutsMaxim Monastirsky
The sidebar has width limit, so a panel shouldn't attempt to resize more than that. Otherwise we'll get an endless loop. Change-Id: Ia36535637e3585595c673c7fc46a1a7b162b74ba
2015-07-26handle more than one chart with chart sidebarMarkus Mohrhard
Change-Id: I4998904a9273f2c67114a246d7f234843602573c
2015-07-14sfx2: remove the global SidebarController::maSidebarControllerContainerMichael Stahl
This global was crashing on exit, unsurprising as it contains UNO services that reference VCL objects. It turns out that there is already a UNO singleton framework::ContextChangeEventMultiplexer that effectively contains this mapping already, so try to hook that up without creating a public API of it, which is made quite a bit harder by framework's inexplicable multitude of libraries. Change-Id: I4baf67b42c630191fa8879d650eeb62520c331a5
2015-07-12use correct controller for sidebarMarkus Mohrhard
As we now allow non-frame controllers we need to use them as well in this place. Change-Id: I0d86cdf73f8c044816def0aaafb874e75985aae5
2015-07-12finally manage to register chart2 in the ChartControllerMarkus Mohrhard
We need to do some jumps through pink hoops to connect the chart controller with the host sidebar. Would we use the chart window as parent for our sidebar the sidebar would be directlz beside the chart and not at the border of the host window. Change-Id: Ica44ae370518882ef367999f57251b1256907016
2015-07-12add methods to add random controllers to sidebarMarkus Mohrhard
Change-Id: Ia3e80cc63491f1edd49eaf86cc8c25d67e4a8b28
2015-07-12use XController instead of XFrame where it makes senseMarkus Mohrhard
Change-Id: I22990c861c0dd9d9dab3fbdbc35fdb2b51e82005
2015-06-23Uno api sidebar unit test tdf#91806Laurent Godard
- python test subsequentcheck - correct deck setTitle APi (UI update) - enhance UnoInProcess for flexiility in loading parameter Change-Id: Id04cb78c6162ac84fb3bfd8577f84763109d993e Reviewed-on: https://gerrit.libreoffice.org/16180 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
2015-06-22-Werror,-Wunused-private-fieldStephan Bergmann
Change-Id: I47416559cc3d6c6679e1f9df3f24a24385903e04
2015-06-22new uno sidebar api tdf#91806Laurent Godard
the entry point is SfxBaseController::getSidebar() the Decks and panels are now per SidebarController and not global anymore ' macro example Sub testSidebarApi controller = thisComponent.currentcontroller frameIni = thisComponent.currentcontroller.frame sidebar = thisComponent.currentcontroller.getSidebar() sidebar.setVisible(true) frame = sidebar.getFrame() decks = sidebar.getdecks() c = decks.count h = decks.hasElements() e = decks.getElementNames() a = decks.hasByName("MyDeck") deck = decks.getByName("MyDeck") deck.activate(true) t = deck.getTitle() deck.setTitle("new deck title") deck.moveFirst() deck.moveLast() deck.moveUp() deck.moveDown() index = deck.getOrderIndex() panels = deck.getPanels() ep = panels.getElementnames() ap = panels.hasByName("aPanelName") panel = panels.getByName("aPanelName") panel.setTitle("new panel title") panel.collapse() panel.expand(true) ' expand and collapse other index = panel.getOrderIndex() panel.moveLast() panel.moveFirst() panel.moveDown() panel.moveUp() End Sub Change-Id: I7a4b953f2277dea483bb296ba6ead35de7205ace Reviewed-on: https://gerrit.libreoffice.org/15856 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Tomaž Vajngerl <quikee@gmail.com> Tested-by: Tomaž Vajngerl <quikee@gmail.com>