summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sw/qa/extras/uiwriter/uiwriter.cxx13
-rw-r--r--sw/source/uibase/app/docshini.cxx9
2 files changed, 22 insertions, 0 deletions
diff --git a/sw/qa/extras/uiwriter/uiwriter.cxx b/sw/qa/extras/uiwriter/uiwriter.cxx
index aac00f04b0be..9ca85ee7fd9c 100644
--- a/sw/qa/extras/uiwriter/uiwriter.cxx
+++ b/sw/qa/extras/uiwriter/uiwriter.cxx
@@ -149,6 +149,7 @@ public:
void testTdf90808();
void testTdf75137();
void testTdf83798();
+ void testTdf89714();
void testPropertyDefaults();
void testTableBackgroundColor();
void testTdf88899();
@@ -226,6 +227,7 @@ public:
CPPUNIT_TEST(testTdf90808);
CPPUNIT_TEST(testTdf75137);
CPPUNIT_TEST(testTdf83798);
+ CPPUNIT_TEST(testTdf89714);
CPPUNIT_TEST(testPropertyDefaults);
CPPUNIT_TEST(testTableBackgroundColor);
CPPUNIT_TEST(testTdf88899);
@@ -2269,6 +2271,17 @@ void SwUiWriterTest::testTdf83798()
pCrsr->DeleteMark();
}
+void SwUiWriterTest::testTdf89714()
+{
+ createDoc();
+ uno::Reference<lang::XMultiServiceFactory> xFact(mxComponent, uno::UNO_QUERY);
+ uno::Reference<uno::XInterface> xInterface(xFact->createInstance("com.sun.star.text.Defaults"), uno::UNO_QUERY);
+ uno::Reference<beans::XPropertyState> xPropState(xInterface, uno::UNO_QUERY);
+ //enabled Paragraph Orphan and Widows by default starting in LO5.1
+ CPPUNIT_ASSERT_EQUAL( uno::makeAny(sal_Int8(2)), xPropState->getPropertyDefault(OUString("ParaOrphans")) );
+ CPPUNIT_ASSERT_EQUAL( uno::makeAny(sal_Int8(2)), xPropState->getPropertyDefault(OUString("ParaWidows")) );
+}
+
void SwUiWriterTest::testPropertyDefaults()
{
createDoc();
diff --git a/sw/source/uibase/app/docshini.cxx b/sw/source/uibase/app/docshini.cxx
index a9183054bce6..2844b23cde5b 100644
--- a/sw/source/uibase/app/docshini.cxx
+++ b/sw/source/uibase/app/docshini.cxx
@@ -49,6 +49,8 @@
#include <editeng/tstpitem.hxx>
#include <editeng/langitem.hxx>
#include <editeng/colritem.hxx>
+#include <editeng/orphitem.hxx>
+#include <editeng/widwitem.hxx>
#include <editeng/hyphenzoneitem.hxx>
#include <editeng/svxacorr.hxx>
#include <vcl/svapp.hxx>
@@ -688,6 +690,13 @@ void SwDocShell::SubInitNew()
{
bool bSquaredPageMode = SW_MOD()->GetUsrPref(false)->IsSquaredPageMode();
m_pDoc->SetDefaultPageMode( bSquaredPageMode );
+
+ // only set Widow/Orphan defaults on a new, non-web document - not an opened one
+ if( GetMedium() && GetMedium()->GetOrigURL().isEmpty() )
+ {
+ m_pDoc->SetDefault( SvxWidowsItem( (sal_uInt8) 2, RES_PARATR_WIDOWS) );
+ m_pDoc->SetDefault( SvxOrphansItem( (sal_uInt8) 2, RES_PARATR_ORPHANS) );
+ }
}
m_pDoc->getIDocumentState().ResetModified();