rpms/openoffice.org/devel openoffice.org-3.0.1.ooo97064.fpicker.honour-uilang-override.patch, NONE, 1.1 openoffice.org-2.0.3.rh127576.gtkunixprintdialog.patch, 1.51, 1.52 openoffice.org.spec, 1.1717, 1.1718

Caolan McNamara caolanm at fedoraproject.org
Wed Dec 10 13:52:28 UTC 2008


Author: caolanm

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

Modified Files:
	openoffice.org-2.0.3.rh127576.gtkunixprintdialog.patch 
	openoffice.org.spec 
Added Files:
	openoffice.org-3.0.1.ooo97064.fpicker.honour-uilang-override.patch 
Log Message:
Resolves: rhbz#475154 UI Language override doesn't affect system dialogs

openoffice.org-3.0.1.ooo97064.fpicker.honour-uilang-override.patch:

--- NEW FILE openoffice.org-3.0.1.ooo97064.fpicker.honour-uilang-override.patch ---
Index: source/unx/gnome/SalGtkFilePicker.cxx
===================================================================
RCS file: /cvs/gsl/fpicker/source/unx/gnome/SalGtkFilePicker.cxx,v
retrieving revision 1.28
diff -u -r1.28 SalGtkFilePicker.cxx
--- openoffice.org.orig/fpicker/source/unx/gnome/SalGtkFilePicker.cxx	11 Apr 2008 09:28:01 -0000	1.28
+++ openoffice.org/fpicker/source/unx/gnome/SalGtkFilePicker.cxx	10 Dec 2008 13:49:09 -0000
@@ -36,6 +36,7 @@
 //------------------------------------------------------------------------
 #include <com/sun/star/lang/DisposedException.hpp>
 #include <com/sun/star/lang/XMultiServiceFactory.hpp>
+#include <com/sun/star/container/XNameAccess.hpp>
 #include <com/sun/star/ui/dialogs/ExecutableDialogResults.hpp>
 #include <com/sun/star/ui/dialogs/ExtendedFilePickerElementIds.hpp>
 #include <com/sun/star/ui/dialogs/CommonFilePickerElementIds.hpp>
@@ -124,6 +125,40 @@
     gtk_widget_set_size_request (m_pPreview, -1, -1);
 }
 
+static void lcl_setGTKLanguage(const uno::Reference<lang::XMultiServiceFactory>& xServiceMgr)
+{
+    static bool bSet = false;
+    if (bSet)
+        return;
+    
+    OUString sUILocale;
+    try
+    {
+        uno::Reference<lang::XMultiServiceFactory> xConfigMgr = 
+          uno::Reference<lang::XMultiServiceFactory>(xServiceMgr->createInstance(
+            OUString::createFromAscii("com.sun.star.configuration.ConfigurationProvider")), 
+              UNO_QUERY_THROW );
+
+        Sequence< Any > theArgs(1);
+        theArgs[ 0 ] <<= OUString::createFromAscii("org.openoffice.Office.Linguistic/General");
+
+        uno::Reference< container::XNameAccess > xNameAccess =
+          uno::Reference< container::XNameAccess >(xConfigMgr->createInstanceWithArguments(
+            OUString::createFromAscii("com.sun.star.configuration.ConfigurationAccess"), theArgs ),
+              UNO_QUERY_THROW );
+
+        if (xNameAccess.is())
+            xNameAccess->getByName(OUString::createFromAscii("UILocale")) >>= sUILocale;
+	} catch (...) {}
+  
+    if (sUILocale.getLength()) 
+    {
+        sUILocale = rtl::OUString::createFromAscii("LANGUAGE=") + sUILocale.replace('-', '_');
+        putenv(strdup(rtl::OUStringToOString(sUILocale, osl_getThreadTextEncoding()).getStr()));
+    }
+    bSet = true;
+}
+
 SalGtkFilePicker::SalGtkFilePicker( const uno::Reference<lang::XMultiServiceFactory>& xServiceMgr ) : 
 	cppu::WeakComponentImplHelper10<
 		XFilterManager,
@@ -147,7 +182,9 @@
 	m_pPreview( NULL ),
 	m_PreviewImageWidth( 256 ),
     m_PreviewImageHeight( 256 )
