rpms/openoffice.org/devel openoffice.org-3.1.0.oooXXXXX.solenv.allowmissing.patch, NONE, 1.1 planned.workspace.defaultdoclang.patch, NONE, 1.1 openoffice.org.spec, 1.1826, 1.1827 sources, 1.338, 1.339 openoffice.org-1.9.87.rh151357.setlangtolocale.patch, 1.30, NONE

Caolan McNamara caolanm at fedoraproject.org
Tue Feb 24 13:03:05 UTC 2009


Author: caolanm

Update of /cvs/pkgs/rpms/openoffice.org/devel
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv9514

Modified Files:
	openoffice.org.spec sources 
Added Files:
	openoffice.org-3.1.0.oooXXXXX.solenv.allowmissing.patch 
	planned.workspace.defaultdoclang.patch 
Removed Files:
	openoffice.org-1.9.87.rh151357.setlangtolocale.patch 
Log Message:
this is a better upstream-able implementation

openoffice.org-3.1.0.oooXXXXX.solenv.allowmissing.patch:

--- NEW FILE openoffice.org-3.1.0.oooXXXXX.solenv.allowmissing.patch ---
Index: bin/modules/installer/scriptitems.pm
===================================================================
RCS file: /cvs/tools/solenv/bin/modules/installer/scriptitems.pm,v
retrieving revision 1.17
diff -u -p -r1.17 scriptitems.pm
--- openoffice.org.orig/solenv/bin/modules/installer/scriptitems.pm	24 Feb 2005 16:21:15 -0000	1.17
+++ openoffice.org/solenv/bin/modules/installer/scriptitems.pm	18 Mar 2005 22:39:42 -0000
@@ -930,8 +930,7 @@ sub remove_Files_Without_Sourcedirectory
 				$infoline = "ERROR: Removing file $filename from file list.\n";
 				push( @installer::globals::logfileinfo, $infoline);
 
-				push(@missingfiles, "ERROR: File not found: $filename\n");	
-				$error_occured = 1;
+				push(@missingfiles, "Warning: File not found: $filename\n");	
 
 				next;	# removing this file from list, if sourcepath is empty
 			}

planned.workspace.defaultdoclang.patch:

--- NEW FILE planned.workspace.defaultdoclang.patch ---
Index: sc/source/ui/app/scmod2.cxx
===================================================================
--- sc/source/ui/app/scmod2.cxx	(revision 267481)
+++ sc/source/ui/app/scmod2.cxx	(working copy)
@@ -37,7 +37,8 @@
 
 #include <svx/unolingu.hxx>
 #include <svtools/lingucfg.hxx>
-
+#include <i18npool/mslangid.hxx>
+#include <com/sun/star/i18n/ScriptType.hpp>
 #include <com/sun/star/linguistic2/XThesaurus.hpp>
 #include <com/sun/star/lang/Locale.hpp>
 
@@ -62,9 +63,9 @@
 	SvtLinguOptions aOptions;
 	aConfig.GetOptions( aOptions );
 
-	rDefLang = aOptions.nDefaultLanguage;
-	rCjkLang = aOptions.nDefaultLanguage_CJK;
-	rCtlLang = aOptions.nDefaultLanguage_CTL;
+	rDefLang = MsLangId::resolveSystemLanguageByScriptType(aOptions.nDefaultLanguage, ::com::sun::star::i18n::ScriptType::LATIN);
+	rCjkLang = MsLangId::resolveSystemLanguageByScriptType(aOptions.nDefaultLanguage_CJK, ::com::sun::star::i18n::ScriptType::ASIAN);
+	rCtlLang = MsLangId::resolveSystemLanguageByScriptType(aOptions.nDefaultLanguage_CTL, ::com::sun::star::i18n::ScriptType::COMPLEX);
 	rAutoSpell = aOptions.bIsSpellAuto;
 }
 
Index: sd/source/core/drawdoc.cxx
===================================================================
--- sd/source/core/drawdoc.cxx	(revision 267481)
+++ sd/source/core/drawdoc.cxx	(working copy)
@@ -34,6 +34,7 @@
 #include "PageListWatcher.hxx"
 #include <com/sun/star/text/WritingMode.hpp>
 #include <com/sun/star/document/PrinterIndependentLayout.hpp>
+#include <com/sun/star/i18n/ScriptType.hpp>
 #include <svx/forbiddencharacterstable.hxx>
 
 #include <svx/svxids.hrc>
@@ -230,9 +231,12 @@
 		SvtLinguOptions			aOptions;
 		aLinguConfig.GetOptions( aOptions );
 
-		SetLanguage( aOptions.nDefaultLanguage, EE_CHAR_LANGUAGE );
-		SetLanguage( aOptions.nDefaultLanguage_CJK, EE_CHAR_LANGUAGE_CJK );
-		SetLanguage( aOptions.nDefaultLanguage_CTL, EE_CHAR_LANGUAGE_CTL );
+		SetLanguage( MsLangId::resolveSystemLanguageByScriptType(aOptions.nDefaultLanguage, 
+            ::com::sun::star::i18n::ScriptType::LATIN), EE_CHAR_LANGUAGE );
+		SetLanguage( MsLangId::resolveSystemLanguageByScriptType(aOptions.nDefaultLanguage_CJK,
+            ::com::sun::star::i18n::ScriptType::ASIAN), EE_CHAR_LANGUAGE_CJK );
+		SetLanguage( MsLangId::resolveSystemLanguageByScriptType(aOptions.nDefaultLanguage_CTL, 
+            ::com::sun::star::i18n::ScriptType::COMPLEX), EE_CHAR_LANGUAGE_CTL );
 
 		mbOnlineSpell = aOptions.bIsSpellAuto;
 	}
Index: sd/source/ui/notes/EditWindow.cxx
===================================================================
--- sd/source/ui/notes/EditWindow.cxx	(revision 267481)
+++ sd/source/ui/notes/EditWindow.cxx	(working copy)
@@ -34,6 +34,8 @@
 #include "EditWindow.hxx"
 
 #include "sdmod.hxx"
+#include <i18npool/mslangid.hxx>
+#include <com/sun/star/i18n/ScriptType.hpp>
 #include <svx/editeng.hxx>
 #include <svx/editview.hxx>
 #include <vcl/scrbar.hxx>
@@ -174,9 +176,9 @@
             {   LANGUAGE_ARABIC_SAUDI_ARABIA,  LANGUAGE_NONE,
                 DEFAULTFONT_CTL_TEXT,   EE_CHAR_FONTINFO_CTL }
         };
