summaryrefslogtreecommitdiff
path: root/svx/source/sdr/properties/attributeproperties.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'svx/source/sdr/properties/attributeproperties.cxx')
-rw-r--r--svx/source/sdr/properties/attributeproperties.cxx30
1 files changed, 13 insertions, 17 deletions
diff --git a/svx/source/sdr/properties/attributeproperties.cxx b/svx/source/sdr/properties/attributeproperties.cxx
index e53117a4b4..8c97ea69bd 100644
--- a/svx/source/sdr/properties/attributeproperties.cxx
+++ b/svx/source/sdr/properties/attributeproperties.cxx
@@ -281,7 +281,19 @@ namespace sdr
// set stylesheet (if used)
if(pStySheet)
{
- ImpAddStyleSheet(pStySheet, sal_True);
+ // #i109515#
+ SfxItemPool* pStyleSheetPool = &pStySheet->GetPool().GetPool();
+
+ if(pStyleSheetPool == pDestPool)
+ {
+ // just re-set stylesheet
+ ImpAddStyleSheet(pStySheet, sal_True);
+ }
+ else
+ {
+ // StyleSheet is NOT from the correct pool; use default
+ ImpAddStyleSheet(pNewModel->GetDefaultStyleSheet(), sal_True);
+ }
}
delete pOldSet;
@@ -584,22 +596,6 @@ namespace sdr
bHintUsed = sal_True;
}
- // #111111#
- // When it's the BackgroundObject, set the MasterPage to changed to
- // get a refresh for the evtl. changed BackgroundStyle
-
- // #114265#
- // To only invalidate the page when the StyleSheet change happens,
- // some more rigid testing is necessary.
- const SfxSimpleHint *pSimpleHint = PTR_CAST(SfxSimpleHint, &rHint);
-
- if(pSimpleHint
- && pSimpleHint->GetId() == SFX_HINT_DATACHANGED
- && GetSdrObject().IsMasterPageBackgroundObject())
- {
- GetSdrObject().GetPage()->ActionChanged();
- }
-
if(!bHintUsed)
{
// forward to SdrObject ATM. Not sure if this will be necessary