rpms/openoffice.org/devel openoffice.org-2.0.3.rh127576.gtkunixprintdialog.patch, 1.28, 1.29 openoffice.org.spec, 1.1168, 1.1169

fedora-cvs-commits at redhat.com fedora-cvs-commits at redhat.com
Tue May 1 12:41:23 UTC 2007


Author: caolanm

Update of /cvs/dist/rpms/openoffice.org/devel
In directory cvs.devel.redhat.com:/tmp/cvs-serv18854

Modified Files:
	openoffice.org-2.0.3.rh127576.gtkunixprintdialog.patch 
	openoffice.org.spec 
Log Message:
Resolves: rhbz#203495

openoffice.org-2.0.3.rh127576.gtkunixprintdialog.patch:
 inc/cupsmgr.hxx                               |    0 
 inc/jobset.hxx                                |    0 
 inc/print.h                                   |    0 
 inc/print.hxx                                 |    0 
 inc/printdlg.hxx                              |    0 
 inc/psprint/ppdparser.hxx                     |    0 
 inc/psprint/printerinfomanager.hxx            |    0 
 inc/salframe.hxx                              |    0 
 inc/window.hxx                                |    0 
 psprint/inc/cupsmgr.hxx                       |    2 
 psprint/inc/psprint/ppdparser.hxx             |    4 
 psprint/inc/psprint/printerinfomanager.hxx    |    2 
 psprint/source/printer/cupsmgr.cxx            |   23 
 psprint/source/printer/printerinfomanager.cxx |    8 
 psprint/source/printergfx/printerjob.cxx      |    3 
 sfx2/source/view/viewprn.cxx                  |    1 
 source/dialogs/makefile.mk                    |    0 
 source/dialogs/printdlg.cxx                   |    0 
 source/dialogs/printdlg.hrc                   |    0 
 source/dialogs/printdlg.src                   |    0 
 source/gdi/jobset.cxx                         |    0 
 source/gdi/print.cxx                          |    0 
 source/printer/cupsmgr.cxx                    |    0 
 source/printergfx/printerjob.cxx              |    0 
 source/window/window.cxx                      |    0 
 svtools/inc/printdlg.hxx                      |    3 
 svtools/source/dialogs/makefile.mk            |    4 
 svtools/source/dialogs/printdlg.cxx           |  601 +++++++++++++++++++++++++-
 svtools/source/dialogs/printdlg.hrc           |    2 
 svtools/source/dialogs/printdlg.src           |   10 
 svtools/util/makefile.mk                      |    8 
 unx/gtk/window/gtkframe.cxx                   |    0 
 unx/inc/plugins/gtk/gtkframe.hxx              |    0 
 util/makefile.mk                              |    0 
 vcl/inc/jobset.hxx                            |    3 
 vcl/inc/print.h                               |    2 
 vcl/inc/print.hxx                             |    3 
 vcl/inc/salframe.hxx                          |    3 
 vcl/inc/window.hxx                            |    3 
 vcl/source/gdi/jobset.cxx                     |  194 ++++++++
 vcl/source/gdi/print.cxx                      |   11 
 vcl/source/window/window.cxx                  |   10 
 vcl/unx/gtk/window/gtkframe.cxx               |   11 
 vcl/unx/inc/plugins/gtk/gtkframe.hxx          |    3 
 44 files changed, 898 insertions(+), 16 deletions(-)

Index: openoffice.org-2.0.3.rh127576.gtkunixprintdialog.patch
===================================================================
RCS file: /cvs/dist/rpms/openoffice.org/devel/openoffice.org-2.0.3.rh127576.gtkunixprintdialog.patch,v
retrieving revision 1.28
retrieving revision 1.29
diff -u -r1.28 -r1.29
--- openoffice.org-2.0.3.rh127576.gtkunixprintdialog.patch	29 Mar 2007 12:29:34 -0000	1.28
+++ openoffice.org-2.0.3.rh127576.gtkunixprintdialog.patch	1 May 2007 12:41:20 -0000	1.29
@@ -456,12 +456,13 @@
 diff -u -r1.9 printdlg.hxx
 --- openoffice.org.orig/svtools/inc/printdlg.hxx	8 Sep 2005 10:06:06 -0000	1.9
 +++ openoffice.org/svtools/inc/printdlg.hxx	16 Nov 2006 14:14:18 -0000
-@@ -140,6 +140,8 @@
+@@ -140,6 +140,9 @@
  	Link				maOKHdlLink;	  // Link zum OK-Handler
  
      String				maAllFilterStr;
 +    String				maPaperFormatStr;
 +    String				maOrientationStr;
++    unsigned long			mnNativeHandle;
  
  	SVT_DLLPRIVATE void				ImplCheckOK();
  	SVT_DLLPRIVATE void				ImplInitControls();
@@ -535,14 +536,15 @@
  using namespace rtl;
  
  struct SvtPrinterImpl
