Commit Graph

74 Commits (607ecab31effb4caa403d28ca94fb680c54b352d)

Author SHA1 Message Date
Andrew Dolgov 8080c525fd - backend: require CSRF token to be passed via POST
- do not leak CSRF token via GET request in feed debugger
- rework Article/redirect to use POST
4 years ago
nanaya 8d8affdc45 Store FeedTree data in localStorage
Patching internal functions of dijit.Tree as they don't provide option on where to store the data.

It stores to cookies by default but the data can get quite big for hundreds of feeds and exceeds cookies size limit.

Not to mention it'll cause the cookie to be sent during any request with nothing handling it server side and just wasting bandwidth.

This patch will also migrate current data in cookie to local storage accordingly.
4 years ago
Andrew Dolgov 697418f863 more eslint fixes 4 years ago
Andrew Dolgov d01ad09800 eslint-related fixes; move a few things from global context to App 4 years ago
Andrew Dolgov 88027d7a39 fix various minor issues reported by eslint 4 years ago
Andrew Dolgov 788ea95fbd feed tree: do not mark Labels as Special 4 years ago
Andrew Dolgov 282b445a43 feed tree: don't set Special class on Labels category 4 years ago
Andrew Dolgov 2d3fdd6836 hide read feeds / hide read shows special: use CSS instead of JS-based hiding 4 years ago
Andrew Dolgov 60288f02e8 1. feedtree: show counters for marked articles if view-mode == marked
2. hide/show relevant counter nodes using css
3. cleanup some counter-related code
4. compile default css into light theme to prevent cache-related issues
4 years ago
Andrew Dolgov 6f625aa8aa apply Has_Marked css class to feed tree elements with marked articles 4 years ago
Andrew Dolgov d09aad7c80 fix read categories not being hidden when hide read feeds is enabled 5 years ago
Andrew Dolgov 4b74491b8b feed tree: set placeholder feed unread value to -1 5 years ago
Michael Kuhn 4a2a90c980 Fix focus issues with hotkeys
Since making use of keypress in addition to keydown, hotkeys did not
work in certain scenarios, including clicking on the feed tree expanders
or empty spaces of the toolbar.

This issue is caused by dijit.Tree and dijit.Toolbar implementing the
_KeyNavMixin, which explicitly stops propagation of keypress events.

This change contains two main fixes plus a smaller hotfix:
1. It overrides _onContainerKeydown and _onContainerKeypress for
   fox.FeedTree (which inherits from dijit.Tree).
2. It adds fox.Toolbar, which overrides _onContainerKeydown,
   _onContainerKeypress and focus. This fixes hotkeys being swallowed
   and the first focusable child receiving focus when clicking on an
   empty space of the toolbar.
3. It adds the same handling of keydown and keypress to the prefs hotkey
   handler as is done in the main hotkey handler.
5 years ago
Andrew Dolgov cc2ac3a86c FeedTree: add feed debugger to per-feed context menu 5 years ago
Andrew Dolgov dbab03bd4c Feeds.catchupAllFeeds() should be Feeds.catchupAll() 5 years ago
Andrew Dolgov c7c9c5fb0a feedTree: amend previous to check that nodes are actually there (2) 5 years ago
Andrew Dolgov 42e0c7a420 feedTree: amend previous to check that nodes are actually there 5 years ago
Andrew Dolgov 3827e5b944 selectFeed: scroll feed tree to selected row 5 years ago
Gilles Grandou df05794032 show errors in feedtree's tooltips 6 years ago
Andrew Dolgov 0a41c1a6e1 update label rendering (and editor) 6 years ago
Andrew Dolgov cad6d1d7fd various icon updates; use new icons in feed tree 6 years ago
Andrew Dolgov 71fc6d45bd refactor error reporting to AppBase; keep exception_error() for now as a shim 6 years ago
Andrew Dolgov ac8361e6f6 add AppBase as a shared ancestor for main and prefs app objects
remove event.observe stuff from startup, unneeded
6 years ago
Andrew Dolgov 1e2d4410d3 move some more shared stuff to CommonDialogs, Filters, and Utils 6 years ago
Andrew Dolgov d86ddbc635 further objectification of JS code 6 years ago
Andrew Dolgov 049a37aa0e WIP reshuffling of JS global context into separate logical objects 6 years ago
Andrew Dolgov 0267212454 move to let/const syntax in custom dojo modules 6 years ago
Andrew Dolgov a3e2f1a9c3 define custom dojo modules with define() instead of require(), update startup module dependencies 6 years ago
Andrew Dolgov f6269d1bc4 add special class for feeds with disabled updates 6 years ago
Andrew Dolgov 7590f03961 feedtree.selectFeed: focus headlines-frame after selection 7 years ago
Andrew Dolgov fa1be041c2 feedtree, selectFeed: focus selected node 7 years ago
Andrew Dolgov 1bfe1d7b31 simplify error handling
* less convoluted exception dialogs
* use window.onerror for the majority of exception catching/reporting
* remove most of now useless try/catch blocks
* report stacktrace instead of manually specified error locations
7 years ago
Andrew Dolgov 70c5b2bfcc feed tree: only run animation for appearing unread counters to prevent clashes with aux counter updating and animations ending up in wrong state 8 years ago
Andrew Dolgov b7d63a58db fix loading indicator position/size for tree leafs 8 years ago
Anders Kaseorg 6887a0f573 lib: Upgrade Dojo and Dijit from 1.8.3 to 1.12.1
The itemNode and expandoNode elements have changed from img to
span (https://bugs.dojotoolkit.org/ticket/16699), so we now put our
tree icons inside them rather than replacing them.

Signed-off-by: Anders Kaseorg <andersk@mit.edu>
8 years ago
Anders Kaseorg 9f539be3c2 Replace deprecated dojo.place with domConstruct.place
Signed-off-by: Anders Kaseorg <andersk@mit.edu>
8 years ago
Andrew Dolgov f04b12d8e7 category: swap context menu items 8 years ago
Andrew Dolgov acfee412a3 feed tree: add category context menu entry to un/collapse it 8 years ago
Andrew Dolgov d39a2f8005 switch modules to new dojo definition format 8 years ago
Andrew Dolgov 9109e171ee feedtree: don't hide feeds with errors 9 years ago
Andrew Dolgov 40f147df79 feedtree: do not hide special category for reals if configured as such 9 years ago
André Glüpker d922b09c43 Skip nested Feed when calling getNextUnreadFeed()
This function is only called when using "Mark all as read".
So every time, this function gets called right now, all nested
categories get marked as read as well, so we don't want to jump to them.
Instead we want to the next category with same or higher tier.
10 years ago
Andrew Dolgov e79b401e97 getPreviousFeed: wrap to last feed to be consistent with getNextFeed 10 years ago
Andrew Dolgov c594eca0de implement additional counter mode for virtual feeds when there's 0 unread articles 11 years ago
Andrew Dolgov 077f221337 hide read categories when feedtree category is first expanded 11 years ago
Andrew Dolgov f5d3c77a8f experimentally align counters to the right 11 years ago
Andrew Dolgov fbb4155bae counterNode: use appear effect 11 years ago
Andrew Dolgov 5973c74c34 fix notify display on chrome, add some css tweaks 11 years ago
Andrew Dolgov 8d4b5b466a fix counters not being updated 11 years ago
Andrew Dolgov 69970d5b88 add tooltip 11 years ago