summaryrefslogtreecommitdiff
path: root/sc/source/ui
AgeCommit message (Collapse)AuthorFilesLines
2020-05-26lokit: scPrintTwipsMsgs: LOK_CALLBACK_COMMENTfeature/calc-coordinatesDennis Francis1-11/+22
Allow print twips coordinates in LOK_CALLBACK_COMMENT Change-Id: I052dacb311c651c49d61fd9937951fa5b81b32d5
2020-05-26lokit: scPrintTwipsMsgs: LOK_CALLBACK_*SELECTION*Dennis Francis3-24/+87
Allow print twips coordinates in the below messages: LOK_CALLBACK_CELL_SELECTION_AREA LOK_CALLBACK_TEXT_SELECTION LOK_CALLBACK_TEXT_VIEW_SELECTION Change-Id: I267a636bbeab434b305a45abe3e21cb5afc4c1e9
2020-05-25lokit: scPrintTwipsMsgs: LOK_CALLBACK_CELL_VIEW_CURSORDennis Francis1-3/+32
Allow print twips coordinates in LOK_CALLBACK_CELL_VIEW_CURSOR Change-Id: I0373cbd2b87b4d1088af41453ab548274de6ca23
2020-05-25lokit: scPrintTwipsMsgs: LOK_CALLBACK_REFERENCE_MARKSDennis Francis1-0/+19
Allow print twips coordinates in LOK_CALLBACK_REFERENCE_MARKS Change-Id: I1bf84c5aebe84ee034ac27932fa8a01d0a3ae831
2020-05-25lokit: do not set an artificial cursor size when it is zero...Dennis Francis1-8/+6
when we send the message in print twips coordinates. It is important for the client to know the exact position and coordinates to allow client side print-twips -> tile-twips conversion when/if it is needed. Change-Id: I6699894758886f1b5648ac9bf3c9e6ab4192c72e
2020-05-25lokit: scPrintTwipsMsgs: LOK_CALLBACK_CELL_CURSORDennis Francis1-0/+4
Allow print twips coordinates in LOK_CALLBACK_CELL_CURSOR msg. Change-Id: Ib9de372db46db9d462983e15fb12d58624d066f5
2020-05-25Allow cell coordinates calculation in print twips tooDennis Francis2-21/+74
Change-Id: Ie8f23bd7ba8de57d7aab104add99501a54f08819
2020-05-25use lcl_ExtendTiledDimension() in getRowColumnHeaders()Dennis Francis1-79/+2
to avoid code repetitions. Change-Id: If83b42175fb53132174fa33d169806e17a4a5cbe
2020-05-25use helper-class ScRangeProvider in getRowColumnHeader()Dennis Francis1-22/+10
and avoid some code repetitions. Change-Id: I3e006bc8d9880f3e1ec892aa8f2423edbf9bbf14
2020-05-25lokit: move helper classes/functions to anonymous namespaceDennis Francis1-161/+161
and drop static keyword from the local functions. No functional changes involved, just a pure refactor to aid an upcoming cleanup of getRowColumnHeaders() method. Change-Id: I7daafdc8f644f73d10d594cb7e0f5b25e6464ca5
2020-05-25lokit: scPrintTwipsMsgs: Extend the tiled-area limits...Dennis Francis3-0/+270
if the client visible area is "close" to these limits. Also send tile-invalidations for the new area uncovered. ** All this is done only if the flag scPrintTwipsMsgs is set. Change-Id: I3d6b8c6aaae1eb934030c5bdbc1094dc8be16a9f
2020-05-25lokit: notify clients of various sheet geometry invalidationsDennis Francis8-14/+163
if the new feature flag scPrintTwipsMsgs is set. Change-Id: Ia36b9f3835115fb6f30e4e8f57d5d7a1b57df609
2020-05-25lokit: add new callback type LOK_CALLBACK_INVALIDATE_SHEET_GEOMETRYDennis Francis2-0/+11
This is to notify the clients about changes in current sheet's geometry data. Change-Id: I478d2e646606320399905d7b15881a165a53146d
2020-05-25add row/col limits to the JSONDennis Francis1-0/+2
Change-Id: I92cead8212f30d0cc9b811be21b6639830e84fa4
2020-05-25Introduce ITiledRenderable::getSheetGeometryData()Dennis Francis3-0/+96
ITiledRenderable::getSheetGeometryData(bool bColumns, bool bRows, bool bSizes, bool bHidden, bool bFiltered, bool bGroups) and implement it for the Calc derivation (ScModelObj). The aim is to use it actively in LOOL instead of the interface: ITiledRenderable::getRowColumnHeaders(const tools::Rectangle& /*rRectangle*/) This is used by the LOOL to fetch the sheet geometry data for just the current view-area in the clients, so LOOL queries this everytime some client's view-area changes. Like the existing interface, the new one will provide all 'kinds' of sheet geometry info [col/row sizes(twips), hidden/filtered and grouping]. But the difference is, it generates data for the whole sheet (not view-area specific). So the method need not be queried every time the view area changes in the LOOL clients, and more importantly it enables the clients to locate any cell at any zoom level without any further help from the core. This means core needn't send various client(zoom) specific positioning messages in pixel aligned twips. It just can send all positioning messages in print twips uniformly to all clients. Change-Id: Ib6aee9a0c92746b1576ed244e98cb54b572778c0
2020-05-17tdf#133079 ensure Sheet root is selected if nothing else would beCaolán McNamara1-1/+9
Change-Id: I01d45bfa8f410dcf35a9ecc90b295b7c75ccc746 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/94369 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2020-05-16uitest: sc: test navigatorXisco Fauli4-0/+75
Change-Id: I7ea7076df4e84726dadcdf9161914a28371f4563 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/94325 Tested-by: Jenkins Reviewed-by: Xisco Faulí <xiscofauli@libreoffice.org>
2020-05-15use more try_emplaceNoel Grandin1-4/+2
specifically looking for the pattern if (map.find(...) == map.end() map[...] = value Change-Id: I99f20d73f6e71a10726c9d39d8644c2e51120091 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/94151 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2020-05-14Resolves: tdf#133028 crash in calc navigator tooltipsCaolán McNamara1-2/+2
Change-Id: Ibd10e31453d062fcf1c5a202e18bfc2aa889fc98 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/94187 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2020-05-14tdf#49247: add sidebar panel for soft edges effectMike Kaganski1-0/+2
Shapes are handled in all modules; images only in draw/impress (TODO). Change-Id: Ib96eb4c36fdb69dd605f9b5a507f67a279797286 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/94162 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2020-05-12tdf#132939: avoid crash when uninitialized FilterDescriptorJulien Nabet1-0/+2
See bt: https://bugs.documentfoundation.org/attachment.cgi?id=160656 Change-Id: Ifacce7d39878e1b1d119aa878e7280eb3c9c2228 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93959 Tested-by: Jenkins Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2020-05-10formula bar: Change completeFunction() to accept string instead of index.Jan Holesovsky3-10/+14
The 'index' is unsafe, because the set it tries to index can change in the meantime. Instead, use the function name and search for it in the set, to get the recent index. Change-Id: Id2a021c32f421057c87b6f7f4fffcc1c98009acb Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93666 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Andras Timar <andras.timar@collabora.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93910 Tested-by: Jenkins
2020-05-10Fix typoAndrea Gelmini1-2/+2
Change-Id: Ibf7ad0efc998679e83e0c303a7b193ff56b4d4fc Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93818 Tested-by: Julien Nabet <serval2412@yahoo.fr> Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2020-05-10new loplugin:simplifypointertoboolNoel Grandin11-28/+28
Change-Id: Iff68e8f379614a6ab6a6e0d1bad18e70bc76d76a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/91907 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2020-05-10lok: calc: input bar: send number of text lines to clientMarco Cecchetti2-3/+6
Change-Id: Iec919ef11e22ae5d02009570f446064e3f7bfe01 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/92690 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Andras Timar <andras.timar@collabora.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93345 Tested-by: Jenkins
2020-05-10lok: remove sum and equal buttons from the formula barMarco Cecchetti1-16/+26
This patch removes sum and equal buttons from the formula bar in the lok case. A tentative to limit that to the mobile case has been done however the formula input bar is created before than the client view so we are not able to use the LibreOfficeKit::isMobile check. Change-Id: Icb820a0d77eb9295046997d2f3690d7f8b39680d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/89453 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Andras Timar <andras.timar@collabora.com>
2020-05-10lok: formula bar: send whole function listMarco Cecchetti3-18/+187
Change-Id: Ibbd142652f3190387700f820e56c494b61bfa658 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93341 Tested-by: Jenkins Reviewed-by: Andras Timar <andras.timar@collabora.com>
2020-05-10lok: set device form factor of the client on view creationMarco Cecchetti9-14/+16
This patch allows the lok core to know about the device form facor of the client requesting the creation of new view, immediately instead of a later time. When a new view is needed a "DeviceFormFactor" parameter is forwarded to lo_documentLoadWithOptions and doc_createViewWithOptions from the client. This parameter can have one of the following values: 'desktop', 'tablet','mobile' and it is used to set a global variable accessible by SfxLokHelper::setDeviceFormFactor and SfxLokHelper::getDeviceFormFactor. This global variable is retrived in the SfxViewShell constructor for setting SfxViewShell::maLOKDeviceFormFactor attribute. In SfxViewShell we have the following 3 methods: - bool isLOKDesktop() - bool isLOKTablet() - bool isLOKMobilePhone() which replace the following boolean functions: - comphelper::LibreOfficeKit::isTablet - comphelper::LibreOfficeKit::::isMobilePhone Change-Id: I9b36f354278df8c216fcb90f6a9da8256ec9c1e3 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93340 Tested-by: Jenkins Reviewed-by: Andras Timar <andras.timar@collabora.com>
2020-05-09compact namespace in scNoel Grandin63-182/+148
Change-Id: I05ffad6b92883d3eb6d337fe75f5fc7864485861 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93860 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2020-05-08Revert "lok: remove sum and equal buttons from the formula bar"Andras Timar1-26/+16
This reverts commit c35aef260feda34eae5e4b8a39f1baaa716b717d. Reason for revert: patch applied in the wrong order, pre-requsite was not merged Change-Id: Id3ce6dbac6d9b7589b8d4dd21932b8dee8356c43 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93790 Tested-by: Andras Timar <andras.timar@collabora.com> Reviewed-by: Andras Timar <andras.timar@collabora.com>
2020-05-08lok: remove sum and equal buttons from the formula barMarco Cecchetti1-16/+26
This patch removes sum and equal buttons from the formula bar in the lok case. A tentative to limit that to the mobile case has been done however the formula input bar is created before than the client view so we are not able to use the LibreOfficeKit::isMobile check. Change-Id: Icb820a0d77eb9295046997d2f3690d7f8b39680d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/89453 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Andras Timar <andras.timar@collabora.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93342 Tested-by: Jenkins
2020-05-08remove TriStateBox classCaolán McNamara2-2/+4
Change-Id: Ia6c76a9f0fc0be7790d0c801cbca4a7b8d478976 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93680 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2020-05-07tdf#118418 implement scrollSubstringTo() for gtkColomban Wendling2-0/+8
Define & use new accessibility scroll type compatible with IAccessible2 and extend the XAccessibleText interface to require scrollSubstringTo(). Co-authored-by: Martin Pieuchot <mpi@grenadille.net> Change-Id: Id3b2e8616892d7dcbfb41a14b72a8a457fd1dbf6 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/89851 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2020-05-05remove unused nSearchFamily and nMask membersCaolán McNamara2-3/+0
and so SetSearchMask which doesn't have any effect anymore Change-Id: I0b7f402ce0317971d5196fc448fe2945a6a292f5 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93393 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2020-05-05help states that SfxNewStyleDlg lists SfxStyleSearchBits::UserDefined stylesCaolán McNamara1-1/+1
Change-Id: Ibf89d0ff1154b943a5650ac6cd6aa64a084c15cd Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93491 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2020-05-05ScOrcusStyles::commit_cell_style creates SfxStyleFamily::Para stylesCaolán McNamara2-2/+2
and setAllStandard is only called on the results of that so rename it to setAllParaStandard and we can safely assume that the mask should be ::All Change-Id: I087b40ed919c1b8724d5d36bae2f94180148cec2 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93470 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2020-05-05tdf#131230: Sidebar: Can't set Automatic colorPranam Lashkari1-1/+1
This also solved the issue in sidebar with some controls when selecting an item it selects the item below Change-Id: I607b8bc44402b57b5c4833f918fb41b23ddf48c2 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93099 Tested-by: Marco Cecchetti <marco.cecchetti@collabora.com> Reviewed-by: Marco Cecchetti <marco.cecchetti@collabora.com> (cherry picked from commit 756bbe3f94fe1736406b7fd16ce62a67e7e62769) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93380 Tested-by: Jenkins Reviewed-by: Pranam Lashkari <lpranam@collabora.com>
2020-05-05make the family and mask explicit in SfxStyleSheetBasePool::FirstCaolán McNamara1-1/+1
Change-Id: I36655b65ca00e5f7b8779a28d4a1778c8e35dc4e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93461 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2020-05-04make Search family and mask explicit for SfxNewStyleDlgCaolán McNamara1-1/+1
Change-Id: Ib3e5765d37474188d6505f1d9965969ee6c24f0c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93358 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2020-05-02cid#1401342 silence Uncaught exceptionCaolán McNamara2-2/+2
Change-Id: I961d68bc02ed22ab446dabbc6073df8ddf6730f0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93312 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2020-05-01Revert "lokit: scale the validation dropdown with client zoom"Dennis Francis1-20/+3
The scaling of the float window containg the listbox is unfortunately far from ideal at certain zoom levels and entry sizes. There are issues like too much extra spaces around the entries and around scrollbar if present. These issues need more work to fix. Until then lets revert this. Another issue is that we don't really want to zoom adjust any popups in mobile or android as this does not match the design of jsdialogs. This reverts the commit : 7787bac16cbe63698f56a9a70d9b1b217f3ea860 (master) a87e78df635d4a8e745bfffcf33d022d2a498afa (cp62) Change-Id: Ic31040b491e25b5113dfc8e70d3f73de204862e0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93239 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Dennis Francis <dennis.francis@collabora.com> (cherry picked from commit 84200fc5e1b807629de2d975acaa3ffb81640d1f) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93137 Tested-by: Jenkins
2020-04-30loplugin:makeshared in scNoel Grandin11-76/+74
Change-Id: I512d05ea24c519c25f03a35842e362bf23f05693 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93198 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2020-04-29lokit: scale the validation dropdown with client zoomDennis Francis1-5/+22
For zoom > 2.0 and zoom < 0.5 the scaled dropdown looks either too oversized or tiny and makes the ui look unpolished, so the zoom factor is trimmed between this range and then used to scale the validation window. Change-Id: Ic69383f273cb32670b6012f59715250dbfcf627c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/92915 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Dennis Francis <dennis.francis@collabora.com> (cherry picked from commit a87e78df635d4a8e745bfffcf33d022d2a498afa) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93067 Tested-by: Jenkins
2020-04-29lokit: trim validation dropdown height to contentDennis Francis1-1/+5
The validation dropdown looks ugly for lists with small number of items as its height is hardcoded to SC_FILTERLISTBOX_LINES(=12) * TextHeight Instead lets use the number of entries in the list to determine the height if this count is less than SC_FILTERLISTBOX_LINES Change-Id: If026140044e6665159cd616c13a2eb57356ae53f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/92914 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Dennis Francis <dennis.francis@collabora.com> (cherry picked from commit adf10bae8aecd8b765a21660b31056292276bdb2) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93066 Tested-by: Jenkins
2020-04-29lokit: fix validation dropdown's wrong positionDennis Francis1-0/+16
Reverse the zoom scale on the position of the dropdown before letting the vcl::FloatingWindow convert this to twips without any scale information. Without this reverse scaling, the dropdown will be incorrect due to double application of the same zoom (one in core and one in client). Change-Id: I73de12593b13e1bc9fb0514bec23c20d440d8923 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/92913 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Dennis Francis <dennis.francis@collabora.com> (cherry picked from commit a68bfe87f6c720dd2b4721edf869c6801fa2d967) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93008 Tested-by: Jenkins
2020-04-29tdf#130770 apply autofilter to data regardless of autofilter changesscito1-22/+15
Add a unit test Apply autofilter to data if there are no changes from the user for AutoFilterMode::Normal mode The condition eMode == AutoFilterMode::Normal at that position is equivalent to eMode != AutoFilterMode::Top10 && eMode != AutoFilterMode::Empty && eMode != AutoFilterMode::NonEmpty because - Top10: Excluded in if() - Custom: Already handled before - Empty: Excluded in if() - NonEmpty: Excluded in if() - SortAscending: Already handled before - SortDescending: Already handled before - Normal: The remaining condition Delete dead code: The condition if (mpAutoFilterPopup->isAllSelected()) will never be true since eMode == AutoFilterMode::Normal && mpAutoFilterPopup->isAllSelected() is excluded in the "outer if condition" !(eMode == AutoFilterMode::Normal && mpAutoFilterPopup->isAllSelected()) Moreover aParam.RemoveAllEntriesByField(rPos.Col()); has already been called before. Change-Id: I1a5362f6edf6d28b3e049977d761cef83897e63e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/91645 Tested-by: Jenkins Tested-by: Serge Krot (CIB) <Serge.Krot@cib.de> Reviewed-by: Serge Krot (CIB) <Serge.Krot@cib.de>
2020-04-29weld SfxTemplatePanelControlCaolán McNamara4-2/+5
Change-Id: Ib3f6d01ddec37afc3987423dc15ab84ad6475f37 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/92942 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2020-04-27Make upcasting css::uno::Reference ctor require complete typesStephan Bergmann6-2/+6
The main reason for the "home-grown" UpCast introduced with 904b3d1fceee5827076758ed2a81f80cb73493ca "Up-cast conversion constructor for css::uno::Reference" in 2013 was probably that we could not yet rely on C++11 std::is_base_of back then. A (welcome) side effect was that the derived class could be incomplete. However, specializations of UpCast relying on whether or not T2 is incomplete are obviously an ODR violation if the type is incomplete in some TUs and complete (and derived from T1) in others. And even if UpCast had internal linkage, it would still be brittle that its behavior depends on the completeness of T2 at the point of the template's instantiation, and not necessarily at the point of use. That means we should better base that ctor on std::is_base_of (which we can do now since 39a1edd6fec902ef378acce8af42c4d7fba280d0 "Make css::uno::Reference upcast ctor LIBO_INTERNAL_ONLY"), which causes a compilation error at least on Clang and GCC if the completeness requirements are not met. This change fixes all the cases where types need to be complete now, plus any resulting loplugin:referencecasting warnings ("the source reference is already a subtype of the destination reference"). Change-Id: Ieb9e3552e90adbf2c5a5af933dcb872e20661a2f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/92950 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2020-04-26move PanelLayout to sfx2Caolán McNamara5-5/+5
Change-Id: If29ccb67835adba3ff6cf2eb53f348bbe71d6463 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/92933 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2020-04-26all ItemWindows are now weldedCaolán McNamara3-3/+4
where native widgetery is hostable in a vcl toolbar or a native one Change-Id: I942ada335bb4bd6ced0f3352f632e25787f68597 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/88598 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>