-        aTable[0].nLang = aOpt.nDefaultLanguage;
-        aTable[1].nLang = aOpt.nDefaultLanguage_CJK;
-        aTable[2].nLang = aOpt.nDefaultLanguage_CTL;
+        aTable[0].nLang = MsLangId::resolveSystemLanguageByScriptType(aOpt.nDefaultLanguage, ::com::sun::star::i18n::ScriptType::LATIN);
+        aTable[1].nLang = MsLangId::resolveSystemLanguageByScriptType(aOpt.nDefaultLanguage_CJK, ::com::sun::star::i18n::ScriptType::ASIAN);
+        aTable[2].nLang = MsLangId::resolveSystemLanguageByScriptType(aOpt.nDefaultLanguage_CTL, ::com::sun::star::i18n::ScriptType::COMPLEX);
         //
         for (int i = 0;  i < 3;  ++i)
         {
Index: sd/source/ui/presenter/PresenterTextView.cxx
===================================================================
--- sd/source/ui/presenter/PresenterTextView.cxx	(revision 267481)
+++ sd/source/ui/presenter/PresenterTextView.cxx	(working copy)
@@ -33,6 +33,7 @@
 
 #include "PresenterTextView.hxx"
 
+#include <i18npool/mslangid.hxx>
 #include <cppcanvas/vclfactory.hxx>
 #include <svtools/itempool.hxx>
 #include <svtools/itemset.hxx>
@@ -52,7 +53,9 @@
 #include <com/sun/star/awt/Size.hpp>
 #include <com/sun/star/rendering/XSpriteCanvas.hpp>
 #include <com/sun/star/util/Color.hpp>
+#include <com/sun/star/i18n/ScriptType.hpp>
 
+
 using namespace ::com::sun::star;
 using namespace ::com::sun::star::uno;
 using namespace ::com::sun::star::lang;
@@ -381,9 +384,9 @@
             {   LANGUAGE_ARABIC_SAUDI_ARABIA,  LANGUAGE_NONE,
                 DEFAULTFONT_CTL_TEXT,   EE_CHAR_FONTINFO_CTL }
         };
-        aTable[0].nLang = aOpt.nDefaultLanguage;
-        aTable[1].nLang = aOpt.nDefaultLanguage_CJK;
-        aTable[2].nLang = aOpt.nDefaultLanguage_CTL;
+        aTable[0].nLang = MsLangId::resolveSystemLanguageByScriptType(aOpt.nDefaultLanguage, ::com::sun::star::i18n::ScriptType::LATIN);
+        aTable[1].nLang = MsLangId::resolveSystemLanguageByScriptType(aOpt.nDefaultLanguage_CJK, ::com::sun::star::i18n::ScriptType::ASIAN);
+        aTable[2].nLang = MsLangId::resolveSystemLanguageByScriptType(aOpt.nDefaultLanguage_CTL, ::com::sun::star::i18n::ScriptType::COMPLEX);
         //
         for (int i = 0;  i < 3;  ++i)
         {
Index: i18npool/source/isolang/mslangid.cxx
===================================================================
--- i18npool/source/isolang/mslangid.cxx	(revision 267481)
+++ i18npool/source/isolang/mslangid.cxx	(working copy)
@@ -120,6 +120,31 @@
 
 
 // static
+LanguageType MsLangId::resolveSystemLanguageByScriptType( LanguageType nLang, sal_Int16 nType )
+{
+    if (nLang == LANGUAGE_NONE)
+        return nLang;
+
+    nLang = getRealLanguage(nLang);
+    if (nType != ::com::sun::star::i18n::ScriptType::WEAK && getScriptType(nLang) != nType)
+    {
+        switch(nType)
+        {
+            case ::com::sun::star::i18n::ScriptType::ASIAN:
+                nLang = LANGUAGE_CHINESE_SIMPLIFIED;
+                break;
+            case ::com::sun::star::i18n::ScriptType::COMPLEX:
+                nLang = LANGUAGE_HINDI;
+                break;
+            default:
+                nLang = LANGUAGE_ENGLISH_US;
+                break;
+        }
+    }
+    return nLang;
+}
+
+// static
 void MsLangId::convertLanguageToLocale( LanguageType nLang,
         ::com::sun::star::lang::Locale & rLocale )
 {
Index: i18npool/inc/i18npool/mslangid.hxx
===================================================================
--- i18npool/inc/i18npool/mslangid.hxx	(revision 267481)
+++ i18npool/inc/i18npool/mslangid.hxx	(working copy)
@@ -216,6 +216,9 @@
     static LanguageType getRealLanguageWithoutConfig( LanguageType nLang );
 
 
+    static LanguageType resolveSystemLanguageByScriptType( LanguageType nLang, sal_Int16 nType );
+
+
     /** Whether locale has a Right-To-Left orientation. */
     static bool isRightToLeft( LanguageType nLang );
 
Index: sw/source/ui/app/docshini.cxx
===================================================================
--- sw/source/ui/app/docshini.cxx	(revision 267481)
+++ sw/source/ui/app/docshini.cxx	(working copy)
@@ -37,6 +37,7 @@
 #ifndef _SVX_DIALOGS_HRC
 #include <svx/dialogs.hrc>
 #endif
+#include <i18npool/mslangid.hxx>
 #include <sot/storinfo.hxx>
 #include <sot/storage.hxx>
 #include <svtools/zforlist.hxx>
@@ -58,6 +59,7 @@
 #endif
 #include <linguistic/lngprops.hxx>
 #include <com/sun/star/document/UpdateDocMode.hpp>
+#include <com/sun/star/i18n/ScriptType.hpp>
 #include <rtl/logfile.hxx>
 #include <sfx2/docfilt.hxx>
 #include <svx/xtable.hxx>
@@ -791,9 +793,9 @@
 
     SvtLinguConfig().GetOptions( aLinguOpt );
 
-    sal_Int16   nVal = aLinguOpt.nDefaultLanguage,
-                eCJK = aLinguOpt.nDefaultLanguage_CJK,
-                eCTL = aLinguOpt.nDefaultLanguage_CTL;
+    sal_Int16   nVal = MsLangId::resolveSystemLanguageByScriptType(aLinguOpt.nDefaultLanguage, ::com::sun::star::i18n::ScriptType::LATIN),
+                eCJK = MsLangId::resolveSystemLanguageByScriptType(aLinguOpt.nDefaultLanguage_CJK, ::com::sun::star::i18n::ScriptType::ASIAN),
+                eCTL = MsLangId::resolveSystemLanguageByScriptType(aLinguOpt.nDefaultLanguage_CTL, ::com::sun::star::i18n::ScriptType::COMPLEX);
 	aDfltSet.Put( SvxLanguageItem( nVal, RES_CHRATR_LANGUAGE ) );
     aDfltSet.Put( SvxLanguageItem( eCJK, RES_CHRATR_CJK_LANGUAGE ) );
     aDfltSet.Put( SvxLanguageItem( eCTL, RES_CHRATR_CTL_LANGUAGE ) );
Index: sw/source/ui/app/appopt.cxx
===================================================================
--- sw/source/ui/app/appopt.cxx	(revision 267481)
+++ sw/source/ui/app/appopt.cxx	(working copy)
@@ -201,6 +201,9 @@
         aLang >>= aLocale;
         pRet->Put(SvxLanguageItem(SvxLocaleToLanguage( aLocale ), SID_ATTR_CHAR_CJK_LANGUAGE));
 
+        aLang = aLinguCfg.GetProperty(C2U("DefaultLocale_CTL"));
+        aLang >>= aLocale;
+        pRet->Put(SvxLanguageItem(SvxLocaleToLanguage( aLocale ), SID_ATTR_CHAR_CTL_LANGUAGE));
     }
 	if(bTextDialog)
 		pRet->Put(SwPtrItem(FN_PARAM_STDFONTS, GetStdFontConfig()));
Index: sw/source/ui/dialog/ascfldlg.cxx
===================================================================
--- sw/source/ui/dialog/ascfldlg.cxx	(revision 267481)
+++ sw/source/ui/dialog/ascfldlg.cxx	(working copy)
@@ -35,6 +35,8 @@
 #endif
 #include <hintids.hxx>
 #include <rtl/textenc.h>
+#include <i18npool/mslangid.hxx>
+#include <com/sun/star/i18n/ScriptType.hpp>
 #include <svtools/lingucfg.hxx>
 #include <fontcfg.hxx>
 #include <swmodule.hxx>
@@ -234,14 +236,14 @@
                     switch(nAppScriptType)
                     {
                         case SCRIPTTYPE_ASIAN:
-                            aOpt.SetLanguage(aLinguOpt.nDefaultLanguage_CJK);
+                            aOpt.SetLanguage(MsLangId::resolveSystemLanguageByScriptType(aLinguOpt.nDefaultLanguage_CJK, SCRIPTTYPE_ASIAN));
                         break;
                         case SCRIPTTYPE_COMPLEX:
-                            aOpt.SetLanguage(aLinguOpt.nDefaultLanguage_CTL);
+                            aOpt.SetLanguage(MsLangId::resolveSystemLanguageByScriptType(aLinguOpt.nDefaultLanguage_CTL, SCRIPTTYPE_COMPLEX));
                         break;
                         //SCRIPTTYPE_LATIN:
                         default:
-                            aOpt.SetLanguage(aLinguOpt.nDefaultLanguage);
+                            aOpt.SetLanguage(MsLangId::resolveSystemLanguageByScriptType(aLinguOpt.nDefaultLanguage, SCRIPTTYPE_LATIN));
                     }
                 }
 			}
