aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBlista Kanjo2024-06-27 02:34:26 -0400
committerBlista Kanjo2024-06-27 02:34:26 -0400
commitf242626450a5c1446c5aa438d5952d973b7e7f31 (patch)
tree026ca772a01194c3fa88d57c927c13989e680c44
parentcb7483ffd762d1dffd26e2b1d12677d54eb1fb59 (diff)
feat: add more `playerctl` commands
refactor: make labels more literal to actual `playerctl` commands to be executed
-rw-r--r--.local/share/python-playerctl_systray/playerctl_systray.py51
1 files changed, 47 insertions, 4 deletions
diff --git a/.local/share/python-playerctl_systray/playerctl_systray.py b/.local/share/python-playerctl_systray/playerctl_systray.py
index f5cf5e6..6e403e4 100644
--- a/.local/share/python-playerctl_systray/playerctl_systray.py
+++ b/.local/share/python-playerctl_systray/playerctl_systray.py
@@ -19,22 +19,50 @@ class playerctl_systray:
def create_menu(self):
menu = Gtk.Menu()
- play_item = Gtk.MenuItem(label="Play/Pause")
+ play_item = Gtk.MenuItem(label="play-pause")
play_item.connect("activate", self.play_pause)
menu.append(play_item)
- next_item = Gtk.MenuItem(label="Next")
+ next_item = Gtk.MenuItem(label="next")
next_item.connect("activate", self.next_track)
menu.append(next_item)
- prev_item = Gtk.MenuItem(label="Previous")
+ prev_item = Gtk.MenuItem(label="previous")
prev_item.connect("activate", self.prev_track)
menu.append(prev_item)
- quit_item = Gtk.MenuItem(label="Quit")
+ stop_item = Gtk.MenuItem(label="stop")
+ stop_item.connect("activate", self.stop_track)
+ menu.append(stop_item)
+
+ quit_item = Gtk.MenuItem(label="quit")
quit_item.connect("activate", self.quit)
menu.append(quit_item)
+ menu.append(Gtk.SeparatorMenuItem()) # separator before -a submenu
+
+ a_submenu = Gtk.Menu()
+
+ a_play_item = Gtk.MenuItem(label="play-pause")
+ a_play_item.connect("activate", self.a_play_pause)
+ a_submenu.append(a_play_item)
+
+ a_next_item = Gtk.MenuItem(label="next")
+ a_next_item.connect("activate", self.a_next_track)
+ a_submenu.append(a_next_item)
+
+ a_prev_item = Gtk.MenuItem(label="previous")
+ a_prev_item.connect("activate", self.a_prev_track)
+ a_submenu.append(a_prev_item)
+
+ a_stop_item = Gtk.MenuItem(label="stop")
+ a_stop_item.connect("activate", self.a_stop)
+ a_submenu.append(a_stop_item)
+
+ a_menu_item = Gtk.MenuItem(label="-a")
+ a_menu_item.set_submenu(a_submenu)
+ menu.append(a_menu_item)
+
menu.show_all()
return menu
@@ -47,6 +75,21 @@ class playerctl_systray:
def prev_track(self, source):
self.run_command("playerctl previous")
+ def stop_track(self, source):
+ self.run_command("playerctl stop")
+
+ def a_play_pause(self, source):
+ self.run_command("playerctl -a play-pause")
+
+ def a_next_track(self, source):
+ self.run_command("playerctl -a next")
+
+ def a_prev_track(self, source):
+ self.run_command("playerctl -a previous")
+
+ def a_stop(self, source):
+ self.run_command("playerctl -a stop")
+
def run_command(self, command):
subprocess.run(command, shell=True)