Daniel Schwarz
85df15f533
Implement actions for Account
...
Actions: un/follow, un/mute, un/block are invoked synchronously
and the Account overlay window is updated to reflect the changes.
2023-02-20 09:11:36 +01:00
Daniel Schwarz
876ad1f53d
Added framework for action buttons with "Confirm/Cancel" behavior
...
Buttons with confirm/cancel behavior are in place and working
TBD: implement actions when user gives confirmation.
2023-02-20 09:11:36 +01:00
Daniel Schwarz
a1490461bd
Add relationship support to Account overlay
...
Display relationship details such as followed_by, blocked_by,
and add buttons to un/follow, un/mute, un/block.
Buttons are nonfunctional for now
2023-02-20 09:11:34 +01:00
Daniel Schwarz
95473fcd6e
Add get_relationship method to api
2023-02-20 09:08:53 +01:00
Ivan Habunek
a633f757b5
Merge pull request #312 from danschwarz/poll3
...
UI to vote in polls
2023-02-20 09:06:51 +01:00
Ivan Habunek
4b87f7876c
Add changelog, bump version
2023-02-20 08:43:27 +01:00
Daniel Schwarz
c944863f3f
Changed bookmark symbol from unicode glyph to 'b'
...
The glyph previously used '🠷' is interpreted with different
widths on different terminal emulators (i.e. xterm gets it wrong)
This results in visual glitches in the status detail area and
especially in the scrollbar when visible. Changing it to a
standard ASCII 'b' fixes all these issues.
2023-02-17 09:34:57 +01:00
Daniel Schwarz
80e711a3a1
Fixed type error in vote method signature
2023-02-15 21:50:50 -05:00
Daniel Schwarz
68cadd4053
Boosted polls weren't working; this change fixes that.
2023-02-15 10:15:16 -05:00
Daniel Schwarz
a937650894
Update status detail after leaving overlay
...
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
2023-02-14 23:16:26 -05:00
Daniel Schwarz
63bc11316b
Removed unnecessary check that poll exists
2023-02-14 22:40:35 -05:00
Daniel Schwarz
b2a0bc5634
fixed method signature for vote (added list type of int)
2023-02-14 22:40:06 -05:00
Daniel Schwarz
ce34a2f05e
Added api error message reporting, removed unnecessary parenthesis
2023-02-14 22:21:04 -05:00
Daniel Schwarz
41a8c33409
Removed unneeded parenthesis
2023-02-14 22:21:04 -05:00
Daniel Schwarz
ef2c35eaee
Removed unneeded pareenthesis
2023-02-14 22:21:04 -05:00
Daniel Schwarz
3b67c85dfc
Added styled radio buttons and checkboxes
2023-02-14 22:21:04 -05:00
Ivan Habunek
3a9e4956a2
Don't break if edited_at does not exist
...
Introduced in mastodon 4.
fixes #309
2023-02-12 09:41:26 +01:00
Daniel Schwarz
d399eec6f5
Implement [P]oll command to view/vote on poll
...
Note that this change also switches some key meanings:
E -> X for View E[x]ception
P -> E for Sav[e] Timeline
to accomodate P for [P]oll
2023-02-10 21:48:42 -05:00
Daniel Schwarz
c2faa7e2b6
Add signal and code to invoke poll overlay UI
...
Note that this change also switches some key meanings:
E -> X for View E[x]ception
P -> E for Sav[e] Timeline
to accomodate P for [P]oll
2023-02-10 21:46:27 -05:00
Daniel Schwarz
44c8460a53
Poll view/vote functionality in an overlay
2023-02-10 21:45:15 -05:00
Daniel Schwarz
b50fb9d9fd
Added vote method to api
2023-02-10 21:44:37 -05:00
Ivan Habunek
ed1aea9cba
Cleanup logging, remove color
2023-02-04 09:01:56 +01:00
Ivan Habunek
f52fe00d26
Pass params as dict
2023-02-04 09:01:48 +01:00
Ivan Habunek
1c59facd2b
Show account of original toot instead of reblog
2023-02-03 15:03:06 +01:00
Ivan Habunek
9e2b5acf49
Extract link helper
2023-02-03 15:03:05 +01:00
Ivan Habunek
6a54f3dd0e
Pass account as argument
2023-02-03 15:03:05 +01:00
Ivan Habunek
0e535a3fd0
Make tags a bit less verbose
2023-02-03 15:03:05 +01:00
Ivan Habunek
83318ca43b
Add changelog, bump version
2023-02-03 15:03:05 +01:00
Daniel Schwarz
de7abd0b68
Strip trailing ":" off field names for consistency
...
Some servers add them, some don't. This makes the names
consistent before adding one trailing :
2023-02-03 15:02:47 +01:00
Daniel Schwarz
5943ebda3a
Show if an account is a "bot", "locked", or "suspended"
2023-02-03 15:02:47 +01:00
Daniel Schwarz
a5d61c04a7
Account overlay is now at feature parity with toot whois command
2023-02-03 15:02:47 +01:00
Daniel Schwarz
e10fff983f
Support for "account" message - load details and display overlay
2023-02-03 15:02:47 +01:00
Daniel Schwarz
7be30302dc
Timeline ui support + signal for [A]ccount feature
...
[A] displays overlay with account details and actions
2023-02-03 15:02:47 +01:00
Daniel Schwarz
5ae6db8689
Added 'whois' API method to retrieve account by ID
...
More reliable and faster than retrieving by account name
tbd: is "whois" the right name for this method?
2023-02-03 15:02:47 +01:00
Daniel Schwarz
4336871e9f
Move save button to top
2023-02-03 04:09:35 +01:00
Ivan Habunek
9f3a54c054
Add status id to default filename
2023-02-03 04:09:35 +01:00
Ivan Habunek
37b4f00f6e
Use get_edit_text to avoid trimming
...
This method returns only the text entered, without the caption.
2023-02-03 04:09:35 +01:00
Ivan Habunek
5606d95c93
Put edit box and button in list box with source
...
This makes it much easier to focus them, just scroll down.
2023-02-03 04:09:35 +01:00
Ivan Habunek
cc1809db31
Remove splitlines, not needed
...
Works just as well if provided as a single Text object.
2023-02-03 04:09:35 +01:00
Ivan Habunek
1b2da81d15
Inline button construction, avoid lambda
2023-02-03 04:09:35 +01:00
Ivan Habunek
c7f9f06f72
Use context for writing to file
2023-02-03 04:09:35 +01:00
Ivan Habunek
61990822e5
Use full words instead of abbreviations
2023-02-03 04:09:35 +01:00
Daniel Schwarz
b9a68a6132
Adds a "save" option to the so[u]rce dialog.
2023-02-03 04:09:35 +01:00
Ivan Habunek
40076ab0c4
Print verified flag
2023-01-30 17:09:41 +01:00
Ivan Habunek
baa5a37125
Add custom fields to status output
2023-01-30 17:04:21 +01:00
Daniel Schwarz
459937f196
--verbose and --no-color options now work with --debug logging
2023-01-29 09:32:25 +01:00
Ivan Habunek
f3b90c947e
Add option to display relative datetimes
2023-01-29 09:23:57 +01:00
Daniel Schwarz
deebdf7141
Show relative datetimes in status list
...
Status detail pane now shows the full created_at timestamp.
2023-01-29 09:11:03 +01:00
Ivan Habunek
7cada43e2f
Deduplicate code for wrapping the status details
2023-01-19 11:20:31 +01:00
Ivan Habunek
b0319c43f0
Pass timeline as first argument to status
...
Instead of passing various attributes of timeline.
2023-01-19 11:20:31 +01:00
Norman Walsh
b8f49ef212
Support --help as the only command-line argument
2023-01-19 09:40:32 +01:00
K
4f9391f015
Fix version detection
...
Version check failed when the server sent something other than a number
as a version as happened on development version of the gotosocial
server.
2023-01-19 09:32:45 +01:00
Dan Schwarz
91c1b792be
Status detail scrollbar feature
...
Uses scroll.py from https://github.com/rndusr/stig
2023-01-19 09:02:35 +01:00
Daniel Schwarz
c5b3724015
Don't focus newly posted toot
...
This breaks the reading flow.
fixes #188
2023-01-19 08:44:16 +01:00
Ivan Habunek
08dd02d989
Bump version
2023-01-03 12:05:26 +01:00
Ivan Habunek
82383cd163
Fix clear screen
...
It was passed more arguments than expected.
2023-01-03 11:58:49 +01:00
Ivan Habunek
9e800996f1
Bump version
2023-01-02 14:45:01 +01:00
Ivan Habunek
ff1374a95c
Improve formatting, remove logging
2023-01-02 14:25:39 +01:00
Daniel Schwarz
88c444c411
Highlight followed tags
2023-01-02 14:25:30 +01:00
Ivan Habunek
15d377e889
Expand tests
2023-01-02 11:53:50 +01:00
Ivan Habunek
a83c3520ae
Use fstrings instead of format
2023-01-02 11:53:50 +01:00
Ivan Habunek
1e18f1f6d9
Make flake8 happy
2023-01-01 11:13:21 +01:00
Giuseppe Bilotta
253eea12a6
Command to browse bookmarks from the CLI
2023-01-01 11:02:00 +01:00
Daniel Schwarz
13fffd9fc1
Screen refresh after web browser invocation and exit
2023-01-01 09:04:02 +01:00
Dan Schwarz
6633b758bc
Make the status detail key commands more visible
...
Some terminal color schemes completely eliminate the difference
between cyan and cyan-bold colors (all the base16 themes, for instance).
This change makes the key letters stand out clearly in bold white.
2023-01-01 08:59:44 +01:00
Ivan Habunek
4ef866dcbe
Don't print usage on unknown command
...
Usage has grown pretty long and it obscures the error message.
2022-12-31 11:50:22 +01:00
Ivan Habunek
2d8791e629
Remove coding directives, no longer needed
2022-12-31 09:31:32 +01:00
Ivan Habunek
7be74f9240
Print if no tags are followed
2022-12-31 09:31:32 +01:00
Ivan Habunek
6f9ef69277
Rename tag commands to start with tags_
2022-12-31 09:31:32 +01:00
Ivan Habunek
ce560eacc7
Make commands code a bit nicer
2022-12-31 09:31:32 +01:00
Daniel Schwarz
67b52757a4
Command line support for following hashtags (Mastodon 4+)
2022-12-31 09:02:38 +01:00
Ivan Habunek
a3fa7e1e3a
Improve visibility help string
2022-12-28 09:48:44 +01:00
Ivan Habunek
aa75cacbff
Rename TOOT_VISIBILITY to TOOT_POST_VISIBILITY
...
This makes it more in line with what's planned for environemnt
variables in the future.
2022-12-28 09:21:22 +01:00
Ivan Habunek
e07be634f6
Extract code for getting default visibility
2022-12-28 09:19:25 +01:00
Lim Ding Wen
08a28bfb26
TOOT_VISIBILITY controls boost visibility
...
TOOT_VISIBILITY controls default boost visibility from CLI, and the boost visibility from TUI (no option to change in TUI yet)
2022-12-28 09:12:05 +01:00
Lim Ding Wen
8582c8ed62
TOOT_VISIBILITY controls default visibility
2022-12-28 09:12:05 +01:00
Lim Ding Wen
f91bfa0c62
TUI no longer mentions self when replying
...
This brings it more in-line with Mastodon v4's web UI.
2022-12-28 09:06:14 +01:00
Lim Ding Wen
69718f41f6
Reply to original account instead of boosting account
...
Affects the "replying to" TUI label, and the mention auto-generated.
This brings it more in-line with Mastodon web behaviour.
2022-12-28 09:03:11 +01:00
Ivan Habunek
fa6b90a115
Tweak visibility display
2022-12-28 07:48:53 +01:00
Lim Ding Wen
064cab1988
Show visibility in TUI
2022-12-28 07:40:19 +01:00
Ivan Habunek
8ffe8d281f
Fix style issues
2022-12-27 12:31:55 +01:00
Ivan Habunek
f534d295c0
Make line more readable
2022-12-27 12:15:21 +01:00
Ivan Habunek
69b9ab3164
Truncate long log lines unless --verbose given
2022-12-27 12:15:21 +01:00
Ivan Habunek
adf3f713a6
Change bookmark key binding to avoid conflict
...
K is used to scroll up vim-style.
2022-12-27 12:15:21 +01:00
Daniel Schwarz
fed5574939
Add bookmark timeline and bookmarking to tui
2022-12-27 12:15:20 +01:00
Ivan Habunek
ded7a0c50d
Fix flake8 errors
2022-12-27 10:56:36 +01:00
Daniel Schwarz
8595e39f4c
Hide polls and media for sensitive toots
2022-12-27 10:53:58 +01:00
Lim Ding Wen
5c98d4ac80
Show error if trying to boost unboostables in TUI
2022-12-27 09:53:11 +01:00
Ivan Habunek
29ff629464
Add toot env command
2022-12-18 19:44:43 +01:00
Ivan Habunek
c74d2ad916
Bump version, generate changelog
2022-12-12 13:31:15 +01:00
Ivan Habunek
b4bbb41a20
Bump version, update changelog
2022-12-12 13:24:08 +01:00
Ivan Habunek
02d358907c
Embrace f-strings
2022-12-12 12:47:45 +01:00
Ivan Habunek
e2d89c2d85
Fix matching fully qualified account names
...
fixes #254
2022-12-12 12:47:45 +01:00
Ivan Habunek
ef697c3bee
Show only registration date on whois
...
Time is not that relevant and causes noise
2022-12-12 12:47:45 +01:00
Ivan Habunek
0ab0db048c
Show full language name
2022-12-11 23:26:15 +01:00
Ivan Habunek
92d6c399b1
Move utils to own module
2022-12-11 23:15:07 +01:00
Ivan Habunek
47be3a762a
Fix language specification
...
Old API docs claimed to require ISO 639-2 format, testing determines
that that ISO 639-1 is required instead.
2022-12-11 23:15:07 +01:00
Ivan Habunek
c3bf0f3bb0
Enable toggling translation
2022-12-11 22:51:32 +01:00
Daniel Schwarz
be5948bac8
Added translate status feature (requires server side support)
2022-12-11 20:25:02 +01:00
Ivan Habunek
f9fef1927c
Bump version, update changelog
2022-12-07 15:09:09 +01:00
Ivan Habunek
3e828c05d9
Send datetimes with timezone when scheduling
...
This fixes this feature on Pleroma
2022-12-07 15:03:39 +01:00
Ivan Habunek
d6f5728486
Don't send null parameters when posting
...
fixes #250
2022-12-07 15:03:39 +01:00
Ivan Habunek
4f0c367995
Add post --scheduled-in option for easier scheduling
2022-12-03 15:38:19 +01:00
Ivan Habunek
59b98a7f33
Improve colorize
2022-12-02 08:50:34 +01:00
Ivan Habunek
0e13914fce
Add duration parsing
2022-12-01 10:20:50 +01:00
Ivan Habunek
6ae2ed623a
Add test for scheduled statuses
2022-12-01 08:35:55 +01:00
Ivan Habunek
d76a2ee967
Bump version, update changelog
2022-11-30 13:51:00 +01:00
Ivan Habunek
de2547cfa1
Refactor post function to make it more readable
2022-11-30 12:44:20 +01:00
Ivan Habunek
4ccc547830
Don't default to media URLs if no text is given
2022-11-30 08:56:10 +01:00
Ivan Habunek
7b4063fddc
Remove use of deprecated status.text_url
2022-11-30 08:55:46 +01:00
Ivan Habunek
e396768d15
Bump version, add changelog
2022-11-29 11:54:45 +01:00
Ivan Habunek
a0353f9bbe
Remove unused imports
2022-11-29 11:07:02 +01:00
Ivan Habunek
942dd36cd6
Fix tests
2022-11-29 10:08:21 +01:00
Peter Fidelman
1d26ecd489
Add zoom command to open status in scrollable popup window
2022-11-29 09:40:48 +01:00
Ivan Habunek
916b4cc4bf
Extract code for printing a poll
2022-11-29 09:20:00 +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
7b194880a0
Remove duplicate search api fn
2022-11-27 09:56:58 +01:00
Ivan Habunek
ebc17e0764
Make toot instance work with localhost
...
Asserting the domain exists does not bring much value.
2022-11-27 09:56:04 +01:00
Ivan Habunek
d308475afe
Fix key detection
2022-11-27 09:26:09 +01:00
Ivan Habunek
654bc06166
Fix formatting
2022-11-24 11:21:01 +01:00
Ivan Habunek
d03a329b1a
Improve print_instance
2022-11-24 11:21:01 +01:00
Ivan Habunek
db6d8c6d73
Catch request errors
2022-11-24 11:21:00 +01:00
Ivan Habunek
5c10479d65
Add api endpoint for fetching a single status
2022-11-24 11:21:00 +01:00
Ivan Habunek
44be9fd8bb
Add api endpoint for registring an account
2022-11-24 11:20:59 +01:00
Ivan Habunek
b15cb85a23
Standardize http request method parameters
...
This allows setting either json or data. Until now we were always using
data and this is not enough for some endpoints.
2022-11-24 11:20:59 +01:00
Nick LaForge
8c3baa704e
Fix typo
2022-11-23 15:39:26 +01:00
Daniel Schwarz
9abaebdc21
Updated patch
...
Corrected code here
2022-11-22 07:16:27 +01:00
Ivan Habunek
5aa779ef06
Bump version
2022-11-21 09:45:51 +01:00
Ivan Habunek
ceedc0e448
Fix timezone to UTC when running tests
...
fixes #227
2022-11-21 09:06:58 +01:00
Ivan Habunek
0b671be0c6
Use exisiting functon to parse datetime
2022-11-21 08:35:23 +01:00
Peter Fidelman
0d20a4878b
IMPROVED VERSION: Show media attachments in the "L" list of links
2022-11-21 08:35:11 +01:00
Ivan Habunek
12d682591b
Fix command descriptions
2022-11-18 08:28:15 +01:00
Giuseppe Bilotta
e171578878
Implement following/followers list retrieval
2022-11-18 08:23:12 +01:00
Ivan Habunek
44a30b44d8
Add toot (un)bookmarking
...
fixes #204
2022-11-17 06:32:12 +01:00
Ivan Habunek
ec16ba0bbf
Bump version, add changelog
2022-11-12 09:21:00 +01:00
Ivan Habunek
e318581dd1
Don't break if poll doesn't have an expiry date
2022-11-12 07:55:25 +01:00
Ivan Habunek
24cfa48dea
Change how toot is entered in editor
...
This approach allows posting lines which start with a #.
2022-11-12 07:29:08 +01:00
Lars Kellogg-Stedman
5c2f9dcf7c
Add a suffix to temporary files when composing toot in an editor
...
This enable suffix-based configuration in your editor when editing toots.
Closes #219
2022-11-11 15:08:25 +01:00
K
89585b6761
Use v2 endpoint for account search
2022-11-09 16:46:24 +01:00
Josh Soref
67bea207cd
Spelling fixes ( #215 )
...
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2022-11-09 14:24:48 +01:00
Andy Loven
3315a87463
Local time in toot timeline
2022-11-08 07:11:26 +01:00
Evan Smith
8b274eeaa1
Normalise usernames when searching
2022-11-08 07:10:49 +01:00
Ivan Habunek
dad08d5b40
Prepare release 0.28.0
2021-08-28 21:19:43 +02:00
Sandra Snan
9e046b6d86
Add --content-type option to toot post
2021-08-28 21:08:44 +02:00
Ivan Habunek
a3eb5dca24
Allow piping the password to login_cli
...
This is useful for testing where entering a password manually is not
possible.
2021-08-28 20:36:10 +02:00
Stacy Harper
6115cea43e
Prevent toot timeline to break when piped to extenal programs
...
Toot timeline try to ask the user to continue in the next page. This
doesn't works if the command is piped to any other software.
We stop the query in the first loop when not in a tty context. The
command should be called with the expected item count in this case.
2021-08-28 20:14:30 +02:00
ansuz
ec097886d8
Support adding description to media
2021-08-28 18:47:07 +02:00
Ivan Habunek
7e0da50603
Add option for scheduling tweets
2021-08-28 17:39:31 +02:00
alex wennerberg
0b6d4a9e87
Add mentions-only parameter to notifications command
2021-07-29 10:08:58 +02:00
Sandra Snan
d884379f2e
Allow string status and list ids
...
Favourites and reblogs also use this id and it's sometimes strings.
2020-09-29 10:06:18 +02:00
Ivan Habunek
62d7855fc0
Remove curses app, replaced by tui
2020-09-29 10:04:57 +02:00
Sandra Snan
103bc43c26
Reply to non-int, and also longer posts, Pleroma style
2020-09-01 16:11:12 +02:00
Ivan Habunek
957eec6f40
Bump version, add to changelog
2020-06-15 21:08:39 +02:00
Ivan Habunek
ad272f521b
Fix timeline generator to respect --instance option
...
Access the anon public & tag timelines in this case. This makes it
possible to see those timelines without being logged in.
2020-06-15 21:08:02 +02:00
Eyal Sawady
bf168be87d
Fix crash on empty timeline
2020-05-20 08:26:09 +02:00
Ivan Habunek
3829a57909
Add --reverse option to notifications
...
fixes #151
2020-05-11 13:51:07 +02:00
Denis Laxalde
3efa330d69
Display a message in footer upon [P]in action
...
And clear the message after 5s.
2020-05-11 13:21:00 +02:00
Denis Laxalde
4d1fa837a1
Let <Esc> move back to "home" timeline
...
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.
2020-05-11 13:21:00 +02:00
Denis Laxalde
69f110b474
Make [P]in action toggle save of hashtag timeline
...
If currently viewed timeline is saved, [P] unsaves it.
2020-05-11 13:20:59 +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
949b5552ca
Sort keys when saving JSON config
...
This helps keeping changes minimal when rewritting from the program.
2020-05-11 13:20:08 +02:00
Denis Laxalde
9d3d38552e
Display saved timelines in "goto" menu
...
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.
2020-05-11 13:20:07 +02:00
Ivan Habunek
3b5769acc0
Use authorized get to fetch public and tag timelines
...
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
2020-05-11 12:59:50 +02:00
Ivan Habunek
ad96143ee0
Censor authorization header value in logs
2020-05-11 12:46:27 +02:00
Ivan Habunek
bc96cf7eea
Bump version, add changelog
2020-04-15 14:28:17 +02:00
Ivan Habunek
8b9ca7e243
Don't show links window if no links are found
2020-04-15 14:12:30 +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
Ivan Habunek
5fc46d0cfc
Fix datetime parsing on python 3.5
...
datetime.astimezone supports native datetimes only since python 3.6
fixes #162
2020-04-15 14:01:23 +02:00
Finn O'leary
a6e76e0bcb
Fix VISIBILITY_OPTIONS
...
Reorder Visibility Options to be from "most visible" to "least visible",
and swap the definitions of "private" and "unlisted" to match the actual
visibility that results from those actions.
2020-01-26 10:19:24 +01:00
Ivan Habunek
a958573d8d
Bump version, changelog
2020-01-23 13:24:49 +01: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
1b2a9c4198
Bump version, changelog
2020-01-21 09:38:17 +01:00
Ivan Habunek
6d18fd55a1
Quote hahtags before including them in an URL
...
Fixes searching by hashtag which include the #.
issue #134
2020-01-21 09:04:03 +01:00
Ivan Habunek
60efc13338
Implement character count indicator when composing
...
Attempts to load max char count from the server on init.
issue #121
2020-01-03 09:15:11 +01:00
Ivan Habunek
0fed933123
Fix typo
2020-01-02 10:34:00 +01:00
Ivan Habunek
b6749fb0f1
Require auth for toot tui
2020-01-02 10:21:58 +01:00
Ivan Habunek
d595cc5140
Don't use fstrings to keep support with python<3.7
...
fixes #131
2019-09-23 16:51:04 +02:00
Ivan Habunek
cf78cd20ac
Upgrade to v2 search endpoint
2019-09-22 22:08:04 +02: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
Ivan Habunek
bc6e43376a
Bump version, add changelog
2019-09-18 21:57:55 +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
Ivan Habunek
5343319333
Improve config dir location
...
On Windows store config in roaming appdata.
2019-09-08 15:06:35 +02:00
Ivan Habunek
130ef9a608
Remove legacy configuration file handling
2019-09-08 14:36:37 +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
367ced2eef
Don't use ANSI color codes when not desired
...
Which is when not supported by terminal or when not in a tty.
2019-09-06 15:03:47 +02:00
Ivan Habunek
1d3ff87ffa
TUI: Implement deleting own status messages
2019-09-04 16:16:16 +02:00
Ivan Habunek
7309e5bb53
Bump version
2019-09-04 08:39:18 +02:00
Ivan Habunek
e310482cb6
Fix date parsing bug
...
issue #114
2019-09-04 08:36:12 +02:00
Ivan Habunek
70faf47c91
Bump version
2019-09-03 16:31:47 +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
85ceb8b11f
Update docs to replace curses with tui
2019-09-03 15:40:47 +02:00
Ivan Habunek
98b783836a
Mark toot curses as deprecated
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
Viktor Villainov
616483d78a
Remove double process_response function call
...
since it's called in anon_post already
2019-09-03 09:04:32 +02:00
Ivan Habunek
6f8cd86417
Fix compatibility with py<3.6
2019-08-29 12:46:00 +02:00
Ivan Habunek
73ba70eb83
Create config file with 0600 permissions
...
It contains secrets and should not be readable by others.
fixes #109
2019-08-27 13:20:22 +02:00
Ivan Habunek
d21cad892c
Implement composing tweets using an editor
...
fixes #90
2019-08-22 17:37:24 +02:00
Ivan Habunek
840b2fd476
Set the user agent string to all requests
...
Fixes issue with accessing instances using Cloudfare DDOS protection.
issue #106
2019-08-07 22:58:30 +02:00
Ivan Habunek
e108f370e1
Bump version
2019-08-01 13:25:45 +02:00
Ivan Habunek
a771ca3aa7
Enable attaching multiple media files
...
fixes #67
2019-08-01 12:56:21 +02:00
Ivan Habunek
a7e4f9d888
Add --language option to post command
...
Used to override language detection.
2019-07-30 16:13:29 +02:00
Ivan Habunek
d13fa8685b
Merge pull request #101 from Skehmatics/fix-resize
...
Fix various resize issues
2019-04-25 14:58:08 +02:00
Derek Schmidt
cb3885b20b
Fix #100
...
Using self.panel.hide() without calling
curses.panel.update_panels() before next refresh can really mess
stuff up. As far as I can tell, this was the real cause of #100 .
This changes that call to the Modal's hide method instead, which
will keep this sort of issue from coming up again (hopefully)
2019-04-25 14:46:01 +02:00
Derek Schmidt
5c8f3b5978
Fix crash on window open
...
Missed a call when changing refresh to refresh_text
2019-04-24 21:32:28 -07:00
Derek Schmidt
b9e9eea295
Redaw footer and header after panels
...
Fix left panel overlaping the footer on full_redraws
2019-04-24 16:57:55 -07:00
Derek Schmidt
24421fcb53
Fix resize when modals are visible
...
Use a callback function to allow items farther up in the stack
to have their own resize logic. This also requires a slight
change to the main TimelineApp to stay DRY
2019-04-24 16:57:52 -07:00
Ivan Habunek
aff0c2281f
Improve keystroke handling
2019-04-24 14:05:28 +02:00