Commit Graph

558 Commits

Author SHA1 Message Date
Ivan Habunek fa4e4e6357
Add spoiler text and sensitive options to post
issue #63
2018-06-07 10:06:43 +02:00
Ivan Habunek 9f23ba4d55
Simplify mocking in tests 2018-06-07 10:05:14 +02:00
Ivan Habunek 7a38c5704d
Add testing to Makefile 2018-06-07 10:05:14 +02:00
Ivan Habunek cf213590ed
Merge pull request #62 from mekanix/freebsd-install
Fix FreeBSD install
2018-05-07 07:39:20 +02:00
Goran Mekić b10190f3da
Fix FreeBSD install 2018-05-06 00:43:25 +02:00
Ivan Habunek 22109031c3
Merge pull request #58 from 0mp/freebsd
Add installation instructions for FreeBSD
2018-04-19 14:39:33 +02:00
Ivan Habunek 5176af78fe
Merge pull request #57 from 0mp/master
Fix XDG_CONFIG_HOME tests
2018-04-19 14:39:21 +02:00
Mateusz Piotrowski 207fa87893 Add installation instructions for FreeBSD 2018-04-18 13:10:46 +02:00
Mateusz Piotrowski beeb7914a8 Fix XDG_CONFIG_HOME tests
According to the Python documentation[1]:

> Calls to unsetenv() don’t update os.environ, so it is actually
> preferable to delete items of os.environ.

It means that os.unsetenv is not enough to remove an entry from
os.environ. This is why the following test was failing:

    os.unsetenv('XDG_CONFIG_HOME')
    assert fn() == os.path.expanduser('~/.config/toot/config.json')

os.unsetenv did not influence the output of the subsequent call to
os.getenv() in get_config_file_path(). As a result the original value
was returned instead of the fallback value of '~/.config'.

This bug was discovered during porting toot to FreeBSD as the FreeBSD
Ports framework passes XDG_CONFIG_HOME to make's environment.

[1]: https://docs.python.org/3.6/library/os.html#os.unsetenv
2018-04-17 21:09:26 +02:00
Ivan Habunek c6b1d91370
Improve rendering of list view
Fixes appearence when unicode wraps due to wide characters.

Not a real fix, but looks nicer.
2018-01-22 10:18:48 +01:00
Ivan Habunek 760a80442c
Add help modal window 2018-01-22 10:07:18 +01:00
Ivan Habunek 2ecc6a28c6
Normalize unicode 2018-01-21 16:39:40 +01:00
Ivan Habunek cb1f7b4e61
Highlight hashtags 2018-01-21 16:39:16 +01:00
Ivan Habunek 3d44eeebba
More colors 2018-01-21 14:30:05 +01:00
Ivan Habunek 4314751610
Localize text wrapping 2018-01-20 13:43:21 +01:00
Ivan Habunek fba3b78ff6
Respect sensitive content, require keypress to show
fixes #42
2018-01-20 12:44:22 +01:00
Ivan Habunek 18e28531fd
Bump version 2018-01-15 23:18:13 +01:00
Ivan Habunek 05a06acf8e
Create config folder if it does not exist
fixes #40
2018-01-15 23:14:20 +01:00
Ivan Habunek ddd4326f7e
Add toot.ui package to setup.py
fixes #41
2018-01-15 22:59:07 +01:00
Ivan Habunek 27df352519
Bump version 2018-01-15 13:36:40 +01:00
Ivan Habunek db4e1d59f3
Add __version__ to init file 2018-01-15 12:19:37 +01:00
Ivan Habunek d3d69509cb
Merge pull request #39 from ihabunek/curses-resize
Improvements to the curses app
2018-01-14 15:49:41 +01:00
Ivan Habunek d8fd8d0d56
Wrap URLs if needed 2018-01-14 15:46:31 +01:00
Ivan Habunek e829ce2714
Don't draw out of bounds 2018-01-14 15:46:31 +01:00
Ivan Habunek 5463e86d5d
Don't draw empty line when account has no name 2018-01-14 15:46:31 +01:00
Ivan Habunek 53cd9442f8
Fix list window refresh 2018-01-14 15:46:30 +01:00
Ivan Habunek e204722425
Extract status list window 2018-01-14 15:46:30 +01:00
Ivan Habunek 554618db4b
Extract header and footer windows 2018-01-14 15:46:30 +01:00
Ivan Habunek dc3b17c69b
Extract StatusDetailWindow 2018-01-14 15:46:30 +01:00
Ivan Habunek 022e437784
Fix status url parsing
Use reblog url if status url not present.
2018-01-14 15:46:30 +01:00
Ivan Habunek e421d24c80
Move curses app into toot.ui module 2018-01-14 15:46:29 +01:00
Ivan Habunek 6149c9beda
Show public or home timeline in curses 2018-01-14 15:46:29 +01:00
Ivan Habunek 521c329db9
Hacky way to support up/down arrows
They actually return 3 chars instead of 1, not sure why, but the third
one resolves to "A" for up and "B" for down, so good enough for now.

fixes #30
2018-01-14 15:46:29 +01:00
Ivan Habunek a2d59cdab4
Scroll status list when bottom is reached 2018-01-14 15:46:29 +01:00
Ivan Habunek 923ac57811
Fetch next statuses when going below last 2018-01-14 15:46:29 +01:00
Ivan Habunek d789d21171
Curses: nicer Colors lookup 2018-01-14 15:46:28 +01:00
Ivan Habunek 19888ea2f3
Curses: nicer status bar 2018-01-14 15:46:28 +01:00
Ivan Habunek 0ef5a9e41e
Dynamically size the status list window
This makes toot more usable on narrow screens. Still requires 60
columns minimum.

fixes #26
2018-01-14 15:46:28 +01:00
Ivan Habunek b92049ff1d
Redraw curses app on window resize
fixes #25
2018-01-14 15:46:28 +01:00
Ivan Habunek b444b06116
Update changelog 2018-01-14 15:40:57 +01:00
Ivan Habunek 508b4ff7ea
Enable logging to a file 2018-01-14 15:34:41 +01:00
Ivan Habunek 455e531194
Respect XDG_CONFIG_HOME env variable
to locate configuration home directory.

fixes #12
2018-01-14 15:29:34 +01:00
Ivan Habunek 536328f56b
More robust parsing of legacy config 2018-01-14 13:04:04 +01:00
Ivan Habunek f976e7c818
Merge pull request #36 from ihabunek/new-config
Reimplement configuration to allow multiple logins
2018-01-13 23:09:57 +01:00
Ivan Habunek a52fdf129b
Merge pull request #37 from matthiasbeyer/add-readme-install-nix
Add notes how to install with the nix pkg manager
2018-01-02 20:38:56 +01:00
Matthias Beyer e14c05365b Add notes how to install with the nix pkg manager 2018-01-02 20:22:42 +01:00
Ivan Habunek 6a3c877270
Reimplement configuration to allow multiple logins
The configuration is now stored in a single json encoded file instead of
separate files.
2018-01-02 12:24:32 +01:00
Ivan Habunek e28417d088
Bump version 2018-01-02 10:53:09 +01:00
Ivan Habunek 647a896ab5
Don't delete .egg-info on clean 2017-12-31 15:42:18 +01:00
Ivan Habunek 062bd864eb
Fix tests 2017-12-30 18:04:38 +01:00