The instance domain can be different from their base url, for example
the instance at https://social.vivaldi.net uses the vivaldi.net domain,
sans 'social'.
This commit requires the user to provide the base url of the instance,
instead of domain name. The domain is then fetched from the server.
fixes#217
This is currently used for poll voting; after voting in a
poll overlay, the status detail will update with the user's
vote and the new vote count when they dismiss the overlay.
As part of this change, the refresh_status_detail method now
maintains the scroll position after refresh, rather than
scrolling back to the top automatically
When not in overlay mode, we handle <Esc> key press to get back to the
"home" timeline. This allows to navigate quickly from another timeline
to the home one, without getting through the "go to" menu.
This goes along with the ability to "go to" a saved hashtag timeline.
We need to pass the "local" flag down build_timeline() method so that
this is also saved. Note that we cannot save both a local and a
federated timeline for the same hashtag: I'm not sure it's worth
supporting both options?
We introduce "saved timelines" as a new entry in configuration file. For
now, we only save whether the timeline is local or not. Timeline save is
not implemented yet, only retrieval from config file and display is
handled at the moment. Saved timelines in the goto menu.
Some servers require authorization for viewing "public" timelines, and
since currently toot always requires auth for this it's not required to
support anon access to timelines.
fixes#168
We add a new [L]inks action that opens an overlay window with links
found in the content of selected status. Links are selectable and upon
click/enter we open the web browser at link's URL.
Adds two properties to `Status` entity:
* `reblog` - contains the reblogged Status or None if not a reblog
* `original`- contains the reblogged Status or self if not a reblog
Anywhere where you wish to show a reblogged status's property when it's
a reblog, or the base status proprety if not a reblog, use
`status.original.<property>`.