Index: sw/source/ui/config/fontcfg.cxx
===================================================================
--- sw/source/ui/config/fontcfg.cxx	(revision 267481)
+++ sw/source/ui/config/fontcfg.cxx	(working copy)
@@ -33,10 +33,12 @@
 
 
 #include <fontcfg.hxx>
+#include <i18npool/mslangid.hxx>
 #include <vcl/outdev.hxx>
 #include <svtools/lingucfg.hxx>
 #include <com/sun/star/uno/Any.hxx>
 #include <com/sun/star/uno/Sequence.hxx>
+#include <com/sun/star/i18n/ScriptType.hpp>
 #include <swtypes.hxx>
 
 #include <unomid.h>
@@ -116,9 +118,10 @@
 
     SvtLinguConfig().GetOptions( aLinguOpt );
 
-	sal_Int16   eWestern = aLinguOpt.nDefaultLanguage,
-                eCJK = aLinguOpt.nDefaultLanguage_CJK,
-                eCTL = aLinguOpt.nDefaultLanguage_CTL;
+    sal_Int16   eWestern = MsLangId::resolveSystemLanguageByScriptType(aLinguOpt.nDefaultLanguage, ::com::sun::star::i18n::ScriptType::LATIN),
+                eCJK = MsLangId::resolveSystemLanguageByScriptType(aLinguOpt.nDefaultLanguage_CJK, ::com::sun::star::i18n::ScriptType::ASIAN),
+                eCTL = MsLangId::resolveSystemLanguageByScriptType(aLinguOpt.nDefaultLanguage_CTL, ::com::sun::star::i18n::ScriptType::COMPLEX);
+
     for(sal_Int16 i = 0; i < DEF_FONT_COUNT; i++)
     {
         sDefaultFonts[i] = GetDefaultFor(i,
@@ -163,9 +166,10 @@
 
     SvtLinguConfig().GetOptions( aLinguOpt );
 
-	sal_Int16   eWestern = aLinguOpt.nDefaultLanguage,
-                eCJK = aLinguOpt.nDefaultLanguage_CJK,
-                eCTL = aLinguOpt.nDefaultLanguage_CTL;
+    sal_Int16   eWestern = MsLangId::resolveSystemLanguageByScriptType(aLinguOpt.nDefaultLanguage, ::com::sun::star::i18n::ScriptType::LATIN),
+                eCJK = MsLangId::resolveSystemLanguageByScriptType(aLinguOpt.nDefaultLanguage_CJK, ::com::sun::star::i18n::ScriptType::ASIAN),
+                eCTL = MsLangId::resolveSystemLanguageByScriptType(aLinguOpt.nDefaultLanguage_CTL, ::com::sun::star::i18n::ScriptType::COMPLEX);
+
     for(sal_uInt16 nProp = 0;
         nProp < sal::static_int_cast< sal_uInt16, sal_Int32 >( aNames.getLength() );
             nProp++)
@@ -198,9 +202,10 @@
 
     SvtLinguConfig().GetOptions( aLinguOpt );
 
-	sal_Int16   eWestern = aLinguOpt.nDefaultLanguage,
-                eCJK = aLinguOpt.nDefaultLanguage_CJK,
-                eCTL = aLinguOpt.nDefaultLanguage_CTL;
+    sal_Int16   eWestern = MsLangId::resolveSystemLanguageByScriptType(aLinguOpt.nDefaultLanguage, ::com::sun::star::i18n::ScriptType::LATIN),
+                eCJK = MsLangId::resolveSystemLanguageByScriptType(aLinguOpt.nDefaultLanguage_CJK, ::com::sun::star::i18n::ScriptType::ASIAN),
+                eCTL = MsLangId::resolveSystemLanguageByScriptType(aLinguOpt.nDefaultLanguage_CTL, ::com::sun::star::i18n::ScriptType::COMPLEX);
+
     String sDefFont(GetDefaultFor(FONT_STANDARD, eWestern));
     String sDefFontCJK(GetDefaultFor(FONT_STANDARD_CJK, eCJK));
     String sDefFontCTL(GetDefaultFor(FONT_STANDARD_CTL, eCTL));
@@ -320,9 +325,11 @@
     {
         SvtLinguOptions aLinguOpt;
         SvtLinguConfig().GetOptions( aLinguOpt );
-        sal_Int16   eWestern = aLinguOpt.nDefaultLanguage,
-                    eCJK = aLinguOpt.nDefaultLanguage_CJK,
-                    eCTL = aLinguOpt.nDefaultLanguage_CTL;
+
+        sal_Int16 eWestern = MsLangId::resolveSystemLanguageByScriptType(aLinguOpt.nDefaultLanguage, ::com::sun::star::i18n::ScriptType::LATIN),
+                  eCJK = MsLangId::resolveSystemLanguageByScriptType(aLinguOpt.nDefaultLanguage_CJK, ::com::sun::star::i18n::ScriptType::ASIAN),
+                  eCTL = MsLangId::resolveSystemLanguageByScriptType(aLinguOpt.nDefaultLanguage_CTL, ::com::sun::star::i18n::ScriptType::COMPLEX);
+
         // #i92090# default height value sets back to -1
         const sal_Int32 nDefaultHeight = GetDefaultHeightFor(nFontType, lcl_LanguageOfType(nFontType, eWestern, eCJK, eCTL));
         const bool bIsDefaultHeight = nHeight == nDefaultHeight;
Index: sw/source/ui/lingu/olmenu.cxx
===================================================================
--- sw/source/ui/lingu/olmenu.cxx	(revision 267481)
+++ sw/source/ui/lingu/olmenu.cxx	(working copy)
@@ -62,6 +62,7 @@
 #include <com/sun/star/container/XNameAccess.hpp>
 #include <com/sun/star/frame/XModuleManager.hpp>
 #include <com/sun/star/lang/XMultiServiceFactory.hpp>
+#include <com/sun/star/i18n/ScriptType.hpp>
 #include <svx/dlgutil.hxx>
 #include <svtools/itemset.hxx>
 #include <svx/langitem.hxx>
@@ -168,7 +169,7 @@
 		SvtLinguOptions aLinguOpt;
 		SvtLinguConfig().GetOptions( aLinguOpt );
 		// The default document language from "Tools/Options - Language Settings - Languages: Western"
-		aLangList[0] = aLinguOpt.nDefaultLanguage;
+		aLangList[0] = MsLangId::resolveSystemLanguageByScriptType(aLinguOpt.nDefaultLanguage, ::com::sun::star::i18n::ScriptType::LATIN);
 		// The one from "Tools/Options - Language Settings - Languages: User interface"
 		aLangList[1] = rSettings.GetUILanguage();
 		// The one from "Tools/Options - Language Settings - Languages: Locale setting"
Index: sw/util/makefile.mk
===================================================================
--- sw/util/makefile.mk	(revision 267481)
+++ sw/util/makefile.mk	(working copy)
@@ -190,6 +190,7 @@
 			$(SVLLIB) \
 			$(UNOTOOLSLIB) \
             $(TOOLSLIB) \
+			$(I18NISOLANGLIB) \
 			$(COMPHELPERLIB) \
 			$(UCBHELPERLIB)	\
 			$(CPPUHELPERLIB)	\
Index: desktop/source/app/langselect.cxx
===================================================================
--- desktop/source/app/langselect.cxx	(revision 267481)
+++ desktop/source/app/langselect.cxx	(working copy)
@@ -96,33 +96,6 @@
 
     sal_Bool bSuccess = sal_False;
     
-    // #i42730#get the windows 16Bit locale - it should be preferred over the UI language
-    try
-    {
-        Reference< XPropertySet > xProp(getConfigAccess("org.openoffice.System/L10N/", sal_False), UNO_QUERY_THROW);
-        Any aWin16SysLocale = xProp->getPropertyValue(OUString::createFromAscii("SystemLocale"));
-        ::rtl::OUString sWin16SysLocale;
-        aWin16SysLocale >>= sWin16SysLocale;
-        if( sWin16SysLocale.getLength())
-            setDefaultLocale(sWin16SysLocale);
-    }
-    catch(const Exception&)
-    {
-    }
-    
-    // #i32939# use system locale to set document default locale
-    try 
-    {
-        OUString usLocale;
-        Reference< XPropertySet > xLocaleProp(getConfigAccess(
-            "org.openoffice.System/L10N", sal_True), UNO_QUERY_THROW);
-           // "org.openoffice.Office.Linguistic/General", sal_True), UNO_QUERY_THROW);
-        xLocaleProp->getPropertyValue(OUString::createFromAscii("Locale")) >>= usLocale;     
-            setDefaultLocale(usLocale);
-    } 
-    catch (Exception&) 
-    {
-    }
     // get the selected UI language as string
     OUString aLocaleString = getLanguageString();
     if ( aLocaleString.getLength() > 0 )
@@ -158,93 +131,9 @@
         }
     }
 
-    // #i32939# setting of default document locale
-    // #i32939# this should not be based on the UI language
-    setDefaultLocale(aLocaleString);
-
-    // fallback: set en-US as default Western locale if no Western locale is set
-    OUString usWesternName = OUString::createFromAscii("DefaultLocale");
-    try
-    {       
-        Reference< XPropertySet > xProp(getConfigAccess(
-            "org.openoffice.Office.Linguistic/General/", sal_True), UNO_QUERY_THROW);
-        OUString usValue;
-        xProp->getPropertyValue(usWesternName) >>= usValue;
-        if (usValue.getLength() == 0)
-        {
-            // there is no western document language selected
-            // if the selected locale is a western locale, this
-            // will become the default western docuemnt language
-            // otherwise, fall back to en-US
-            OUString usDefault = OUString::createFromAscii("en-US");
-            try
-            {
-                xProp->setPropertyValue(usWesternName, makeAny(usDefault));
-                Reference< XChangesBatch >(xProp,UNO_QUERY_THROW)->commitChanges();
-            }
-            catch ( PropertyVetoException )
-            {
-                // we are not allowed to change this
-            }
-        }
-    }
-    catch ( Exception& )
-    {
-    }
-
     return bSuccess;
 }
 
