Resolves: tdf#155750 allow private:factory urls in floating frames

they create a new document so there isn't an associated location
which would trigger the prompt to allow it so just allow factory
urls

Change-Id: I7b693bcfe5ac04aaed06905637ab3c1eba43c51f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153316
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
diff --git a/sfx2/source/doc/iframe.cxx b/sfx2/source/doc/iframe.cxx
index 1db2599..507256a 100644
--- a/sfx2/source/doc/iframe.cxx
+++ b/sfx2/source/doc/iframe.cxx
@@ -175,14 +175,18 @@ sal_Bool SAL_CALL IFrameObject::load(
        uno::Reference<frame::XFramesSupplier> xParentFrame = xFrame->getCreator();
        SfxObjectShell* pDoc = SfxMacroLoader::GetObjectShell(xParentFrame);

        bool bUpdateAllowed(true);
        if (pDoc)
        const bool bIsFactoryURL = aTargetURL.Complete.startsWith("private:factory/");
        if (!bIsFactoryURL)
        {
            comphelper::EmbeddedObjectContainer& rEmbeddedObjectContainer = pDoc->getEmbeddedObjectContainer();
            bUpdateAllowed = rEmbeddedObjectContainer.getUserAllowsLinkUpdate();
            bool bUpdateAllowed(true);
            if (pDoc)
            {
                comphelper::EmbeddedObjectContainer& rEmbeddedObjectContainer = pDoc->getEmbeddedObjectContainer();
                bUpdateAllowed = rEmbeddedObjectContainer.getUserAllowsLinkUpdate();
            }
            if (!bUpdateAllowed)
                return false;
        }
        if (!bUpdateAllowed)
            return false;

        OUString sReferer;
        if (pDoc && pDoc->HasName())