* support new dbus api introduced in GTG 0.2.9 ''' import os import dbus from kupfer import plugin_support from kupfer import pretty from kupfer import textutils from kupfer.obj.base import Leaf, Action, Source from kupfer.obj.objects import TextLeaf from kupfer.obj.apps import AppLeafContentMixin from kupfer.obj.helplib import FilesystemWatchMixin plugin_support.check_dbus_connection() _SERVICE_NAME = 'org.GTG' _OBJECT_NAME = '/org/GTG' _IFACE_NAME = 'org.GTG' _GTG_HOME = "~/.local/share/gtg/" _SERVICE_NAME2 = 'org.gnome.GTG' _OBJECT_NAME2 = '/org/gnome/GTG' _IFACE_NAME2 = 'org.gnome.GTG' def _create_dbus_connection_gtg(iface, obj, service, activate=False): ''' Create dbus connection to GTG @activate: if True, start program if not running ''' interface = None
__kupfer_actions__ = ( "RunInCurrentTab", "RunInNewTab", ) __description__ = _("Execute commands in Guake") __version__ = "" __author__ = "Jeroen Budts" import dbus from kupfer import plugin_support, pretty, icons from kupfer.objects import Action, TextLeaf, FileLeaf from kupfer.obj.fileactions import is_good_executable from gio.unix import DesktopAppInfo from gio import FileIcon, File plugin_support.check_dbus_connection() def get_guake(): try: bus = dbus.SessionBus() dbusObj = bus.get_object('org.guake.RemoteControl', '/org/guake/RemoteControl') return dbus.Interface(dbusObj, dbus_interface='org.guake.RemoteControl') except dbus.exceptions.DBusException, err: pretty.print_debug(err) return None class RunInCurrentTab(Action):