diff --git a/src/API/Status.vala b/src/API/Status.vala index 6cdaf9e..32bb256 100644 --- a/src/API/Status.vala +++ b/src/API/Status.vala @@ -34,7 +34,6 @@ public class Tootle.Status { status.account = Account.parse (obj.get_object_member ("account")); status.uri = obj.get_string_member ("uri"); - status.url = obj.get_string_member ("url"); status.created_at = obj.get_string_member ("created_at"); status.reblogs_count = obj.get_int_member ("reblogs_count"); status.favourites_count = obj.get_int_member ("favourites_count"); @@ -42,6 +41,11 @@ public class Tootle.Status { status.sensitive = obj.get_boolean_member ("sensitive"); status.visibility = StatusVisibility.from_string (obj.get_string_member ("visibility")); + if (obj.has_member ("url")) + status.url = obj.get_string_member ("url"); + else + status.url = obj.get_string_member ("uri").replace ("/activity", ""); + var spoiler = obj.get_string_member ("spoiler_text"); if (spoiler != "") status.spoiler_text = Html.simplify (spoiler); diff --git a/src/Widgets/StatusWidget.vala b/src/Widgets/StatusWidget.vala index ecebc59..55b44ae 100644 --- a/src/Widgets/StatusWidget.vala +++ b/src/Widgets/StatusWidget.vala @@ -271,12 +271,12 @@ public class Tootle.StatusWidget : Gtk.EventBox { var item_delete = new Gtk.MenuItem.with_label (_("Delete")); item_delete.activate.connect (() => status.poof ()); var item_open_link = new Gtk.MenuItem.with_label (_("Open in Browser")); - item_open_link.activate.connect (() => Desktop.open_uri (status.url)); + item_open_link.activate.connect (() => Desktop.open_uri (status.get_formal ().url)); var item_copy_link = new Gtk.MenuItem.with_label (_("Copy Link")); - item_copy_link.activate.connect (() => Desktop.copy (status.url)); + item_copy_link.activate.connect (() => Desktop.copy (status.get_formal ().url)); var item_copy = new Gtk.MenuItem.with_label (_("Copy Text")); item_copy.activate.connect (() => { - var sanitized = Html.remove_tags (status.content); + var sanitized = Html.remove_tags (status.get_formal ().content); Desktop.copy (sanitized); });