-@@ -139,7 +185,9 @@
+@@ -139,7 +185,10 @@
  	maBtnHelp		( this, SvtResId( BTN_HELP ) ),
      maFlSepCopiesRange( this, SvtResId( FL_SEPCOPIESRANGE ) ),
      maFlSepButtonLine( this, SvtResId( FL_SEPBUTTONLINE ) ),
 -    maAllFilterStr	( SvtResId( STR_ALLFILTER ) )
 +    maAllFilterStr	( SvtResId( STR_ALLFILTER ) ),
 +    maPaperFormatStr ( SvtResId( STR_PAPER_PAPER_TXT ) ),
-+    maOrientationStr ( SvtResId( STR_PAPER_ORIENTATION_TXT ) )
++    maOrientationStr ( SvtResId( STR_PAPER_ORIENTATION_TXT ) ),
++    mnNativeHandle(0)
  {
  	FreeResource();
  
@@ -788,7 +790,7 @@
  short PrintDialog::Execute()
  {
  	if ( !mpPrinter || mpPrinter->IsPrinting() || mpPrinter->IsJobActive() )
-@@ -625,15 +908,300 @@
+@@ -625,15 +908,308 @@
  	ImplInitControls();
  	ImplModifyControlHdl( NULL );
  
@@ -803,10 +805,13 @@
 -		if ( TEMPPRINTER() )
 -			mpPrinter->SetPrinterProps( TEMPPRINTER() );
 -		ImplFillDialogData();
++		unsigned long handle = GetParent() ? GetParent()->GetNativeHandle() : 0;
++		GtkWindow *parent = handle ? GTK_WINDOW(handle) : NULL;
++		
 +		static ourhandle aHandle;
 +		if (!aHandle.pDialog)
 +		{
-+			aHandle.pDialog = gtk_print_unix_dialog_new (NULL, NULL);
++			aHandle.pDialog = gtk_print_unix_dialog_new (NULL, parent);
 +
 +			rtl::OString aOptions(OUStringToOString(maBtnOptions.GetText(), RTL_TEXTENCODING_UTF8));
 +			aOptions = aOptions.replace('~','_');
@@ -854,6 +859,11 @@
 +			g_object_get(G_OBJECT(box),"parent", &aHandle.notebook,NULL);
 +		}
 +
++		//make this the child of the OOo document window, and make it
++		//the parent of the future OOo options window
++		if (parent) gtk_window_set_transient_for(GTK_WINDOW(aHandle.pDialog), parent);
++		mnNativeHandle = reinterpret_cast<unsigned long>(aHandle.pDialog);
++
 +		GtkPrintSettings* pTempSettings = gtk_print_unix_dialog_get_settings(GTK_PRINT_UNIX_DIALOG(aHandle.pDialog));
 +		if (const QueueInfo* pInfo = (const QueueInfo*)(maLbName.GetEntryData(maLbName.GetSelectEntryPos())))
 +		{
@@ -1195,3 +1205,113 @@
 +VCL_DLLPUBLIC void ImplDeletePrnQueueList();
  
  #endif // _SV_PRINT_H
+--- openoffice.org.orig/sfx2/source/view/viewprn.cxx	2007-05-01 13:18:31.000000000 +0100
++++ openoffice.org/sfx2/source/view/viewprn.cxx	2007-05-01 13:18:44.000000000 +0100
+@@ -175,6 +175,7 @@
+ 
+ 	// Dialog ausf"uhren
+ 	SfxPrintOptionsDialog* pDlg = new SfxPrintOptionsDialog( _pParent, _pViewSh, _pOptions );
++        pDlg->SetNativeParent(_pParent ? _pParent->NativeHandle() : 0);
+ 	if ( _bHelpDisabled )
+ 		pDlg->DisableHelp();
+ 	if ( pDlg->Execute() == RET_OK )
+Index: inc/salframe.hxx
+===================================================================
+RCS file: /cvs/gsl/vcl/inc/Attic/salframe.hxx,v
+retrieving revision 1.30
+diff -u -r1.30 salframe.hxx
+--- openoffice.org.orig/vcl/inc/salframe.hxx	1 Nov 2006 15:28:55 -0000	1.30
++++ openoffice.org/vcl/inc/salframe.hxx	1 May 2007 12:21:25 -0000
+@@ -313,6 +313,9 @@
+     // (e.g. input methods, printer update handlers).
+     long						CallCallback( USHORT nEvent, const void* pEvent ) const
+     { return m_pProc ? m_pProc( m_pInst, const_cast<SalFrame*>(this), nEvent, pEvent ) : 0; }
++
++    virtual unsigned long GetNativeHandle() const { return 0; }
++    virtual void SetNativeParent(unsigned long nParent) {}
+ };
+ 
+ 
+Index: inc/window.hxx
+===================================================================
+RCS file: /cvs/gsl/vcl/inc/Attic/window.hxx,v
+retrieving revision 1.80.24.1
+diff -u -r1.80.24.1 window.hxx
+--- openoffice.org.orig/vcl/inc/window.hxx	19 Jan 2007 16:10:11 -0000	1.80.24.1
++++ openoffice.org/vcl/inc/window.hxx	1 May 2007 12:21:29 -0000
+@@ -1087,6 +1087,9 @@
+     /* mark Window for deletion in top of event queue
+     */
+     void doLazyDelete();
++
++    unsigned long GetNativeHandle() const;
++    void SetNativeParent(unsigned long nParent);
+ };
+ 
+ 
+Index: source/window/window.cxx
+===================================================================
+RCS file: /cvs/gsl/vcl/source/window/window.cxx,v
+retrieving revision 1.249.24.3
+diff -u -r1.249.24.3 window.cxx
+--- openoffice.org.orig/vcl/source/window/window.cxx	26 Jan 2007 12:14:38 -0000	1.249.24.3
++++ openoffice.org/vcl/source/window/window.cxx	1 May 2007 12:21:53 -0000
+@@ -4267,6 +4272,16 @@
+         pFocusWin->mpFontCache->Release( pFontEntry );
+ }
+ 
++unsigned long Window::GetNativeHandle() const
++{
++    return ImplGetFrame() ? ImplGetFrame()->GetNativeHandle() : 0;
++}
++
++void Window::SetNativeParent(unsigned long nParent)
++{
++    if (ImplGetFrame()) ImplGetFrame()->SetNativeParent(nParent);
++}
++
+ // -----------------------------------------------------------------------
+ 
+ Window::Window( WindowType nType )
+Index: unx/gtk/window/gtkframe.cxx
+===================================================================
+RCS file: /cvs/gsl/vcl/unx/gtk/window/gtkframe.cxx,v
+retrieving revision 1.59
+diff -u -r1.59 gtkframe.cxx
+--- openoffice.org.orig/vcl/unx/gtk/window/gtkframe.cxx	21 Dec 2006 12:04:26 -0000	1.59
++++ openoffice.org/vcl/unx/gtk/window/gtkframe.cxx	1 May 2007 12:22:00 -0000
+@@ -759,6 +762,17 @@
+     return pWindow->GetAccessible( bCreate );
+ }
+ 
++unsigned long GtkSalFrame::GetNativeHandle() const
++{
++    return reinterpret_cast<unsigned long>(m_pWindow);
++}
++
++void GtkSalFrame::SetNativeParent(unsigned long nParent)
++{
++    if (GtkWindow* pNativeParent = GTK_WINDOW(nParent))
++        gtk_window_set_transient_for( m_pWindow, pNativeParent );
++}
++
+ void GtkSalFrame::Init( SalFrame* pParent, ULONG nStyle )
+ {
+     if( nStyle & SAL_FRAME_STYLE_DEFAULT ) // ensure default style
+Index: unx/inc/plugins/gtk/gtkframe.hxx
+===================================================================
+RCS file: /cvs/gsl/vcl/unx/inc/plugins/gtk/gtkframe.hxx,v
+retrieving revision 1.25
+diff -u -r1.25 gtkframe.hxx
+--- openoffice.org.orig/vcl/unx/inc/plugins/gtk/gtkframe.hxx	1 Nov 2006 15:30:08 -0000	1.25
++++ openoffice.org/vcl/unx/inc/plugins/gtk/gtkframe.hxx	1 May 2007 12:22:02 -0000
+@@ -383,6 +383,9 @@
+ 	::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > getAccessible( bool bCreate = true );
+     
+     static AtkRole              GetAtkRole( GtkWindow* window );
++
++    virtual unsigned long GetNativeHandle() const;
++    virtual void SetNativeParent(unsigned long nParent);
+ };
+ 
+ 


Index: openoffice.org.spec
===================================================================
RCS file: /cvs/dist/rpms/openoffice.org/devel/openoffice.org.spec,v
retrieving revision 1.1168
retrieving revision 1.1169
diff -u -r1.1168 -r1.1169
--- openoffice.org.spec	24 Apr 2007 19:39:00 -0000	1.1168
+++ openoffice.org.spec	1 May 2007 12:41:20 -0000	1.1169
@@ -2635,6 +2635,8 @@
 * Tue Apr 24 2007 Caolan McNamara <caolanm at redhat.com> - 1:2.2.0-14.7-unreleased
 - remove gnome icons to that mist inheritance from bluecurve will give
   the bluecurve panel icons
+- Resolves: rhbz#203495 add some magic to allow native and OOo dialogs to
+  interleave and keep parent child transient logic correct
 
 * Tue Apr 17 2007 Caolan McNamara <caolanm at redhat.com> - 1:2.2.0-14.6
 - merge openoffice.org-2.0.2.ooo59127.vcl.honourcairofont.patch




More information about the fedora-cvs-commits mailing list