Commit Graph

222 Commits

Author SHA1 Message Date
Carl Helmertz
15a11c3da9 Unsubscribe from feed through link or "#"
After importing old OPML files, you may discover that many feeds are
obsolete or uninteresting. You list the feeds entries and determine that
you want to unsubscribe. This needs three clicks (edit feed, delete,
confirm) and requires moving the mouse to hit the different targets.

This quickly becomes tiring, if you are up to possibly deleting hundreds
of feeds. One mediation, introduced in this commit, is to add an
unsubscribe link to each feed's entry listing view, and also adding a
keyboard shortcut.

The keyboard shortcut "#" is:
* longer than one keystroke (requires shift)
* hard to type by accident
* used in Google products (thanks for the hint @fguillot)

In an effort to try to reduce the number of accidental feed
unsubscriptions.
2018-10-19 20:05:26 -07:00
Frédéric Guillot
778346b0b0 Simplify feed fetcher
- Add browser package to handle HTTP errors
- Reduce code duplication
2018-10-14 21:43:48 -07:00
Frédéric Guillot
c1fe84521e Fix jshint error introduced in commit d4c1677 2018-10-08 21:09:25 -07:00
Frédéric Guillot
d4c1677e38 Change link state when marking all entries as read 2018-10-08 18:49:15 -07:00
Frédéric Guillot
9dc38a0803 Add missing package descriptions for GoDoc 2018-10-08 17:32:17 -07:00
Frédéric Guillot
11dfcdd3d6 Fix typo in license header 2018-10-08 15:50:15 -07:00
Frédéric Guillot
1f58b37a5e Refactor HTTP response builder 2018-10-08 15:31:58 -07:00
Diego Agulló
98206059fc Set focus on article link when pressing prev/next hotkeys
This enhancement offer the possibility to open articles in the background by using the browser hotkey Ctrl+Return or Cmd+Return.
2018-10-01 20:52:51 -07:00
Frédéric Guillot
9d08139f43 Improve request package and add more unit tests 2018-09-23 21:02:26 -07:00
Frédéric Guillot
b1e8f534ef Simplify locale package usage (refactoring) 2018-09-22 15:04:55 -07:00
Frédéric Guillot
5d75089127 Use disclosure widget <details> for advanced feed options 2018-09-21 23:11:58 -07:00
Frédéric Guillot
beb7a0cfcb Use unique translation IDs instead of English text as key 2018-09-21 22:23:23 -07:00
Patrick
2538eea177 Add the possibility to override default user agent for each feed 2018-09-19 18:19:24 -07:00
Frédéric Guillot
c9f9dd3262 Store client IP address in request context 2018-09-09 15:15:14 -07:00
Adam Vigneaux
07cd7d2135 Add "Mark this page as read" to the bottom
This better matches the most common use case for the "Mark this page as
read" link, which is to click it once you have reached the bottom of the
page. Especially on mobile, it can be annoying to scroll to the top of
the page to click the link.
2018-09-08 18:40:23 -07:00
Frédéric Guillot
eee1f31903 Refactor HTTP context handling 2018-09-03 14:26:40 -07:00
Dave Z
5341bbcbe2 Add toggle status button to entry page 2018-08-28 20:44:34 -07:00
Dave Z
9169fbafb2 Show count of feeds with permanent errors in header menu
Only for feeds that reach `maxParsingError` are counted (so transient errors do not trigger counter).
2018-08-26 16:18:07 -07:00
Frédéric Guillot
551b73acfb Add remove button in feed edit page 2018-08-25 12:21:54 -07:00
dzaikos
4148d8af80 Added remote client IP to login failure error message.
Fixes #205
2018-08-25 02:47:34 -04:00
Frédéric Guillot
dbcc5d8a97 Use canonical imports 2018-08-24 21:56:39 -07:00
Frédéric Guillot
cfc1f3eb69 Avoid browser caching issues when assets changes 2018-07-22 12:24:46 -07:00
Frédéric Guillot
9f6533ece9 Compress JSON, CSS and Javascript responses 2018-07-19 19:27:05 -07:00
Frédéric Guillot
a291d8a38b Improve themes handling
- Store user theme in session
- Logged out users will keep their theme
- Add theme background color to web manifest and meta tag
2018-07-18 22:30:05 -07:00
Frédéric Guillot
c1ab27172c Update application icon with different sizes 2018-07-18 21:30:54 -07:00
Frédéric Guillot
73a6e617bb Add few tweaks to the layout
- Increase truncate length to 35 chars for feed titles
- Add bottom margin for main menu in mobile view
- Add tooltip to feed domain in feeds list
2018-07-17 19:01:28 -07:00
Dave Z
3f31744911 Prevent vertical scrolling on swipe 2018-07-17 18:48:56 -07:00
Frédéric Guillot
6aa02680d8 Add service worker to cache feed icons 2018-07-15 21:51:09 -07:00
Frédéric Guillot
3bdb9251da Use passive event listeners for touch events
Avoid this warning in Chrome console: https://www.chromestatus.com/feature/5745543795965952
2018-07-10 20:41:27 -07:00
Frédéric Guillot
ca30800e6a Pre-generate themes stylesheets at build time 2018-07-07 11:00:39 -07:00
Frédéric Guillot
34a3fe426b Compress HTML responses to Gzip/Deflate if supported by browser 2018-07-06 20:39:28 -07:00
Frédéric Guillot
53deb0b8cd Refactor assets bundler and split Javascript files 2018-07-05 22:18:51 -07:00
Frédéric Guillot
845cf2adba Remove timestamp from generated files 2018-07-05 12:52:29 -07:00
Frédéric Guillot
6d0dc451e4 Add search form 2018-07-04 22:05:19 -07:00
dzaikos
c3628813c6 Keep consistent text size on mobile orientation change
using vendor-specific CSS `*-text-size-adjust`.
2018-07-03 12:51:24 -07:00
Frédéric Guillot
cc1e4f916f Avoid Chrome to autocomplete no-login password fields
Browsers always autocomplete saved passwords even with autocomplete="off".

