summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVasily Melenchuk <Vasily.Melenchuk@cib.de>2018-04-10 15:18:59 +0300
committerSamuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>2018-04-11 09:27:36 +0200
commit0310815de2a75d4bbbd34d97e2592dccddcad812 (patch)
tree488f00f2ad06cc893f2313d921262fb69388eb12
parent46f9fb5244cb8cd2def46d75a3c969a2649e737c (diff)
sd: update tooltips on hyperlink hover
Show "Ctrl-click to open..." or "Click to open..." depending on security options. Change-Id: I93024a894967ddd378cc436efffb22302f6034d7 Reviewed-on: https://gerrit.libreoffice.org/52672 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>
-rw-r--r--sd/inc/strings.hrc3
-rw-r--r--sd/source/ui/func/fudraw.cxx26
2 files changed, 28 insertions, 1 deletions
diff --git a/sd/inc/strings.hrc b/sd/inc/strings.hrc
index 61af7e91c616..67eef104a6de 100644
--- a/sd/inc/strings.hrc
+++ b/sd/inc/strings.hrc
@@ -469,6 +469,9 @@
#define STR_SD_NONE NC_("STR_SD_NONE", "- None -")
+#define STR_CTRLCLICKHYPERLINK NC_("STR_CTRLCLICKHYPERLINK", "%s-click to follow hyperlink: ")
+#define STR_CLICKHYPERLINK NC_("STR_CLICKHYPERLINK", "Click to open hyperlink: ")
+
#endif
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/sd/source/ui/func/fudraw.cxx b/sd/source/ui/func/fudraw.cxx
index f25836ae459d..cfc73674c678 100644
--- a/sd/source/ui/func/fudraw.cxx
+++ b/sd/source/ui/func/fudraw.cxx
@@ -61,6 +61,7 @@
#include <vcl/weld.hxx>
#include <slideshow.hxx>
#include <svx/sdrhittesthelper.hxx>
+#include <unotools/securityoptions.hxx>
using namespace ::com::sun::star;
@@ -902,7 +903,30 @@ bool FuDraw::SetHelpText(SdrObject* pObj, const Point& rPosPixel, const SdrViewE
/**************************************************************
* URL-Field
**************************************************************/
- aHelpText = INetURLObject::decode( rVEvt.pURLField->GetURL(), INetURLObject::DecodeMechanism::WithCharset );
+ OUString aURL = INetURLObject::decode( rVEvt.pURLField->GetURL(), INetURLObject::DecodeMechanism::WithCharset );
+
+ SvtSecurityOptions aSecOpt;
+ if (aSecOpt.IsOptionSet(SvtSecurityOptions::EOption::CtrlClickHyperlink))
+ {
+ // Hint about Ctrl-click to open hyperlink
+ // But need to detect "Ctrl" key for MacOs
+ vcl::KeyCode aCode(KEY_SPACE);
+ vcl::KeyCode aModifiedCode(KEY_SPACE, KEY_MOD1);
+ OUString aModStr(aModifiedCode.GetName());
+ aModStr = aModStr.replaceFirst(aCode.GetName(), "");
+ aModStr = aModStr.replaceAll("+", "");
+
+ OUString aCtrlClickHlinkStr = SdResId(STR_CTRLCLICKHYPERLINK);
+
+ aCtrlClickHlinkStr = aCtrlClickHlinkStr.replaceAll("%s", aModStr);
+
+ aHelpText = aCtrlClickHlinkStr + aURL;
+ }
+ else
+ {
+ // Hint about just clicking hyperlink
+ aHelpText = SdResId(STR_CLICKHYPERLINK) + aURL;
+ }
}
if (!aHelpText.isEmpty())