-void LanguageSelection::setDefaultLocale(const OUString& usUILocale)
-{
-    // #i32939# setting of default document locale
-    // org.openoffice.Office.Linguistic/General/DefaultLocale
-    // org.openoffice.Office.Linguistic/General/DefaultLocale_CJK
-    // org.openoffice.Office.Linguistic/General/DefaultLocale_CTL
-
-    // determine script type of UI locale
-    LanguageType ltUILocale = MsLangId::convertIsoStringToLanguage(usUILocale);
-    sal_uInt16 nScriptType = SvtLanguageOptions::GetScriptTypeOfLanguage(ltUILocale);
-
-    try
-    {
-        Reference< XPropertySet > xProp(getConfigAccess(
-                                            "org.openoffice.Office.Linguistic/General/", sal_True), UNO_QUERY_THROW);
-        OUString usName = OUString::createFromAscii("DefaultLocale");
-        switch (nScriptType)
-        {
-            case SCRIPTTYPE_ASIAN:
-                usName = OUString::createFromAscii("DefaultLocale_CJK");
-                break;
-            case SCRIPTTYPE_COMPLEX:
-                usName = OUString::createFromAscii("DefaultLocale_CTL");
-                break;
-        }
-        OUString usValue;
-        xProp->getPropertyValue(usName) >>= usValue;
-        if (usValue.getLength() == 0)
-        {
-            // there is no document language set, for the script type selected
-            // in the UI
-            // covert the LanguageType we've got from the LanguageTable back to
-            // an iso string and store it
-            OUString usDefault = MsLangId::convertLanguageToIsoString(ltUILocale);
-            try
-            {
-                xProp->setPropertyValue(usName, makeAny(usDefault));
-                Reference< XChangesBatch >(xProp, UNO_QUERY_THROW)->commitChanges();
-            }
-            catch ( PropertyVetoException )
-            {
-                // we are not allowed to change this
-            }
-        }
-    }
-    catch ( Exception& )
-    {
-    }
-}
-
 OUString LanguageSelection::getLanguageString()
 {
     // did we already find a language?
Index: desktop/source/app/langselect.hxx
===================================================================
--- desktop/source/app/langselect.hxx	(revision 267481)
+++ desktop/source/app/langselect.hxx	(working copy)
@@ -60,7 +60,6 @@
     static rtl::OUString getUserLanguage();
     static rtl::OUString getSystemLanguage();
     static void resetUserLanguage();
-    static void setDefaultLocale(const rtl::OUString&);
 
 public:
     static com::sun::star::lang::Locale IsoStringToLocale(const rtl::OUString& str);
Index: svx/source/dialog/optgdlg.cxx
===================================================================
--- svx/source/dialog/optgdlg.cxx	(revision 267481)
+++ svx/source/dialog/optgdlg.cxx	(working copy)
@@ -103,6 +103,7 @@
 #include <com/sun/star/uno/Any.hxx>
 #include <com/sun/star/container/XContentEnumerationAccess.hpp>
 #include <com/sun/star/container/XSet.hpp>
+#include <com/sun/star/i18n/ScriptType.hpp>
 
 #include <vcl/svapp.hxx>
 
@@ -1201,8 +1202,13 @@
 
     // initialize user interface language selection
     SvtLanguageTable* pLanguageTable = new SvtLanguageTable;
-    String aStr( pLanguageTable->GetString( LANGUAGE_SYSTEM ) );
-    aUserInterfaceLB.InsertEntry(aStr);
+    const String aStr( pLanguageTable->GetString( LANGUAGE_SYSTEM ) );
+
+    String aUILang(aStr);
+    aUILang += String::CreateFromAscii(" - ");
+    aUILang += pLanguageTable->GetString( Application::GetSettings().GetUILanguage() );
+
+    aUserInterfaceLB.InsertEntry(aUILang);
     aUserInterfaceLB.SetEntryData(0, 0);
     aUserInterfaceLB.SelectEntryPos(0);
     try
@@ -1264,16 +1270,24 @@
     }
 
     aWesternLanguageLB.SetLanguageList( LANG_LIST_WESTERN | LANG_LIST_ONLY_KNOWN, TRUE,  FALSE, TRUE );
