From 536879700017e2cfca9a34b86df678c92eb784b5 Mon Sep 17 00:00:00 2001 From: Julia Radzhabova Date: Mon, 1 Apr 2024 22:18:22 +0300 Subject: [PATCH 1/2] [PE] Bug 67159 --- .../main/app/controller/DocumentHolder.js | 8 +++++++- .../main/app/view/HyperlinkSettingsDialog.js | 8 ++------ 2 files changed, 9 insertions(+), 7 deletions(-) diff --git a/apps/presentationeditor/main/app/controller/DocumentHolder.js b/apps/presentationeditor/main/app/controller/DocumentHolder.js index 2d0e281a31..23ead890d6 100644 --- a/apps/presentationeditor/main/app/controller/DocumentHolder.js +++ b/apps/presentationeditor/main/app/controller/DocumentHolder.js @@ -75,6 +75,11 @@ var c_paragraphSpecial = { HANGING: 2 }; +var c_oHyperlinkType = { + InternalLink:0, + WebLink: 1 +}; + define([ 'core', 'presentationeditor/main/app/view/DocumentHolder' @@ -1110,7 +1115,7 @@ define([ } }, - onDialogAddHyperlink: function() { + onDialogAddHyperlink: function(isButton) { var win, props, text; var me = this; if (me.api && me.mode.isEdit && !me._isDisabled && !PE.getController('LeftMenu').leftMenu.menuFile.isVisible()){ @@ -1139,6 +1144,7 @@ define([ api: me.api, appOptions: me.mode, handler: handlerDlg, + type: isButton ? c_oHyperlinkType.InternalLink : undefined, slides: _arr }); diff --git a/apps/presentationeditor/main/app/view/HyperlinkSettingsDialog.js b/apps/presentationeditor/main/app/view/HyperlinkSettingsDialog.js index 456f2cdae8..184837611d 100644 --- a/apps/presentationeditor/main/app/view/HyperlinkSettingsDialog.js +++ b/apps/presentationeditor/main/app/view/HyperlinkSettingsDialog.js @@ -41,11 +41,6 @@ if (Common === undefined) var Common = {}; -var c_oHyperlinkType = { - InternalLink:0, - WebLink: 1 -}; - define([ 'common/main/lib/util/utils', 'common/main/lib/component/InputField', @@ -99,6 +94,7 @@ define([ this.options.tpl = _.template(this.template)(this.options); this.slides = this.options.slides; this.api = this.options.api; + this.type = options.type; this.urlType = AscCommon.c_oAscUrlType.Invalid; this.appOptions = this.options.appOptions; @@ -203,7 +199,7 @@ define([ if (props) { var me = this; - var type = me.parseUrl(props.get_Value()); + var type = (me.type!==undefined) ? me.type : me.parseUrl(props.get_Value()); (type == c_oHyperlinkType.WebLink) ? me.btnExternal.toggle(true) : me.btnInternal.toggle(true); me.ShowHideElem(type, props.get_Value()); From 13388b4d8b1deed6bc8a17dafc19bca55cf90d0b Mon Sep 17 00:00:00 2001 From: Julia Radzhabova Date: Wed, 8 May 2024 16:15:51 +0300 Subject: [PATCH 2/2] [PE] Bug 67159: handle hyperlink settings for buttons --- .../main/app/controller/DocumentHolder.js | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/apps/presentationeditor/main/app/controller/DocumentHolder.js b/apps/presentationeditor/main/app/controller/DocumentHolder.js index 23ead890d6..edb6d7a5ec 100644 --- a/apps/presentationeditor/main/app/controller/DocumentHolder.js +++ b/apps/presentationeditor/main/app/controller/DocumentHolder.js @@ -1144,12 +1144,16 @@ define([ api: me.api, appOptions: me.mode, handler: handlerDlg, - type: isButton ? c_oHyperlinkType.InternalLink : undefined, + type: isButton===true ? c_oHyperlinkType.InternalLink : undefined, slides: _arr }); - props = new Asc.CHyperlinkProperty(); - props.put_Text(text); + if (isButton && (isButton instanceof Asc.CHyperlinkProperty)) + props = isButton; + else { + props = new Asc.CHyperlinkProperty() + props.put_Text(text); + } win.show(); win.setSettings(props);