You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openoffice.apache.org by al...@apache.org on 2014/02/07 17:52:19 UTC
svn commit: r1565724 - in /openoffice/trunk/main/svx/source/dialog:
hyprdlg.hxx hyprlink.cxx
Author: alg
Date: Fri Feb 7 16:52:18 2014
New Revision: 1565724
URL: http://svn.apache.org/r1565724
Log:
i124197 allow URL Toolbar to send URLs to the app more than once
Modified:
openoffice/trunk/main/svx/source/dialog/hyprdlg.hxx
openoffice/trunk/main/svx/source/dialog/hyprlink.cxx
Modified: openoffice/trunk/main/svx/source/dialog/hyprdlg.hxx
URL: http://svn.apache.org/viewvc/openoffice/trunk/main/svx/source/dialog/hyprdlg.hxx?rev=1565724&r1=1565723&r2=1565724&view=diff
==============================================================================
--- openoffice/trunk/main/svx/source/dialog/hyprdlg.hxx (original)
+++ openoffice/trunk/main/svx/source/dialog/hyprdlg.hxx Fri Feb 7 16:52:18 2014
@@ -93,7 +93,6 @@ private:
PopupMenu aLinkPopup;
PopupMenu *pTargetMenu;
sal_Bool bNoDoc;
- sal_Bool bSend;
sal_Bool bHasOldName;
long nMaxWidth;
long nMinWidth;
Modified: openoffice/trunk/main/svx/source/dialog/hyprlink.cxx
URL: http://svn.apache.org/viewvc/openoffice/trunk/main/svx/source/dialog/hyprlink.cxx?rev=1565724&r1=1565723&r2=1565724&view=diff
==============================================================================
--- openoffice/trunk/main/svx/source/dialog/hyprlink.cxx (original)
+++ openoffice/trunk/main/svx/source/dialog/hyprlink.cxx Fri Feb 7 16:52:18 2014
@@ -114,7 +114,6 @@ SvxHyperlinkDlg::SvxHyperlinkDlg( SfxBin
pTargetMenu ( NULL ),
bNoDoc ( sal_True ),
- bSend ( sal_False ),
bHasOldName ( sal_False ),
bHtmlMode ( sal_False )
@@ -344,8 +343,7 @@ IMPL_LINK( SvxHyperlinkDlg, TBClickHdl,
{
case BTN_LINK:
{
- if (!bSend) // Link ins Dokument einfuegen
- SendToApp(HLINK_DEFAULT);
+ SendToApp(HLINK_DEFAULT);
}
break;
@@ -650,12 +648,23 @@ void SvxHyperlinkDlg::EnableLink()
void SvxHyperlinkDlg::SendToApp(sal_uInt16 nType)
{
+ static bool bAlreadyWorking(false);
+
+ if(bAlreadyWorking)
+ {
+ OSL_ENSURE(false, "SvxHyperlinkDlg::SendToApp called to potentially run recursively, please check (!)");
+ return;
+ }
+
+ bAlreadyWorking = true;
sal_Bool bIsFile = sal_False;
- bSend = sal_True;
String sURL( aUrlCB.GetText() );
if ( !sURL.Len() )
- return;
+ {
+ bAlreadyWorking = false;
+ return;
+ }
String aBase = GetBindings().GetDispatcher()->GetFrame()->GetObjectShell()->GetMedium()->GetBaseURL();
INetURLObject aObj( URIHelper::SmartRel2Abs( INetURLObject(aBase), sURL, URIHelper::GetMaybeFileHdl(), true, false,
@@ -674,7 +683,10 @@ void SvxHyperlinkDlg::SendToApp(sal_uInt
LeaveWait();
QueryBox aBox( this, SVX_RES( RID_SVXQB_DONTEXIST ) );
if ( aBox.Execute() == RET_NO )
+ {
+ bAlreadyWorking = false;
return;
+ }
}
else
LeaveWait();
@@ -700,6 +712,8 @@ void SvxHyperlinkDlg::SendToApp(sal_uInt
if ( sURL != aUrlCB.GetText() )
aUrlCB.SetText( sURL );
+
+ bAlreadyWorking = false;
}
/*--------------------------------------------------------------------