rpms/openoffice.org/F-12 openoffice.org-3.2.0.ooo108846.sfx2.qstartfixes.patch, NONE, 1.1 workspace.qstartfix2.patch, NONE, 1.1 openoffice.org.spec, 1.2060, 1.2061 openoffice.org-3.1.0.ooo90439.sfx2.qstart.hackaround.patch, 1.1, NONE
Caolan McNamara
caolanm at fedoraproject.org
Tue Feb 2 14:31:22 UTC 2010
- Previous message: rpms/rubygem-xmpp4r/EL-5 import.log, NONE, 1.1 rubygem-xmpp4r-examples.patch, NONE, 1.1 rubygem-xmpp4r-tests.patch, NONE, 1.1 rubygem-xmpp4r.spec, NONE, 1.1 .cvsignore, 1.1, 1.2 sources, 1.1, 1.2
- Next message: rpms/system-config-kdump/devel .cvsignore, 1.7, 1.8 sources, 1.7, 1.8 system-config-kdump.spec, 1.13, 1.14
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
Author: caolanm
Update of /cvs/pkgs/rpms/openoffice.org/F-12
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv22972
Modified Files:
openoffice.org.spec
Added Files:
openoffice.org-3.2.0.ooo108846.sfx2.qstartfixes.patch
workspace.qstartfix2.patch
Removed Files:
openoffice.org-3.1.0.ooo90439.sfx2.qstart.hackaround.patch
Log Message:
Resolves: rhbz#560996/rhbz#560353 qstartfixes (caolanm)
openoffice.org-3.2.0.ooo108846.sfx2.qstartfixes.patch:
desktop/source/app/cmdlineargs.cxx | 2 +-
desktop/source/app/makefile.mk | 4 ++++
sfx2/source/appl/shutdownicon.cxx | 2 +-
sfx2/source/appl/shutdowniconunx.cxx | 9 +++++++--
4 files changed, 13 insertions(+), 4 deletions(-)
--- NEW FILE openoffice.org-3.2.0.ooo108846.sfx2.qstartfixes.patch ---
diff -r 3c24aa9a7810 desktop/source/app/cmdlineargs.cxx
--- a/desktop/source/app/cmdlineargs.cxx Sat Jan 23 16:31:03 2010 +0000
+++ b/desktop/source/app/cmdlineargs.cxx Tue Feb 02 13:59:39 2010 +0000
@@ -387,7 +387,7 @@
}
else if ( aArg.equalsAsciiL( RTL_CONSTASCII_STRINGPARAM( "-quickstart" )) == sal_True )
{
-#if defined(WNT) || defined(OS2) || defined(QUARTZ)
+#if defined(ENABLE_QUICKSTART_APPLET)
SetBoolParam_Impl( CMD_BOOLPARAM_QUICKSTART, sal_True );
#endif
return sal_True;
diff -r 3c24aa9a7810 desktop/source/app/makefile.mk
--- a/desktop/source/app/makefile.mk Sat Jan 23 16:31:03 2010 +0000
+++ b/desktop/source/app/makefile.mk Tue Feb 02 13:59:39 2010 +0000
@@ -44,6 +44,10 @@
CFLAGS+=-DGNOME_VFS_ENABLED
.ENDIF
+.IF "$(GUI)"=="WNT" || "$(GUI)"=="OS2" || "$(GUIBASE)"=="aqua" || "$(ENABLE_SYSTRAY_GTK)"=="TRUE"
+CFLAGS+=-DENABLE_QUICKSTART_APPLET
+.ENDIF
+
SHL1TARGET = sofficeapp
SHL1OBJS = \
$(SLO)$/app.obj \
diff -r 3c24aa9a7810 sfx2/source/appl/shutdownicon.cxx
--- a/sfx2/source/appl/shutdownicon.cxx Sat Jan 23 16:31:03 2010 +0000
+++ b/sfx2/source/appl/shutdownicon.cxx Tue Feb 02 13:59:39 2010 +0000
@@ -555,8 +555,8 @@
return;
// always remove ourselves as listener
+ pInst->m_bListenForTermination = true;
xDesktop->removeTerminateListener( pInst );
- pInst->m_bListenForTermination = true;
// terminate desktop only if no tasks exist
Reference< XFramesSupplier > xSupplier( xDesktop, UNO_QUERY );
diff -r 3c24aa9a7810 sfx2/source/appl/shutdowniconunx.cxx
--- a/sfx2/source/appl/shutdowniconunx.cxx Sat Jan 23 16:31:03 2010 +0000
+++ b/sfx2/source/appl/shutdowniconunx.cxx Tue Feb 02 13:59:39 2010 +0000
@@ -39,6 +39,7 @@
static EggTrayIcon *pTrayIcon;
static GtkWidget *pExitMenuItem = NULL;
static GtkWidget *pOpenMenuItem = NULL;
+static GtkWidget *pDisableMenuItem = NULL;
static void open_url_cb( GtkWidget *, gpointer data )
{
@@ -67,8 +68,10 @@
static void exit_quickstarter_cb( GtkWidget * )
{
egg_tray_icon_cancel_message (pTrayIcon, 1 );
- ShutdownIcon::getInstance()->terminateDesktop();
plugin_shutdown_sys_tray();
+ //terminate may cause this .so to be unloaded. So we must be hands off
+ //all calls into this .so after this call
+ ShutdownIcon::terminateDesktop();
}
static void menu_deactivate_cb( GtkWidget *pMenu )
@@ -265,7 +268,7 @@
pMenuItem = gtk_separator_menu_item_new();
gtk_menu_shell_append( pMenuShell, pMenuItem );
- (void) add_image_menu_item
+ pDisableMenuItem = add_image_menu_item
( pMenuShell, GTK_STOCK_CLOSE,
pShutdownIcon->GetResString( STR_QUICKSTART_PRELAUNCH_UNX ),
G_CALLBACK( systray_disable_cb ) );
@@ -289,6 +292,7 @@
bool bModal = ShutdownIcon::bModalMode;
gtk_widget_set_sensitive( pExitMenuItem, !bModal);
gtk_widget_set_sensitive( pOpenMenuItem, !bModal);
+ gtk_widget_set_sensitive( pDisableMenuItem, !bModal);
}
extern "C" {
@@ -404,6 +409,7 @@
pTrayIcon = NULL;
pExitMenuItem = NULL;
pOpenMenuItem = NULL;
+ pDisableMenuItem = NULL;
}
#endif // ENABLE_QUICKSTART_APPLET
workspace.qstartfix2.patch:
libegg/source/eggtrayicon.c | 48 ++++++++++++++++++++++----------------
sfx2/source/appl/shutdownicon.cxx | 33 +++++++++++++++++++++-----
2 files changed, 55 insertions(+), 26 deletions(-)
--- NEW FILE workspace.qstartfix2.patch ---
--- sfx2/source/appl/shutdownicon.cxx
+++ sfx2/source/appl/shutdownicon.cxx
@@ -69,6 +69,7 @@
#include <unistd.h>
#include <errno.h>
#endif
+#include <vcl/timer.hxx>
#include "sfxresid.hxx"
@@ -186,6 +187,23 @@
return true;
}
+class IdleUnloader : Timer
+{
+ ::osl::Module *m_pModule;
+public:
+ IdleUnloader (::osl::Module **pModule) :
+ m_pModule (*pModule)
+ {
+ *pModule = NULL;
+ Start();
+ }
+ virtual void Timeout()
+ {
+ delete m_pModule;
+ delete this;
+ }
+};
+
void ShutdownIcon::initSystray()
{
if (m_bInitialized)
@@ -201,15 +221,15 @@
{
if (!m_bInitialized)
return;
+
if (m_pDeInitSystray)
m_pDeInitSystray();
m_bVeto = false;
m_pInitSystray = 0;
m_pDeInitSystray = 0;
- if (m_pPlugin)
- delete m_pPlugin;
- m_pPlugin = 0;
+ new IdleUnloader (&m_pPlugin);
+
delete m_pFileDlg;
m_pFileDlg = NULL;
m_bInitialized = false;
@@ -228,6 +249,7 @@
ShutdownIcon::~ShutdownIcon()
{
deInitSystray();
+ new IdleUnloader (&m_pPlugin);
}
// ---------------------------------------------------------------------------
@@ -853,9 +884,11 @@
::osl::File::getFileURLFromSystemPath( aShortcut, aShortcutUrl );
::osl::File::remove( aShortcutUrl );
#ifdef UNX
- ShutdownIcon *pIcon = getInstance();
- if( pIcon )
- pIcon->deInitSystray();
+ if (pShutdownIcon)
+ {
+ ShutdownIcon *pIcon = getInstance();
+ pIcon->deInitSystray();
+ }
#endif
}
#elif defined OS2
--- libegg/source/eggtrayicon.c
+++ libegg/source/eggtrayicon.c
@@ -76,6 +76,14 @@
static void egg_tray_icon_manager_window_destroyed (EggTrayIcon *icon);
#endif
+/*
+ * This is made somewhat more 'interesting' by the facts that:
+ * a) GTypePlugin is a foul & tangled mess
+ * b) We may have been unloaded, and left an invalid
+ * EggTrayIcon class lying around in the GType database,
+ * we could use GTypePlugin to fix this, but see a) -
+ * this is far easier and simpler.
+ */
GType
egg_tray_icon_get_type (void)
{
@@ -88,18 +96,23 @@
sizeof (EggTrayIconClass),
(GBaseInitFunc) NULL,
(GBaseFinalizeFunc) NULL,
- (GClassInitFunc) egg_tray_icon_class_init,
+ (GClassInitFunc) NULL, /* class_init */
NULL, /* class_finalize */
NULL, /* class_data */
sizeof (EggTrayIcon),
0, /* n_preallocs */
- (GInstanceInitFunc) egg_tray_icon_init,
+ (GInstanceInitFunc) NULL, /* instance_init */
NULL
};
- our_type = g_type_register_static (GTK_TYPE_PLUG, "EggTrayIcon", &our_info, 0);
+ our_type = g_type_from_name ("EggTrayIcon");
+ if (!our_type)
+ our_type = g_type_register_static (GTK_TYPE_PLUG, "EggTrayIcon", &our_info, 0);
}
+ /* always overwrite the function pointers */
+ egg_tray_icon_class_init (g_type_class_ref (our_type));
+
return our_type;
}
@@ -128,22 +141,15 @@
container_class->add = egg_tray_icon_add;
- g_object_class_install_property (gobject_class,
- PROP_ORIENTATION,
- g_param_spec_enum ("orientation",
- _("Orientation"),
- _("The orientation of the tray."),
- GTK_TYPE_ORIENTATION,
- GTK_ORIENTATION_HORIZONTAL,
- G_PARAM_READABLE));
-
-#if defined (GDK_WINDOWING_X11)
- /* Nothing */
-#elif defined (GDK_WINDOWING_WIN32)
- g_warning ("Port eggtrayicon to Win32");
-#else
- g_warning ("Port eggtrayicon to this GTK+ backend");
-#endif
+ if (!g_object_class_find_property (gobject_class, "orientation"))
+ g_object_class_install_property (gobject_class,
+ PROP_ORIENTATION,
+ g_param_spec_enum ("orientation",
+ "Orientation",
+ "The orientation of the tray.",
+ GTK_TYPE_ORIENTATION,
+ GTK_ORIENTATION_HORIZONTAL,
+ G_PARAM_READABLE));
}
static void
@@ -471,7 +477,9 @@
EggTrayIcon*
egg_tray_icon_new (const gchar *name)
{
- return g_object_new (EGG_TYPE_TRAY_ICON, "title", name, NULL);
+ EggTrayIcon *icon = g_object_new (EGG_TYPE_TRAY_ICON, "title", name, NULL);
+ egg_tray_icon_init (icon);
+ return icon;
}
guint
Index: openoffice.org.spec
===================================================================
RCS file: /cvs/pkgs/rpms/openoffice.org/F-12/openoffice.org.spec,v
retrieving revision 1.2060
retrieving revision 1.2061
diff -u -p -r1.2060 -r1.2061
--- openoffice.org.spec 2 Feb 2010 12:47:43 -0000 1.2060
+++ openoffice.org.spec 2 Feb 2010 14:31:21 -0000 1.2061
@@ -132,7 +132,7 @@ Patch54: openoffice.org-3.1.0.ooo61927.s
Patch55: workspace.impress171.patch
Patch56: workspace.vcl101.patch
Patch57: workspace.slideshow1.patch
-Patch58: openoffice.org-3.1.0.ooo90439.sfx2.qstart.hackaround.patch
+Patch58: workspace.qstartfix2.patch
Patch59: openoffice.org-3.1.0.ooo101274.opening-a-directory.patch
Patch60: openoffice.org-3.1.0.ooo101354.filter.xhtml.do-not-label-list-headers.patch
Patch61: openoffice.org-3.1.0.ooo101355.filter.no-variables-in-keys.patch
@@ -192,6 +192,7 @@ Patch114: openoffice.org-3.3.0.ooo80674.
Patch115: workspace.impress180.patch
Patch116: workspace.impress182.patch
Patch117: openoffice.org-3.3.0.ooo108637.sfx2.uisavedir.patch
+Patch118: openoffice.org-3.2.0.ooo108846.sfx2.qstartfixes.patch
%define python_py_sitearch %(%{__python} -c "from distutils.sysconfig import get_python_lib; print get_python_lib(0)")
%define instdir %{_libdir}
@@ -1718,7 +1719,7 @@ cat %{PATCH11} >> svtools/source/dialogs
%patch55 -p1 -b .workspace.impress171.patch
%patch56 -p1 -b .workspace.vcl101.patch
%patch57 -p2 -b .workspace.slideshow1.patch
-%patch58 -p0 -b .ooo90439.sfx2.qstart.hackaround.patch
+%patch58 -p0 -b .workspace.qstartfix2.patch
%patch59 -p0 -b .ooo101274.opening-a-directory.patch
%patch60 -p0 -b .ooo101354.filter.xhtml.do-not-label-list-headers.patch
%patch61 -p0 -b .ooo101355.filter.no-variables-in-keys.patch
@@ -1778,6 +1779,7 @@ cat %{PATCH11} >> svtools/source/dialogs
%patch115 -p1 -b .workspace.impress180.patch
%patch116 -p1 -b .workspace.impress182.patch
%patch117 -p1 -b .ooo108637.sfx2.uisavedir.patch
+%patch118 -p1 -b .ooo108846.sfx2.qstartfixes.patch
%build
echo build start time is `date`, diskspace: `df -h . | tail -n 1`
@@ -4333,6 +4335,7 @@ fi
(dtardon)
- Resolves: ooo#108637/rhbz#558253 sfx2 uisavedir (caolanm)
- Resolves: rhbz#560435 rtf dropcap crash (caolanm)
+- Resolves: rhbz#560996/rhbz#560353 qstartfixes (caolanm)
* Tue Dec 22 2009 Caolán McNamara <caolanm at redhat.com> - 1:3.1.1-19.24
- Resolves: rhbz#545824 bustage in writer with emboldened fonts
--- openoffice.org-3.1.0.ooo90439.sfx2.qstart.hackaround.patch DELETED ---
- Previous message: rpms/rubygem-xmpp4r/EL-5 import.log, NONE, 1.1 rubygem-xmpp4r-examples.patch, NONE, 1.1 rubygem-xmpp4r-tests.patch, NONE, 1.1 rubygem-xmpp4r.spec, NONE, 1.1 .cvsignore, 1.1, 1.2 sources, 1.1, 1.2
- Next message: rpms/system-config-kdump/devel .cvsignore, 1.7, 1.8 sources, 1.7, 1.8 system-config-kdump.spec, 1.13, 1.14
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
More information about the scm-commits
mailing list