[compiz] DBus setting options broken

Travis Watkins alleykat at gmail.com
Mon Jan 1 17:35:24 PST 2007


Using latest git if you try to set an option to the value it already
has you get an error like 'dbus_bindings.DBusException: Method "set"
with signature "s" on interface "org.freedesktop.compiz" doesn't
exist' and setting it to a new value actually changes the setting but
dbus times out waiting for a reply saying so. Setting a list gives the
method doesn't exist error no matter what you do to it.

I think the list one has something to do with dbusGetOptionValue being
called with option->type instead of option->value.list.type but that
change alone doesn't seem to fix it. I've spent about an hour trying
to track this one down and am completely lost, hopefully someone else
can figure it out.

Here is the code I'm using to set a list option:
import dbus
bus = dbus.SessionBus()
obj = bus.get_object('org.freedesktop.compiz',
'/org/freedesktop/compiz/core/allscreens/active_plugins')
iface = dbus.Interface(obj, 'org.freedesktop.compiz')
value = iface.get()
value.remove('place')
iface.set(value)

-- 
Travis Watkins
http://www.realistanew.com


More information about the compiz mailing list