diff --git a/src/menu.ui b/src/menu.ui
index 627463b..1af60a2 100644
--- a/src/menu.ui
+++ b/src/menu.ui
@@ -45,5 +45,13 @@
win.copy
Copy
+ -
+ win.copylink
+ Copy URL
+
+ -
+ win.openlink
+ Open URL
+
diff --git a/src/widgets.py b/src/widgets.py
index c6b2545..5b0aaab 100644
--- a/src/widgets.py
+++ b/src/widgets.py
@@ -242,6 +242,14 @@ class Timeline(Gtk.Box):
action.connect('activate', self.on_copy)
action_group.add_action(action)
+ action = Gio.SimpleAction.new('copylink', None)
+ action.connect('activate', self.on_copy_link)
+ action_group.add_action(action)
+
+ action = Gio.SimpleAction.new('openlink', None)
+ action.connect('activate', self.on_open_link)
+ action_group.add_action(action)
+
self.insert_action_group('win', action_group)
builder = Gtk.Builder.new_from_resource("/dev/thrrgilag/squeak/menu.ui")
@@ -336,6 +344,16 @@ class Timeline(Gtk.Box):
def on_copy(self, action, param):
self.clipboard.set_text(self.post_data.content.text, -1)
+ def on_copy_link(self, action, param):
+ post_url = f"https://posts.pnut.io/{self.post_data.id}"
+ self.clipboard.set_text(post_url, -1)
+
+ def on_open_link(self, action, param):
+ logging.debug("open_link")
+ post_url = f"https://posts.pnut.io/{self.post_data.id}"
+ opened = Gtk.show_uri_on_window(None, post_url, Gdk.CURRENT_TIME)
+ logging.debug(opened)
+
class PostItem(Gtk.ListBoxRow):
__gsignals__ = {