def get_entry_path_by_name(entry_name="文件管理器"):
    dbus_path_list = get_entries_path_list()
    for item in dbus_path_list:
        interface = get_session_dbus_interface(DBUS_NAME, item, iface_name='org.freedesktop.DBus.Properties')
        if entry_name == str(interface.Get(IFACE_NAME, 'Name')):
            return item
    else:
        raise ValueError(f'未找到属性Name为{entry_name}的Entry对象')
Exemple #2
0
def get_entry_path_by_name(entry_name="文件管理器"):
    """
    根据entry的属性值Name,获取对应的dbus path
    :param entry_name: 名称
    :return: dbus path or raise error
    """
    dbus_path_list = get_entries_path_list()
    for item in dbus_path_list:
        interface = get_session_dbus_interface(
            DBUS_NAME, item, iface_name='org.freedesktop.DBus.Properties')
        if entry_name == str(
                interface.Get('com.deepin.dde.daemon.Dock.Entry', 'Name')):
            return item
    else:
        raise ValueError(f'未找到属性Name为{entry_name}的Entry对象')
Exemple #3
0
def get_window_ids_by_name(entry_name="文件管理器"):
    """
    获取entry所有窗口的id
    :param entry_name: 名称
    :return: id list
    """
    id_list = []
    dbus_path = get_entry_path_by_name(entry_name)
    interface = get_session_dbus_interface(
        DBUS_NAME, dbus_path, iface_name='org.freedesktop.DBus.Properties')
    result = interface.Get('com.deepin.dde.daemon.Dock.Entry', 'WindowInfos')
    if isinstance(result, dbus.Dictionary) and result:
        for key in result:
            id_list.append(int(key))

    return id_list
Exemple #4
0
def get_properties_value(properties: str):
    property_obj = get_session_dbus_interface(
        dbus_name, dbus_path, iface_name='org.freedesktop.DBus.Properties')
    result = property_obj.Get(iface_name, properties)
    return result
Exemple #5
0
def dbus_interface():
    return get_session_dbus_interface(dbus_name, dbus_path, iface_name)
Exemple #6
0
def dbus_interface():
    return get_session_dbus_interface(DBUS_NAME, DBUS_PATH, IFACE_NAME)
Exemple #7
0
def get_properties_value(properties: str):
    property_obj = get_session_dbus_interface(
        DBUS_NAME, DBUS_PATH, iface_name='org.freedesktop.DBus.Properties')
    result = property_obj.Get(IFACE_NAME, properties)
    return result