-    aAsianLanguageLB  .SetLanguageList( LANG_LIST_CJK     | LANG_LIST_ONLY_KNOWN, TRUE,  FALSE, TRUE );
+    aWesternLanguageLB.InsertDefaultLanguage( ::com::sun::star::i18n::ScriptType::LATIN );
+    aAsianLanguageLB.SetLanguageList( LANG_LIST_CJK     | LANG_LIST_ONLY_KNOWN, TRUE,  FALSE, TRUE );
+    aAsianLanguageLB.InsertDefaultLanguage( ::com::sun::star::i18n::ScriptType::ASIAN );
     aComplexLanguageLB.SetLanguageList( LANG_LIST_CTL     | LANG_LIST_ONLY_KNOWN, TRUE,  FALSE, TRUE );
-    aLocaleSettingLB  .SetLanguageList( LANG_LIST_ALL     | LANG_LIST_ONLY_KNOWN, FALSE, FALSE, FALSE);
-    aLocaleSettingLB.InsertLanguage( LANGUAGE_SYSTEM );
+    aComplexLanguageLB.InsertDefaultLanguage( ::com::sun::star::i18n::ScriptType::COMPLEX );
 
-    // insert SYSTEM entry, no specific currency
-    aCurrencyLB.InsertEntry( aStr );
+    aLocaleSettingLB.SetLanguageList( LANG_LIST_ALL     | LANG_LIST_ONLY_KNOWN, FALSE, FALSE, FALSE);
+    aLocaleSettingLB.InsertDefaultLanguage( ::com::sun::star::i18n::ScriptType::WEAK );
+
+    const NfCurrencyTable& rCurrTab = SvNumberFormatter::GetTheCurrencyTable();
+    const NfCurrencyEntry& rCurr = SvNumberFormatter::GetCurrencyEntry( LANGUAGE_SYSTEM );
+    // insert SYSTEM entry
+    String aDefaultCurr(aStr);
+    aDefaultCurr += String::CreateFromAscii(" - ");
+    aDefaultCurr += rCurr.GetBankSymbol();
+    aCurrencyLB.InsertEntry( aDefaultCurr );
     // all currencies
     String aTwoSpace( RTL_CONSTASCII_USTRINGPARAM( "  " ) );
-    const NfCurrencyTable& rCurrTab = SvNumberFormatter::GetTheCurrencyTable();
     USHORT nCurrCount = rCurrTab.Count();
     // first entry is SYSTEM, skip it
     for ( USHORT j=1; j < nCurrCount; ++j )
@@ -1495,7 +1509,7 @@
 		if(!bCurrentDocCBChecked)
 		{
 			Any aValue;
-			Locale aLocale = SvxCreateLocale( eSelectLang );
+			Locale aLocale = MsLangId::convertLanguageToLocale( eSelectLang, false );
 			aValue <<= aLocale;
 			OUString aPropName( C2U("DefaultLocale") );
             pLangConfig->aLinguConfig.SetProperty( aPropName, aValue );
@@ -1504,7 +1518,8 @@
 		}
 		if(pCurrentDocShell)
 		{
-			rSet.Put(SvxLanguageItem(eSelectLang, SID_ATTR_LANGUAGE));
+			rSet.Put(SvxLanguageItem(MsLangId::resolveSystemLanguageByScriptType(eSelectLang, ::com::sun::star::i18n::ScriptType::LATIN),
+                SID_ATTR_LANGUAGE));
 			bRet = TRUE;
 		}
 	}
@@ -1515,7 +1530,7 @@
 		if(!bCurrentDocCBChecked)
 		{
 			Any aValue;
-			Locale aLocale = SvxCreateLocale( eSelectLang );
+			Locale aLocale = MsLangId::convertLanguageToLocale( eSelectLang, false );
 			aValue <<= aLocale;
 			OUString aPropName( C2U("DefaultLocale_CJK") );
             pLangConfig->aLinguConfig.SetProperty( aPropName, aValue );
@@ -1524,7 +1539,8 @@
 		}
 		if(pCurrentDocShell)
 		{
-			rSet.Put(SvxLanguageItem(eSelectLang, SID_ATTR_CHAR_CJK_LANGUAGE));
+			rSet.Put(SvxLanguageItem(MsLangId::resolveSystemLanguageByScriptType(eSelectLang, ::com::sun::star::i18n::ScriptType::ASIAN),
+                SID_ATTR_CHAR_CJK_LANGUAGE));
 			bRet = TRUE;
 		}
 	}
@@ -1535,7 +1551,7 @@
 		if(!bCurrentDocCBChecked)
 		{
 			Any aValue;
-			Locale aLocale = SvxCreateLocale( eSelectLang );
+			Locale aLocale = MsLangId::convertLanguageToLocale( eSelectLang, false );
 			aValue <<= aLocale;
 			OUString aPropName( C2U("DefaultLocale_CTL") );
             pLangConfig->aLinguConfig.SetProperty( aPropName, aValue );
@@ -1544,7 +1560,8 @@
 		}
 		if(pCurrentDocShell)
 		{
-			rSet.Put(SvxLanguageItem(eSelectLang, SID_ATTR_CHAR_CTL_LANGUAGE));
+			rSet.Put(SvxLanguageItem(MsLangId::resolveSystemLanguageByScriptType(eSelectLang, ::com::sun::star::i18n::ScriptType::COMPLEX),
+                SID_ATTR_CHAR_CTL_LANGUAGE));
 			bRet = TRUE;
 		}
 	}
@@ -1644,13 +1661,18 @@
         aWestLang = pLangConfig->aLinguConfig.GetProperty(C2U("DefaultLocale"));
         Locale aLocale;
         aWestLang >>= aLocale;
