summaryrefslogtreecommitdiff
path: root/framework/source/services/frame.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'framework/source/services/frame.cxx')
-rw-r--r--framework/source/services/frame.cxx22
1 files changed, 22 insertions, 0 deletions
diff --git a/framework/source/services/frame.cxx b/framework/source/services/frame.cxx
index 562afb695e35..c6930eeed96b 100644
--- a/framework/source/services/frame.cxx
+++ b/framework/source/services/frame.cxx
@@ -424,6 +424,11 @@ private:
css::uno::WeakReference< css::uno::XInterface > m_xBroadcaster;
FrameContainer m_aChildFrameContainer; /// array of child frames
+ /**
+ * URL of the file that is being loaded, when the load already started by we have no controller
+ * yet.
+ */
+ OUString m_aURL;
};
@@ -551,6 +556,9 @@ void XFrameImpl::initListeners()
FRAME_PROPHANDLE_TITLE,
cppu::UnoType<OUString>::get(),
css::beans::PropertyAttribute::TRANSIENT));
+ impl_addPropertyInfo(css::beans::Property(FRAME_PROPNAME_ASCII_URL, FRAME_PROPHANDLE_URL,
+ cppu::UnoType<OUString>::get(),
+ css::beans::PropertyAttribute::TRANSIENT));
}
/*-************************************************************************************************************
@@ -1533,6 +1541,10 @@ sal_Bool SAL_CALL XFrameImpl::setComponent(const css::uno::Reference< css::awt::
SolarMutexResettableGuard aWriteLock;
m_xComponentWindow = xComponentWindow;
m_xController = xController;
+
+ // Clear the URL on the frame itself, now that the controller has it.
+ m_aURL.clear();
+
m_bConnected = (m_xComponentWindow.is() || m_xController.is());
bool bIsConnected = m_bConnected;
aWriteLock.clear();
@@ -2769,6 +2781,11 @@ void XFrameImpl::impl_setPropertyValue(sal_Int32 nHandle,
}
break;
+ case FRAME_PROPHANDLE_URL:
+ {
+ aValue >>= m_aURL;
+ }
+ break;
default :
SAL_INFO("fwk.frame", "XFrameImpl::setFastPropertyValue_NoBroadcast(): Invalid handle detected!" );
break;
@@ -2812,6 +2829,11 @@ css::uno::Any XFrameImpl::impl_getPropertyValue(sal_Int32 nHandle)
}
break;
+ case FRAME_PROPHANDLE_URL:
+ {
+ aValue <<= m_aURL;
+ }
+ break;
default :
SAL_INFO("fwk.frame", "XFrameImpl::getFastPropertyValue(): Invalid handle detected!" );
break;