Fix null URLs (close #62)

This commit is contained in:
bleakgrey 2018-07-08 03:47:35 +03:00
parent c4657ea697
commit 9bd0fe85ab
2 changed files with 8 additions and 4 deletions

View File

@ -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);

View File

@ -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);
});