-        eCurLang = SvxLocaleToLanguage( aLocale );
+
+        eCurLang = MsLangId::convertLocaleToLanguage( aLocale );
+
         aCJKLang = pLangConfig->aLinguConfig.GetProperty(C2U("DefaultLocale_CJK"));
+        aLocale = Locale();
         aCJKLang >>= aLocale;
-        eCurLangCJK = SvxLocaleToLanguage( aLocale );
+        eCurLangCJK = MsLangId::convertLocaleToLanguage( aLocale );
+
         aCTLLang = pLangConfig->aLinguConfig.GetProperty(C2U("DefaultLocale_CTL"));
+        aLocale = Locale();
         aCTLLang >>= aLocale;
-        eCurLangCTL = SvxLocaleToLanguage( aLocale );
+        eCurLangCTL = MsLangId::convertLocaleToLanguage( aLocale );
     }
     catch(Exception&)
     {
@@ -1662,13 +1684,25 @@
         aCurrentDocCB.Check(bLanguageCurrentDoc_Impl);
 		const SfxPoolItem* pLang;
 		if( SFX_ITEM_SET == rSet.GetItemState(SID_ATTR_LANGUAGE, FALSE, &pLang))
-			eCurLang = ((const SvxLanguageItem*)pLang)->GetValue();
+        {
+	        LanguageType eTempCurLang = ((const SvxLanguageItem*)pLang)->GetValue();
+            if (MsLangId::resolveSystemLanguageByScriptType(eCurLang, ::com::sun::star::i18n::ScriptType::LATIN) != eTempCurLang)
+                eCurLang = eTempCurLang;
+        }
 
 		if( SFX_ITEM_SET == rSet.GetItemState(SID_ATTR_CHAR_CJK_LANGUAGE, FALSE, &pLang))
-			eCurLangCJK = ((const SvxLanguageItem*)pLang)->GetValue();
+        {
+			LanguageType eTempCurLang = ((const SvxLanguageItem*)pLang)->GetValue();
+            if (MsLangId::resolveSystemLanguageByScriptType(eCurLangCJK, ::com::sun::star::i18n::ScriptType::ASIAN) != eTempCurLang)
+                eCurLangCJK = eTempCurLang;
+        }
 
 		if( SFX_ITEM_SET == rSet.GetItemState(SID_ATTR_CHAR_CTL_LANGUAGE, FALSE, &pLang))
-			eCurLangCTL = ((const SvxLanguageItem*)pLang)->GetValue();
+        {
+			LanguageType eTempCurLang = ((const SvxLanguageItem*)pLang)->GetValue();
+            if (MsLangId::resolveSystemLanguageByScriptType(eCurLangCTL, ::com::sun::star::i18n::ScriptType::COMPLEX) != eTempCurLang)
+                eCurLangCTL = eTempCurLang;
+        }
 	}
     if(LANGUAGE_NONE == eCurLang || LANGUAGE_DONTKNOW == eCurLang)
         aWesternLanguageLB.SelectLanguage(LANGUAGE_NONE);
Index: svx/source/dialog/langbox.cxx
===================================================================
--- svx/source/dialog/langbox.cxx	(revision 267481)
+++ svx/source/dialog/langbox.cxx	(working copy)
@@ -37,8 +37,9 @@
 #include <com/sun/star/linguistic2/XLinguServiceManager.hdl>
 #endif
 #include <com/sun/star/linguistic2/XAvailableLocales.hpp>
+#include <com/sun/star/i18n/ScriptType.hpp>
 #include <linguistic/misc.hxx>
-#include<rtl/ustring.hxx>
+#include <rtl/ustring.hxx>
 #include <unotools/localedatawrapper.hxx>
 
 #include <svtools/langtab.hxx>
@@ -315,6 +316,13 @@
 
 USHORT SvxLanguageBox::InsertLanguage( const LanguageType nLangType, USHORT nPos )
 {
+    return ImplInsertLanguage( nLangType, nPos, ::com::sun::star::i18n::ScriptType::WEAK );
+}
+
+//------------------------------------------------------------------------
+
+USHORT SvxLanguageBox::ImplInsertLanguage( const LanguageType nLangType, USHORT nPos, sal_Int16 nType )
+{
     LanguageType nLang = MsLangId::getReplacementForObsoleteLanguage( nLangType);
     // For obsolete and to be replaced languages check whether an entry of the 
     // replacement already exists and if so don't add an entry with identical 
@@ -330,6 +338,14 @@
 	if (LANGUAGE_NONE == nLang && m_bHasLangNone && m_bLangNoneIsLangAll)
 		aStrEntry = m_aAllString;
 
+    LanguageType nRealLang = nLang;
+    if (nRealLang == LANGUAGE_SYSTEM)
+    {
+        nRealLang = MsLangId::resolveSystemLanguageByScriptType(nRealLang, nType);
+        aStrEntry.AppendAscii(" - ");
+	aStrEntry.Append(m_pLangTable->GetString( nRealLang ));
+    }
+
 	USHORT nAt = 0;
 	if ( m_bWithCheckmark )
 	{
@@ -342,7 +358,7 @@
                 m_pSpellUsedLang = new Sequence< INT16 >( xSpell->getLanguages() );
         }
         bFound = m_pSpellUsedLang ?
-                    lcl_SeqHasLang( *m_pSpellUsedLang, nLang ) : FALSE;
+                    lcl_SeqHasLang( *m_pSpellUsedLang, nRealLang ) : FALSE;
 
         nAt = ImplInsertImgEntry( aStrEntry, nPos, bFound );
 	}
@@ -355,6 +371,13 @@
 
 //------------------------------------------------------------------------
 
+USHORT SvxLanguageBox::InsertDefaultLanguage( sal_Int16 nType, USHORT nPos )
+{
+    return ImplInsertLanguage( LANGUAGE_SYSTEM, nPos, nType );
+}
+
+//------------------------------------------------------------------------
+
 USHORT SvxLanguageBox::InsertLanguage( const LanguageType nLangType,
         BOOL bCheckEntry, USHORT nPos )
 {
Index: svx/inc/svx/langbox.hxx
===================================================================
--- svx/inc/svx/langbox.hxx	(revision 267481)
+++ svx/inc/svx/langbox.hxx	(working copy)
@@ -77,6 +77,7 @@
 
     SVX_DLLPRIVATE void                    Init();
     SVX_DLLPRIVATE USHORT                  ImplInsertImgEntry( const String& rEntry, USHORT nPos, bool bChecked );
+    SVX_DLLPRIVATE USHORT                  ImplInsertLanguage(LanguageType, USHORT, sal_Int16 );
 
 public:
     SvxLanguageBox( Window* pParent, WinBits nWinStyle, BOOL bCheck = FALSE);
@@ -88,6 +89,7 @@
 							BOOL bCheckSpellAvail = FALSE );
 
 	USHORT			InsertLanguage( const LanguageType eLangType, USHORT nPos = LISTBOX_APPEND );
+	USHORT			InsertDefaultLanguage( sal_Int16 nType, USHORT nPos = LISTBOX_APPEND );
     USHORT          InsertLanguage( const LanguageType eLangType,
                             BOOL bCheckEntry, USHORT nPos = LISTBOX_APPEND );
 	void			RemoveLanguage( const LanguageType eLangType );
