File: lists.py

package info (click to toggle)
python-i3ipc 2.2.1-3
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 580 kB
  • sloc: python: 2,968; makefile: 222; sh: 4
file content (33 lines) | stat: -rw-r--r-- 800 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
from . import App


class Lists:
    @staticmethod
    def accum_uniq_apps(result, app):
        exists = False
        for a in result:
            if a.get_title() == app.get_title():
                exists = True

        if not exists:
            result.append(app)

        return result

    @staticmethod
    def find_all_by_focused_app(infos):
        for i in infos:
            if i["focused"]:
                focused_info = i

        focused_app = App(focused_info)

        focused_app_windows_by_class = list(
            filter(lambda i: App(i).get_title() == focused_app.get_title(), infos))
        return focused_app_windows_by_class

    @staticmethod
    def find_app_by_title(title, apps):
        for a in apps:
            if a.get_title() == title:
                return a