rpms/sabayon/devel sabayon-2.25.0-profile-save.patch, NONE, 1.1 sabayon.spec, 1.59, 1.60 sabayon-2.25.0-gconf-crashes.patch, 1.1, NONE
Tomas Bzatek
tbzatek at fedoraproject.org
Mon Apr 20 12:15:32 UTC 2009
- Previous message: rpms/nfs-utils/F-11 nfs-utils-1.1.5-nfsstat-update.patch, NONE, 1.1 nfs-utils-1.1.5-umount-privport.patch, NONE, 1.1 nfs-utils.spec, 1.221, 1.222
- Next message: rpms/openssh/devel openssh-5.2p1-fips.patch, 1.3, 1.4 openssh.spec, 1.141, 1.142
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
Author: tbzatek
Update of /cvs/extras/rpms/sabayon/devel
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv11279
Modified Files:
sabayon.spec
Added Files:
sabayon-2.25.0-profile-save.patch
Removed Files:
sabayon-2.25.0-gconf-crashes.patch
Log Message:
* Mon Apr 20 2009 Tomas Bzatek <tbzatek at redhat.com> - 2.25.0-3
- Another, more complete fix for panel gconf save issues (gnome #542604)
sabayon-2.25.0-profile-save.patch:
--- NEW FILE sabayon-2.25.0-profile-save.patch ---
diff --git a/lib/sources/paneldelegate.py b/lib/sources/paneldelegate.py
index d37c180..87b1af5 100755
--- a/lib/sources/paneldelegate.py
+++ b/lib/sources/paneldelegate.py
@@ -39,6 +39,16 @@ def dprint (fmt, *args):
PANEL_LAUNCHER_DIR = ".gnome2/panel2.d/default/launchers"
+
+def copy_dir (src_client, dst_client, dst_address, dir):
+ for entry in src_client.all_entries (dir):
+ if entry.get_schema_name():
+ gconfsource.associate_schema (dst_address, entry.key, entry.get_schema_name ())
+ if entry.value and not entry.get_is_default ():
+ dst_client.set (entry.key, entry.value)
+ for subdir in src_client.all_dirs (dir):
+ copy_dir (src_client, dst_client, dst_address, subdir)
+
class PanelChange (userprofile.ProfileChange):
def __init__ (self, source, delegate, id):
userprofile.ProfileChange.__init__ (self, source, delegate)
@@ -162,10 +172,20 @@ class PanelDelegate (userprofile.SourceDelegate):
self.added = added
self.removed = removed
self.client = gconf.client_get_default ()
+
+ def _copy_tree(self, dir):
+ if not self.client.dir_exists(dir):
+ (src_client, src_address) = gconfsource.get_client_and_address_for_path(
+ os.path.join(util.get_home_dir(), '.gconf'))
+ (dst_client, dst_address) = gconfsource.get_client_and_address_for_path(
+ os.path.join(util.get_home_dir(), '.gconf.xml.defaults'))
+ copy_dir (src_client, dst_client, dst_address, dir)
class PanelToplevel (PanelThing):
def __init__ (self, id, added = False, removed = False):
PanelDelegate.PanelThing.__init__ (self, id, added, removed)
+
+ self._copy_tree(PANEL_KEY_BASE + "/toplevels/" + id)
self.orientation = self.client.get_string (PANEL_KEY_BASE + "/toplevels/" + id + "/orientation")
@@ -177,6 +197,8 @@ class PanelDelegate (userprofile.SourceDelegate):
def __init__ (self, id, added = False, removed = False):
PanelDelegate.PanelThing.__init__ (self, id, added, removed)
+ self._copy_tree(PANEL_KEY_BASE + "/applets/" + id)
+
self.toplevel_id = self.client.get_string (PANEL_KEY_BASE + "/applets/" + id + "/toplevel_id")
self.bonobo_iid = self.client.get_string (PANEL_KEY_BASE + "/applets/" + id + "/bonobo_iid")
@@ -191,6 +213,8 @@ class PanelDelegate (userprofile.SourceDelegate):
class PanelObject (PanelThing):
def __init__ (self, id, added = False, removed = False):
PanelDelegate.PanelThing.__init__ (self, id, added, removed)
+
+ self._copy_tree(PANEL_KEY_BASE + "/objects/" + id)
self.toplevel_id = self.client.get_string (PANEL_KEY_BASE + "/objects/" + id + "/toplevel_id")
self.object_type = self.client.get_string (PANEL_KEY_BASE + "/objects/" + id + "/object_type")
@@ -220,6 +244,8 @@ class PanelDelegate (userprofile.SourceDelegate):
self.name = _("Run Application button")
elif action_type == "search":
self.name = _("Search button")
+ elif action_type == "connect-server":
+ self.name = _("Connect to Server button")
else:
self.name = _("Screenshot button")
else:
@@ -339,14 +365,6 @@ class PanelDelegate (userprofile.SourceDelegate):
return False
- def __copy_dir (self, src_client, dst_client, dst_address, dir):
- for entry in src_client.all_entries (dir):
- if entry.get_schema_name ():
- gconfsource.associate_schema (dst_address, entry.key, entry.get_schema_name ())
- if entry.value and not entry.get_is_default ():
- dst_client.set (entry.key, entry.value)
- for subdir in src_client.all_dirs (dir):
- self.__copy_dir (src_client, dst_client, dst_address, subdir)
def __get_current_list (self, dict):
id_list = []
@@ -368,8 +386,8 @@ class PanelDelegate (userprofile.SourceDelegate):
(client, address) = self.source.get_committing_client_and_address (mandatory)
- self.__copy_dir (self.client, client, address, PANEL_KEY_BASE + "/" + dir_name + "/" + thing.id)
-
+ copy_dir (self.client, client, address, PANEL_KEY_BASE + "/" + dir_name + "/" + thing.id)
+
id_list = self.__get_current_list (dict)
id_list.append (thing.id)
client.set_list (PANEL_KEY_BASE + "/general/" + id_list_name, gconf.VALUE_STRING, id_list)
Index: sabayon.spec
===================================================================
RCS file: /cvs/extras/rpms/sabayon/devel/sabayon.spec,v
retrieving revision 1.59
retrieving revision 1.60
diff -u -r1.59 -r1.60
--- sabayon.spec 3 Apr 2009 16:14:50 -0000 1.59
+++ sabayon.spec 20 Apr 2009 12:15:00 -0000 1.60
@@ -8,7 +8,7 @@
Name: sabayon
Version: 2.25.0
-Release: 2%{?dist}
+Release: 3%{?dist}
Summary: Tool to maintain user profiles in a GNOME desktop
Group: Applications/System
@@ -30,8 +30,8 @@
# https://bugzilla.gnome.org/show_bug.cgi?id=576440
Patch5: sabayon-2.25.0-XAUTHLOCALHOSTNAME.patch
-# https://bugzilla.gnome.org/show_bug.cgi?id=576445
-Patch6: sabayon-2.25.0-gconf-crashes.patch
+# http://bugzilla.gnome.org/show_bug.cgi?id=542604
+Patch7: sabayon-2.25.0-profile-save.patch
Requires: %{name}-apply = %{version}-%{release}
@@ -108,7 +108,7 @@
%patch3 -p1 -b .selinux
%patch4 -p0 -b .gconfsave
%patch5 -p1 -b .xauth
-%patch6 -p1 -b .gconf
+%patch7 -p1 -b .profile
%build
@@ -298,6 +298,9 @@
%ghost %{python_sitearch}/%{name}/lockdown/*.pyo
%changelog
+* Mon Apr 20 2009 Tomas Bzatek <tbzatek at redhat.com> - 2.25.0-3
+- Another, more complete fix for panel gconf save issues (gnome #542604)
+
* Fri Apr 3 2009 Tomas Bzatek <tbzatek at redhat.com> - 2.25.0-2
- Fix some gconf crashes (gnome #576445)
- Temporarily switched back to Xnest to get working keyboard (gnome #576447)
--- sabayon-2.25.0-gconf-crashes.patch DELETED ---
- Previous message: rpms/nfs-utils/F-11 nfs-utils-1.1.5-nfsstat-update.patch, NONE, 1.1 nfs-utils-1.1.5-umount-privport.patch, NONE, 1.1 nfs-utils.spec, 1.221, 1.222
- Next message: rpms/openssh/devel openssh-5.2p1-fips.patch, 1.3, 1.4 openssh.spec, 1.141, 1.142
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
More information about the scm-commits
mailing list