Index: svtools/source/config/lingucfg.cxx
===================================================================
--- svtools/source/config/lingucfg.cxx	(revision 267481)
+++ svtools/source/config/lingucfg.cxx	(working copy)
@@ -72,69 +72,38 @@
 ///////////////////////////////////////////////////////////////////////////
 
 
-static lang::Locale lcl_CreateLocale( LanguageType eLang )
-{
-    lang::Locale aLocale;
-	if ( eLang != LANGUAGE_NONE )
-		MsLangId::convertLanguageToLocale( eLang, aLocale );
-
-	return aLocale;
-}
-
-
-static INT16 lcl_LocaleToLanguage( const lang::Locale& rLocale )
-{
-	//	empty Locale -> LANGUAGE_NONE
-	if ( rLocale.Language.getLength() == 0 )
-		return LANGUAGE_NONE;
-
-	//	Variant of Locale is ignored
-	return MsLangId::convertLocaleToLanguage( rLocale );
-}
-
-
 static BOOL lcl_SetLocale( INT16 &rLanguage, const uno::Any &rVal )
 {
-	BOOL bSucc = FALSE;
+    BOOL bSucc = FALSE;
 
     lang::Locale aNew;
-	if (rVal >>= aNew)	// conversion successful?
-	{
-		INT16 nNew = lcl_LocaleToLanguage( aNew );
-		if (nNew != rLanguage)
-		{
-			rLanguage = nNew;
-			bSucc = TRUE;
-		}
-	}
-
-	return bSucc;
+    if (rVal >>= aNew)	// conversion successful?
+    {
+        INT16 nNew = MsLangId::convertLocaleToLanguage( aNew );
+        if (nNew != rLanguage)
+        {
+            rLanguage = nNew;
+            bSucc = TRUE;
+        }
+    }
+    return bSucc;
 }
 
 
-static inline INT16 lcl_CfgLocaleStrToLanguage( const OUString &rCfgLocaleStr )
-{
-	INT16 nRes = LANGUAGE_NONE;
-    if (0 != rCfgLocaleStr.getLength())
-        nRes = MsLangId::convertIsoStringToLanguage( rCfgLocaleStr );
-    return nRes;
-}
-
-
 static inline const OUString lcl_LanguageToCfgLocaleStr( INT16 nLanguage )
 {
     OUString aRes;
-    if (LANGUAGE_NONE != nLanguage)
+    if (LANGUAGE_SYSTEM != nLanguage)
         aRes = MsLangId::convertLanguageToIsoString( nLanguage );
     return aRes;
 }
 
 
-static void lcl_CfgAnyToLanguage( const uno::Any &rVal, INT16& rLanguage )
+static INT16 lcl_CfgAnyToLanguage( const uno::Any &rVal )
 {
-	OUString aTmp;
-    if ((rVal >>= aTmp)  &&  0 != aTmp.getLength())
-       rLanguage = MsLangId::convertIsoStringToLanguage( aTmp );
+    OUString aTmp;
+    rVal >>= aTmp;
+    return (aTmp.getLength() == 0) ? LANGUAGE_SYSTEM : MsLangId::convertIsoStringToLanguage( aTmp );
 }
 
 
@@ -143,10 +112,9 @@
 SvtLinguOptions::SvtLinguOptions()
 {
     nDefaultLanguage = LANGUAGE_NONE;
-
 	nDefaultLanguage_CJK = LANGUAGE_NONE;
 	nDefaultLanguage_CTL = LANGUAGE_NONE;
-
+    
 	// general options
 	bIsUseDictionaryList	=
 	bIsIgnoreControlCharacters	= TRUE;
@@ -428,19 +396,19 @@
         }
         case UPH_DEFAULT_LOCALE :
         {
-            lang::Locale aLocale( lcl_CreateLocale( rOpt.nDefaultLanguage ) );
+            lang::Locale aLocale( MsLangId::convertLanguageToLocale( rOpt.nDefaultLanguage, false ) );
             aRes.setValue( &aLocale, ::getCppuType((lang::Locale*)0 ));
             break;
         }
         case UPH_DEFAULT_LOCALE_CJK :
         {
-            lang::Locale aLocale( lcl_CreateLocale( rOpt.nDefaultLanguage_CJK ) );
+            lang::Locale aLocale( MsLangId::convertLanguageToLocale( rOpt.nDefaultLanguage_CJK, false ) );
             aRes.setValue( &aLocale, ::getCppuType((lang::Locale*)0 ));
             break;
         }
         case UPH_DEFAULT_LOCALE_CTL :
         {
-            lang::Locale aLocale( lcl_CreateLocale( rOpt.nDefaultLanguage_CTL ) );
+            lang::Locale aLocale( MsLangId::convertLanguageToLocale( rOpt.nDefaultLanguage_CTL, false ) );
             aRes.setValue( &aLocale, ::getCppuType((lang::Locale*)0 ));
             break;
         }
