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
9623219959
Include mentions and replied-to account in compose text
...
We add a "mentions" attribute to Status. Then when composing a reply, we
fill the edit text of the compose box with the account name of status
being replied to and possibly include mentions at the bottom of the edit
text. Initial cursor position is set after replied account name.
2019-09-18 21:42:55 +02:00
Kai Zhang
a76f4ae815
Set urwid global encoding to UTF-8
...
so that many characters can be displayed
2019-09-18 21:41:02 +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
Denis Laxalde
e06478a798
Use original account information for reblogged statuses
...
Otherwise, we get the account name of reblogger in the timeline.
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
Ivan Habunek
e310482cb6
Fix date parsing bug
...
issue #114
2019-09-04 08:36:12 +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
7e04ad55c6
Add links to help overlay
2019-09-03 15:40:49 +02:00
Ivan Habunek
3a11e470fb
Extract overlays from app.py
2019-09-03 15:40:49 +02:00
Ivan Habunek
c1f518765c
Fix missing padding
2019-09-03 15:40:49 +02:00
Ivan Habunek
d5a2cc27ed
Add help
2019-09-03 15:40:48 +02:00
Ivan Habunek
41f997199a
Add padding to status details
2019-09-03 15:40:48 +02:00
Ivan Habunek
51afcf7e34
Add goto hash timeline
2019-09-03 15:40:48 +02:00
Ivan Habunek
350138324b
Add basic timeline switching
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
5ec8d9411d
Propagate visibility when posting status
2019-09-03 15:40:45 +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
9aadec6cfb
Add option to set status visibility
2019-09-03 15:40:44 +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
b95aca964f
Show an intro screen while loading initial toots
2019-09-03 15:40:44 +02:00
Ivan Habunek
fb14c262e0
Show exception stack trace on error
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