Commit Graph

96 Commits

Author SHA1 Message Date
Daniel Schwarz be5948bac8
Added translate status feature (requires server side support) 2022-12-11 20:25:02 +01:00
Ivan Habunek 7b4063fddc
Remove use of deprecated status.text_url 2022-11-30 08:55:46 +01:00
Peter Fidelman 1d26ecd489
Add zoom command to open status in scrollable popup window 2022-11-29 09:40:48 +01:00
Daniel Schwarz f15310cc75
Display polls in command line status output
Also display your own votes in toot tui poll displays.
2022-11-29 09:03:19 +01:00
Ivan Habunek e318581dd1
Don't break if poll doesn't have an expiry date 2022-11-12 07:55:25 +01:00
Eyal Sawady bf168be87d
Fix crash on empty timeline 2020-05-20 08:26:09 +02:00
Denis Laxalde 3e11153640
Add a [P]in action to save a hashtag timeline
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?
2020-05-11 13:20:54 +02:00
Denis Laxalde 28e1281187 Add an action to display status links and open them
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.
2020-04-15 14:11:31 +02:00
Denis Laxalde 690a91ce04 Fall back to "username" when "display_name" is unset
We add a "username" field to Author entity, this is then used when
displaying the "reblogged by" information when respective account has no
display name.
2020-01-22 08:13:48 +01:00
Ivan Habunek 35e03a13b1 Simplify access to reblogged status data
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>`.
2019-09-22 18:56:03 +02:00
Denis Laxalde 9fb52fb0a1 Try to use media's text_url if present
This field is sometimes provides and gives a shortened URL which is
easier to click on in a terminal.
2019-09-13 12:54:08 +02:00
Denis Laxalde a8774fc9ea Indicate if status is a reblog in timeline
This is different from the "reblogged" yellow icon already displayed on
the left of account name which indicates if own status got reblogged.
This one indicates if displayed status is a reblog.
2019-09-12 10:48:04 +02:00
Your Name 7fc39379c9
Check for existance of key in dictionary
as well as non-null value to avoid uncaught KeyError

re: issue #116
2019-09-07 23:20:50 +02:00
Denis Laxalde 9d0d1b2dd7
Make "view" action work for reblogged statuses
When the status is a reblog, the URL of the original toot should be used
as the one of reblog is null.

We add a "url" attribute to Status class storing computed URL.
2019-09-06 16:01:04 +02:00
Rasmus Lindroth 3a56243878
Escape closes timeline
As Escape does the same as Q when closing the app and overlays, it should do the same with timelines
2019-09-06 15:51:32 +02:00
Ivan Habunek 1d3ff87ffa
TUI: Implement deleting own status messages 2019-09-04 16:16:16 +02:00
Denis Laxalde efbaf9e706
Indicate if status is a reply in timeline of TUI 2019-09-03 15:40:50 +02:00
Ivan Habunek cf01cb9014
Cleanup palette slightly 2019-09-03 15:40:49 +02:00
Ivan Habunek 05972fc6fa
Show application used to post status 2019-09-03 15:40:49 +02:00
Ivan Habunek c1f518765c
Fix missing padding 2019-09-03 15:40:49 +02:00
Ivan Habunek 41f997199a
Add padding to status details 2019-09-03 15:40:48 +02:00
Ivan Habunek 07e6c372bc
Prepare for context menu 2019-09-03 15:40:48 +02:00
Ivan Habunek 1dce948166
Show content warning in status details 2019-09-03 15:40:47 +02:00
Ivan Habunek 7f6f128f38
Show media in image viewer 2019-09-03 15:40:47 +02:00
Ivan Habunek 31462fe6f8
Implement replies 2019-09-03 15:40:46 +02:00
Ivan Habunek 9c74c1d9e6
Housekeeping 2019-09-03 15:40:46 +02:00
Ivan Habunek ab1fc6961b
Show media in status details 2019-09-03 15:40:46 +02:00
Ivan Habunek 5213eb1835
Focus status after posting 2019-09-03 15:40:46 +02:00
Ivan Habunek 4deccee754
Decouple Timeline and TUI, use signals instead 2019-09-03 15:40:46 +02:00
Ivan Habunek 1a8c515922
Implement thread (status context) view 2019-09-03 15:40:46 +02:00
Ivan Habunek 672bb5d008
Add reply, reblog and favourite counters 2019-09-03 15:40:45 +02:00
Ivan Habunek db76b004cf
Simplify linebox rendering in status details 2019-09-03 15:40:45 +02:00
Ivan Habunek f6fcb2a821
Timeline: add divider, move columns, boost icon 2019-09-03 15:40:45 +02:00
Ivan Habunek 9784fb8eb5
Don't crash if no url present 2019-09-03 15:40:45 +02:00
Ivan Habunek 871e2bc960
Render polls 2019-09-03 15:40:45 +02:00
Ivan Habunek 4f30c177d6
Ditch status index list for now
Simplifies things, makes update_status slightly slower, but no biggie.
2019-09-03 15:40:44 +02:00
Ivan Habunek 366e9382d3
Implement posting statuses 2019-09-03 15:40:44 +02:00
Ivan Habunek 372976b1b2
Overhaul async actions, implement boost and reblog 2019-09-03 15:40:43 +02:00
Ivan Habunek 2349173a45
Tweaks 2019-09-03 15:40:43 +02:00
Ivan Habunek 2be8cb8438
Show status source 2019-09-03 15:40:43 +02:00
Ivan Habunek 2d8199646f
Boosted by improvements 2019-09-03 15:40:43 +02:00
Ivan Habunek dd1b462413
Highlight hashtags 2019-09-03 15:40:43 +02:00
Ivan Habunek 7da2e2dbbc
Handle reblogs 2019-09-03 15:40:43 +02:00
Ivan Habunek f68f5d5716
Load next when at bottom of list 2019-09-03 15:40:42 +02:00
Ivan Habunek c99999161d
Render status details 2019-09-03 15:40:42 +02:00
Ivan Habunek ea1ef6f207
Initial implementation of a TUI using Urwid 2019-09-03 15:40:42 +02:00