@@ -654,7 +622,7 @@
             switch ( nPropertyHandle )
             {
                 case UPH_DEFAULT_LOCALE : 
-                    { rOpt.bRODefaultLanguage = pROStates[i]; lcl_CfgAnyToLanguage( rVal, rOpt.nDefaultLanguage ); } break;
+                    { rOpt.bRODefaultLanguage = pROStates[i]; rOpt.nDefaultLanguage = lcl_CfgAnyToLanguage( rVal ); } break;
                 case UPH_ACTIVE_DICTIONARIES : 
                     { rOpt.bROActiveDics = pROStates[i]; rVal >>= rOpt.aActiveDics;   } break;
                 case UPH_IS_USE_DICTIONARY_LIST : 
@@ -662,9 +630,9 @@
                 case UPH_IS_IGNORE_CONTROL_CHARACTERS : 
                     { rOpt.bROIsIgnoreControlCharacters = pROStates[i]; rVal >>= rOpt.bIsIgnoreControlCharacters;    } break;
                 case UPH_DEFAULT_LOCALE_CJK : 
-                    { rOpt.bRODefaultLanguage_CJK = pROStates[i]; lcl_CfgAnyToLanguage( rVal, rOpt.nDefaultLanguage_CJK );    } break;
+                    { rOpt.bRODefaultLanguage_CJK = pROStates[i]; rOpt.nDefaultLanguage_CJK = lcl_CfgAnyToLanguage( rVal );    } break;
                 case UPH_DEFAULT_LOCALE_CTL : 
-                    { rOpt.bRODefaultLanguage_CTL = pROStates[i]; lcl_CfgAnyToLanguage( rVal, rOpt.nDefaultLanguage_CTL );    } break;
+                    { rOpt.bRODefaultLanguage_CTL = pROStates[i]; rOpt.nDefaultLanguage_CTL = lcl_CfgAnyToLanguage( rVal );    } break;
 
                 case UPH_IS_SPELL_UPPER_CASE : 
                     { rOpt.bROIsSpellUpperCase = pROStates[i]; rVal >>= rOpt.bIsSpellUpperCase; } break;


Index: openoffice.org.spec
===================================================================
RCS file: /cvs/pkgs/rpms/openoffice.org/devel/openoffice.org.spec,v
retrieving revision 1.1826
retrieving revision 1.1827
diff -u -r1.1826 -r1.1827
--- openoffice.org.spec	24 Feb 2009 08:53:13 -0000	1.1826
+++ openoffice.org.spec	24 Feb 2009 13:02:35 -0000	1.1827
@@ -1,6 +1,6 @@
 %define oootag OOO310
 %define ooomilestone 2
-%define rh_rpm_release 3
+%define rh_rpm_release 4
 
 # rhbz#465664 jar-repacking breaks help by reordering META-INF/MANIFEST.MF
 %define __jar_repack %{nil}
@@ -70,7 +70,7 @@
 
 Patch0:  openoffice.org-simple-crash_report.sh
 Patch1:  openoffice.org-multiliblauncher.sh
-Patch2:  openoffice.org-1.9.87.rh151357.setlangtolocale.patch
+Patch2:  planned.workspace.defaultdoclang.patch
 %if %{gtkprintui}
 Patch3:  openoffice.org-2.0.3.rh127576.gtkunixprintdialog.patch
 %endif
@@ -129,6 +129,7 @@
 Patch56: openoffice.org-3.1.0.ooo99529.sw.notrailingnewline.patch
 Patch57: openoffice.org-3.1.0.ooo99541.sw.reopen.flat.addrbooks.patch
 Patch58: openoffice.org-3.1.0.ooo98465.sw.fix-doctables.patch
+Patch59: openoffice.org-3.1.0.oooXXXXX.solenv.allowmissing.patch
 
 %define python_py_sitearch %(%{__python} -c "from distutils.sysconfig import get_python_lib; print get_python_lib(0)")
 %define instdir %{_libdir}
@@ -1533,7 +1534,7 @@
 mv -f redhat.soc extras/source/palettes/standard.soc
 cp -p %{SOURCE1} extras/source/database/evolocal.odb
 cp -p %{SOURCE5} external/unowinreg/unowinreg.dll
-%patch2  -p1 -b .rh151357.setlangtolocale.patch
+%patch2  -p0 -b .workspace.defaultdoclang.patch
 %if %{gtkprintui}
 %patch3 -p1 -b .rh127576.gtkunixprintdialog.patch
 %endif
@@ -1592,6 +1593,7 @@
 %patch56 -p0 -b .ooo99529.sw.notrailingnewline.patch
 %patch57 -p0 -b .ooo99541.sw.reopen.flat.addrbooks.patch
 %patch58 -p0 -b .ooo98465.sw.fix-doctables.patch
+%patch59 -p1 -b .oooXXXXX.solenv.allowmissing.patch
 
 %build
 echo build start time is `date`, diskspace: `df -h . | tail -n 1`
@@ -2372,7 +2374,6 @@
 %dir %{basisinstdir}
 %docdir %{basisinstdir}/help
 %dir %{basisinstdir}/help
-%docdir %{basisinstdir}/help/en
 %dir %{basisinstdir}/help/en
 %{basisinstdir}/help/en/default.css
 %{basisinstdir}/help/en/err.html
@@ -3131,8 +3132,6 @@
 %files base-core
 %defattr(-,root,root,-)
 %dir %{basisinstdir}
-%docdir %{basisinstdir}/help
-%docdir %{basisinstdir}/help/en
 %{basisinstdir}/help/en/sdatabase.*
 %dir %{basisinstdir}/program
 %dir %{basisinstdir}/program/classes
@@ -3402,8 +3401,6 @@
 %files calc-core
 %defattr(-,root,root,-)
 %dir %{basisinstdir}
-%docdir %{basisinstdir}/help
-%docdir %{basisinstdir}/help/en
 %{basisinstdir}/help/en/scalc.*
 %dir %{basisinstdir}/program
 %{basisinstdir}/program/libanalysis%{SOPOST}.so
@@ -3496,8 +3493,6 @@
 %files draw-core
 %defattr(-,root,root,-)
 %dir %{basisinstdir}
-%docdir %{basisinstdir}/help
-%docdir %{basisinstdir}/help/en
 %{basisinstdir}/help/en/sdraw.*
 %dir %{basisinstdir}/share
 %dir %{basisinstdir}/share/registry
@@ -3578,8 +3573,6 @@
 %files writer-core
 %defattr(-,root,root,-)
 %dir %{basisinstdir}
-%docdir %{basisinstdir}/help
-%docdir %{basisinstdir}/help/en
 %{basisinstdir}/help/en/swriter.*
 %dir %{basisinstdir}/program
 %{basisinstdir}/program/libbf_sw%{SOPOST}.so
@@ -3684,8 +3677,6 @@
 %files impress-core
 %defattr(-,root,root,-)
 %dir %{basisinstdir}
-%docdir %{basisinstdir}/help
-%docdir %{basisinstdir}/help/en
 %{basisinstdir}/help/en/simpress.*
 %dir %{basisinstdir}/program
 %{basisinstdir}/program/libanimcore.so
@@ -3764,8 +3755,6 @@
 %files math-core
 %defattr(-,root,root,-)
 %dir %{basisinstdir}
-%docdir %{basisinstdir}/help
-%docdir %{basisinstdir}/help/en
 %{basisinstdir}/help/en/smath.*
 %dir %{basisinstdir}/program
 %{basisinstdir}/program/libbf_sm%{SOPOST}.so
@@ -4102,6 +4091,12 @@
     unopkg list --shared > /dev/null 2>&1 || :
 
 %changelog
+* Tue Feb 24 2009 Caolán McNamara <caolanm at redhat.com> - 1:3.1.0-2.4
+- replace openoffice.org-1.9.87.rh151357.setlangtolocale.patch 
+  with planned.workspace.defaultdoclang.patch to provide a better
+  solution to auto-tracking by default the document language from 
+  current locale while retaining capability to override by config
+
 * Tue Feb 24 2009 Caolán McNamara <caolanm at redhat.com> - 1:3.1.0-2.3
 - Resolves: rhbz#486958 add openoffice.org-3.1.0.ooo98465.sw.fix-doctables.patch
 


Index: sources
===================================================================
RCS file: /cvs/pkgs/rpms/openoffice.org/devel/sources,v
retrieving revision 1.338
retrieving revision 1.339
diff -u -r1.338 -r1.339
--- sources	24 Feb 2009 09:02:39 -0000	1.338
+++ sources	24 Feb 2009 13:02:35 -0000	1.339
@@ -5,6 +5,6 @@
 f0cda31fe18bf9289629a321663031b8  redhat-templates.tar.gz
 d2392ab1e9049bc3e1d096c483f7a10c  redhat-registry.tar.gz
 d4cd987dca2f091c888d95d5aef19f46  GSI_fi.sdf.gz
-87ee4ea18a5ee118f9d7fa567657744a  redhat-langpacks.tar.gz
 0ba196dcb041c1902af36f4074ab9f91  OOO310_m2.tar.bz2
 4223939ea412f97ccde9fadbcc0430b6  openoffice.org-javafilter.desktop
+eaf47e2e3d3586f6156c61379cc34df9  redhat-langpacks.tar.gz


--- openoffice.org-1.9.87.rh151357.setlangtolocale.patch DELETED ---




More information about the scm-commits mailing list