https://developer.mozilla.org/en-US/docs/Web/Security/Securing_your_site/Turning_off_form_autocompletion
2018-06-30 18:05:51 -07:00
Frédéric Guillot
240f801755 Always mark the entry as read after fetching the pagination in unread mode 2018-06-30 17:35:06 -07:00
Frédéric Guillot
77947282e4 Make sure we always get the pagination in unread mode 2018-06-29 20:29:04 -07:00
dzaikos
0227bb9828 Set opener to null when opening original URL with JavaScript. 2018-06-28 02:13:53 -04:00
Frédéric Guillot
9d8b5421ed Remove unnecessary style 2018-06-26 23:03:46 -07:00
Frédéric Guillot
bddca15b69 Add new fields for feed username/password 2018-06-19 22:58:29 -07:00
Dave Z
be95e87e0e Added Sans-Serif theme. 2018-06-19 00:57:30 -04:00
Frédéric Guillot
c5373ff2bf Rewrite individual entry pagination SQL queries 2018-06-09 13:40:20 -07:00
Dave Z
2bbe21fb89 Prevent items from sticking on touchend. 2018-06-06 20:23:10 -07:00
Dave Z
084642eb0a Extended horizontal overflow to feed and category views. 2018-06-06 20:18:33 -07:00
Frédéric Guillot
3b39f0883c Rewrite RealIP() to avoid returning an empty string 2018-06-01 07:22:31 -07:00
Frédéric Guillot
b270159aae Offer the possibility to set Pocket Consumer Key as environment variable 2018-05-21 19:58:36 -04:00
Pascal Widdershoven
44decae557 Fix unread count in menu not triggering click
By moving unread count into anchor.

Previously, clicking the unread count would not cause the anchor to be
invoked. This was confusing. This change includes the unread count span
in the anchor.
2018-05-21 12:51:43 +02:00
Frédéric Guillot
7f2fd1fdd8 Add Pocket authorization flow in the user interface 2018-05-20 15:29:14 -07:00
Allan Reyes
0f3f5e442f Add Pocket integration 2018-05-20 13:31:56 -07:00
Frédéric Guillot
ff8e0c6b3d Update readme and rebuild CSS 2018-05-19 15:47:46 -07:00
Allan Reyes
b0667e1b78
Hide horizontal overflow on hiding articles; fixes #130 2018-05-19 11:48:54 -07:00
Frédéric Guillot
31da4db14f Do not show save link if no integration is configured 2018-04-29 17:43:40 -07:00
Frédéric Guillot
b166ceaea7 Avoid people to unlink their OAuth2 account without having a local password 2018-04-29 17:04:43 -07:00
Frédéric Guillot
f49b42f70f Use vanilla HTTP handlers (refactoring) 2018-04-29 16:35:04 -07:00
Frédéric Guillot
1eba1730d1 Move HTTP client to its own package 2018-04-28 10:51:07 -07:00
Frédéric Guillot
ddd3af4b85 Do not use shared variable to translate templates 2018-04-27 22:07:46 -07:00
Frédéric Guillot
46d67acf22 Avoid unread counter to be off by one 2018-04-07 14:20:42 -07:00
Frédéric Guillot
609c57332e Show last login and session creation date in current timezone 2018-03-04 17:04:31 -08:00
Nicolas Carlier
34ce114231 Add Nunux Keeper integration 2018-02-25 11:49:08 -08:00
Frédéric Guillot
205aef595b Change color of <q> tags for black theme 2018-02-10 22:35:02 -08:00
Frédéric Guillot
9c42997209 Add support for base URLs with subfolders 2018-02-03 15:33:17 -08:00
Frédéric Guillot
c8138351c9 Keep code base tidy 2018-01-29 20:47:09 -08:00
Mahendra Kalkura
40eb1b10fe Improve unread counter updates 2018-01-25 20:13:38 -08:00
Frédéric Guillot
da5c8c2edb Move environment variables to config package 2018-01-20 16:49:47 -08:00
Frédéric Guillot
bdcc4134fa Store language in session to show the login page translated 2018-01-20 13:25:20 -08:00
Frédéric Guillot
6302c3b219 Add mark as read/unread link on list items 2018-01-20 13:25:05 -08:00
Frédéric Guillot
9652dfa1fe Add more comments (GoDoc) 2018-01-11 19:21:20 -08:00
Frédéric Guillot
19494742ff Add bottom margin 2018-01-05 18:02:43 -08:00
Frédéric Guillot
c57cafbef2 Add link to mark everything as read 2018-01-04 18:11:15 -08:00
Frédéric Guillot
462b4a2642 Remove underline for entry action links 2018-01-03 18:31:33 -08:00
Frédéric Guillot
320d1b0167 Refactor packages to have more idiomatic code base 2018-01-02 22:04:48 -08:00