-{   
+{
+    lcl_setGTKLanguage(xServiceMgr);
+
 	int i;
 
 	for( i = 0; i < TOGGLE_LAST; i++ )

openoffice.org-2.0.3.rh127576.gtkunixprintdialog.patch:

Index: openoffice.org-2.0.3.rh127576.gtkunixprintdialog.patch
===================================================================
RCS file: /cvs/pkgs/rpms/openoffice.org/devel/openoffice.org-2.0.3.rh127576.gtkunixprintdialog.patch,v
retrieving revision 1.51
retrieving revision 1.52
diff -u -r1.51 -r1.52
--- openoffice.org-2.0.3.rh127576.gtkunixprintdialog.patch	2 Nov 2008 23:02:16 -0000	1.51
+++ openoffice.org-2.0.3.rh127576.gtkunixprintdialog.patch	10 Dec 2008 13:52:27 -0000	1.52
@@ -821,7 +821,7 @@
  {
  	FreeResource();
  
-@@ -753,6 +794,250 @@
+@@ -753,6 +794,284 @@
  
  // -----------------------------------------------------------------------
  
@@ -1069,10 +1069,44 @@
 +		SetProperties(*pHandle, false);
 +}
 +
++static void lcl_setGTKLanguage(const uno::Reference<lang::XMultiServiceFactory>& xServiceMgr)
++{
++    static bool bSet = false;
++    if (bSet)
++        return;
++    
++    OUString sUILocale;
++    try
++    {
++        uno::Reference<lang::XMultiServiceFactory> xConfigMgr = 
++          uno::Reference<lang::XMultiServiceFactory>(xServiceMgr->createInstance(
++            OUString::createFromAscii("com.sun.star.configuration.ConfigurationProvider")), 
++              UNO_QUERY_THROW );
++
++        Sequence< Any > theArgs(1);
++        theArgs[ 0 ] <<= OUString::createFromAscii("org.openoffice.Office.Linguistic/General");
++
++        uno::Reference< container::XNameAccess > xNameAccess =
++          uno::Reference< container::XNameAccess >(xConfigMgr->createInstanceWithArguments(
++            OUString::createFromAscii("com.sun.star.configuration.ConfigurationAccess"), theArgs ),
++              UNO_QUERY_THROW );
++
++        if (xNameAccess.is())
++            xNameAccess->getByName(OUString::createFromAscii("UILocale")) >>= sUILocale;
++	} catch (...) {}
++  
++    if (sUILocale.getLength()) 
++    {
++        sUILocale = rtl::OUString::createFromAscii("LANGUAGE=") + sUILocale.replace('-', '_');
++        putenv(strdup(rtl::OUStringToOString(sUILocale, osl_getThreadTextEncoding()).getStr()));
++    }
++    bSet = true;
++}
++
  short PrintDialog::Execute()
  {
  	if ( !mpPrinter || mpPrinter->IsPrinting() || mpPrinter->IsJobActive() )
-@@ -775,15 +1060,332 @@
+@@ -775,15 +1094,333 @@
  	ImplInitControls();
  	ImplModifyControlHdl( NULL );
  
@@ -1096,6 +1130,7 @@
 + 		static ourhandle aHandle;
 + 		if (!aHandle.pDialog)
 + 		{
++			lcl_setGTKLanguage(::comphelper::getProcessServiceFactory());
 + 			aHandle.pDialog = gtk_print_unix_dialog_new (NULL, parent);
 + 
 + 			rtl::OString aOptions(rtl::OUStringToOString(maBtnOptions.GetText(), RTL_TEXTENCODING_UTF8));
@@ -1412,7 +1447,7 @@
  	}
  
  	maStatusTimer.Stop();
-@@ -798,4 +1397,3 @@
+@@ -798,4 +1435,3 @@
  	mpPrinterImpl->m_bHelpDisabled = sal_True;
  	maBtnHelp.Disable();
  }


Index: openoffice.org.spec
===================================================================
RCS file: /cvs/pkgs/rpms/openoffice.org/devel/openoffice.org.spec,v
retrieving revision 1.1717
retrieving revision 1.1718
diff -u -r1.1717 -r1.1718
--- openoffice.org.spec	10 Dec 2008 09:21:25 -0000	1.1717
+++ openoffice.org.spec	10 Dec 2008 13:52:27 -0000	1.1718
@@ -3751,6 +3751,8 @@
 * Wed Dec 10 2008 Caolán McNamara <caolanm at redhat.com> - 1:3.0.1-13.2
 - Resolves: rhbz#474961 wrong impress accelerators
   openoffice.org-3.0.1.ooo97088.sd.accel-fallback.patch
+- Resolves: rhbz#475154 UI Language override doesn't affect system dialogs
+  openoffice.org-3.0.1.ooo97064.fpicker.honour-uilang-ove
 
 * Tue Dec 09 2008 Caolán McNamara <caolanm at redhat.com> - 1:3.0.1-13.1
 - rhbz#474719 add libXinerama-devel BuildRequires




More information about the fedora-extras-commits mailing list