Commit Graph

568 Commits

Author SHA1 Message Date
Andrew Dolgov 3188e863b3 handle_rpc_json: fix netalert button never appearing on JSON parse error 2017-02-09 23:04:34 +03:00
Andrew Dolgov 829d478f1b add some protection against opener attacks if external site is opened via window.open() 2017-02-08 15:07:05 +03:00
Andrew Dolgov 23c8ef7e36 parse_counters: skip subscribed-feeds id properly 2017-02-04 14:50:50 +03:00
Andrew Dolgov 6358d70d5e reset local counter cache when feed count changes 2017-02-04 11:57:31 +03:00
Andrew Dolgov 24c7e4132d subscribe dialog: do not report errors via alert()
fetch_file_contents: reset all globals on start, return error message body when not using curl
subscribe_to_feed: report if cloudflare is in the error message
2017-01-28 12:45:49 +03:00
Andrew Dolgov ad326dbf78 unpackVisibleHeadlines: do not iterate over all RROWs all the time 2017-01-22 20:57:16 +03:00
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 2017-01-22 20:20:35 +03:00
Andrew Dolgov 3bc1b53772 initHeadlinesMenu: remove unneeded output 2017-01-22 19:58:17 +03:00
Andrew Dolgov 974c6eb523 attach headline menu objects to correct DOM nodes in combined mode 2017-01-22 19:57:16 +03:00
Andrew Dolgov d5f74019ac parse_counters: cache previous reply and skip processing of unchanged rows (better implementation) 2017-01-22 19:38:07 +03:00
Andrew Dolgov a4e04c498f parse_counters: cache previous reply and skip processing of unchanged rows 2017-01-22 19:29:14 +03:00
Andrew Dolgov e1f7b05b52 reuse menu objects while appending headline rows 2017-01-22 19:20:23 +03:00
Andrew Dolgov b1a80693b1 collapse_feedlist: also toggle splitter 2017-01-22 17:46:11 +03:00
Anders Kaseorg 88946d331a Replace all setTimeout strings with functions
This fixes a cross-site scripting vulnerability.

Signed-off-by: Anders Kaseorg <andersk@mit.edu>
2017-01-21 16:52:27 -05:00
Andrew Dolgov b7d63a58db fix loading indicator position/size for tree leafs 2017-01-21 22:30:20 +03:00
Andrew Dolgov 7fbc10c236 force-enable persist for feedTree 2017-01-21 22:21:46 +03:00
Andrew Dolgov e2e2479984 Merge branch 'dojo-1.12.1'
Conflicts:
	js/prefs.js
2017-01-21 21:59:17 +03:00
Andrew Dolgov ab235fc5f1 prefs: add updateSelectedPrompt shim called by toggleSelectedRow() 2017-01-21 21:49:10 +03:00
Andrew Dolgov 1c4f5e8390 add dependency on dojo/_base/html 2017-01-21 21:47:44 +03:00
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>
2017-01-21 13:22:14 -05:00
Anders Kaseorg 9f539be3c2 Replace deprecated dojo.place with domConstruct.place
Signed-off-by: Anders Kaseorg <andersk@mit.edu>
2017-01-21 13:22:13 -05:00
Andrew Dolgov 6293d3717c add toggle_sidebar plugin, remove obsolete toggle button
add PluginHost::HOOK_MAIN_TOOLBAR_BUTTON
2017-01-07 15:29:17 +03:00
Andrew Dolgov f04b12d8e7 category: swap context menu items 2016-11-22 09:11:13 +03:00
Andrew Dolgov acfee412a3 feed tree: add category context menu entry to un/collapse it 2016-11-11 14:14:31 +03:00
Andrew Dolgov d39a2f8005 switch modules to new dojo definition format 2016-08-10 13:40:24 +03:00
Andrew Dolgov 546b419f52 catch plugin JS errors 2016-08-10 12:23:35 +03:00
Andrew Dolgov fd539f2800 prefs: use dojo asynchronously 2016-08-10 12:22:30 +03:00
Andrew Dolgov 0dbc20a8d4 load dijit properly, duh 2016-08-10 11:49:05 +03:00
Andrew Dolgov ee5170424e dojo: main UI: load stuff asynchronously 2016-08-10 10:01:05 +03:00
Andrew Dolgov 64c24ecb59 add hotkey for toggling VFEED_GROUP_BY_FEED preference 2016-07-26 15:55:00 +03:00
Andrew Dolgov b6b5554db4 normalize some html5 custom attributes 2016-03-22 23:43:32 +03:00
Andrew Dolgov 2d052e42b5 getLoadedArticleIds: consider visible rows only
catchupFeedInGroup: hide articles when catching up, with caveats
2016-03-22 23:22:28 +03:00
Andrew Dolgov 6be118fda1 showArticleInHeadlines: remove unused code 2016-03-22 13:41:55 +03:00
Andrew Dolgov c4e211046e updateFloatingMenu: performance improvements 2016-03-22 13:38:20 +03:00
Andrew Dolgov d7cc5e6cdd fix previous 2016-03-22 12:51:15 +03:00
Andrew Dolgov 63c7446a79 headlines scroll handler: add a rate limit 2016-03-22 12:43:18 +03:00
Andrew Dolgov 7c0d68f207 remove dismiss* functions 2016-03-22 10:28:34 +03:00
Andrew Dolgov a51bc3dfa5 catchupfeedingroup: do not remove elements 2016-03-22 10:23:57 +03:00
Andrew Dolgov 6056d164fa cleanup dismissArticle functions 2016-03-22 10:11:11 +03:00
Andrew Dolgov 11514d576f catchupFeedInGroup: dismiss elements on catchup 2016-03-22 09:42:00 +03:00
Andrew Dolgov dfaf806a7a catchupFeedInGroup: send catchup request even if there are no unread articles in the buffer for this feed 2016-03-21 21:43:54 +03:00
Andrew Dolgov 701de97ebb improvements for catchupFeedInGroup() 2016-03-21 21:40:40 +03:00
Kostiantyn Moroz 2757c49387 Make "open in new tab" hotkey handler support mac "cmd+click" way (non-expanded mode) 2016-02-07 18:48:24 +00:00
Andrew Dolgov 0b41bd3414 add some hacks to hopefully mitigate headlines memory leaks 2016-01-11 01:11:26 +03:00
Andrew Dolgov 9842b51c71 getfeedname: fix for non-numeric feeds (tags) 2015-12-30 15:11:39 +03:00
Andrew Dolgov 89bea945ce filters: add to previous on JS side 2015-12-03 10:25:30 +03:00
Andrew Dolgov d38cd41253 loadMoreHeadlines: use correct offsets for starred vfeed in adaptive mode 2015-10-27 15:36:51 +03:00
Andrew Dolgov a71e571b97 headlines_callback2: force prevent duplicate row ids 2015-10-07 18:14:21 +03:00
Andrew Dolgov f48f292d2b tweak filter preview layout a bit; allow previewing matched articles in a popup 2015-09-11 13:05:08 +03:00
Andrew Dolgov 3857536f70 fix testing in create filter dialog, woops 2015-09-09 22:13:43 +03:00
Andrew Dolgov 261226a3a5 mostly implement async filter test dialog 2015-09-09 22:09:03 +03:00
Andrew Dolgov a007c18dff wip: filter async testing 2015-09-09 16:56:04 +03:00
Andrew Dolgov a0dbc45acd add edit feed to feed header context menu in grouped mode 2015-09-07 12:49:49 +03:00
Andrew Dolgov b717c65e4e update previous 2015-09-03 16:54:09 +03:00
Andrew Dolgov 791877c39d fix catching up for grouped feeds 2015-09-03 16:41:04 +03:00
Andrew Dolgov e17079dcef make disabled filter rules easier to discern
show if filter set match_any_rule on the overview
2015-08-17 12:33:07 +03:00
Andrew Dolgov dcbe36b2a2 fix some remaining old-style viewfeed() calls 2015-08-13 09:51:39 +03:00
Andrew Dolgov 9109e171ee feedtree: don't hide feeds with errors 2015-08-12 21:47:40 +03:00
Andrew Dolgov bf9cc9ad95 combine user edit & user details 2015-08-12 20:19:38 +03:00
Andrew Dolgov f9c1f8b0d4 pref-feeds: check for inactive feeds asynchronously 2015-08-12 16:19:42 +03:00
Andrew Dolgov 6b0a17ad8b viewfeed: switch to hash-based arguments
viewfeed: remove (obsolete) method parameter
add shortcut to debug viewfeed() query
2015-08-12 14:09:46 +03:00
Andrew Dolgov b87744534a add plugin-based filter actions (see example plugin in attic)
bump schema
2015-08-11 23:28:42 +03:00
Andrew Dolgov 6810a1de42 use dijit form widget for attachments dropdown 2015-08-11 14:53:07 +03:00
Andrew Dolgov 176a489e54 use batch-based catching up in cdmExpandArticle() to reduce server load 2015-08-11 12:25:11 +03:00
Andrew Dolgov eaec06f950 prevent cyclical scrolling in headlines if next offset requested by infscroll is zero
a bunch of other related fixes
2015-08-11 12:00:08 +03:00
Andrew Dolgov 95b493d68d partially revert previous because of navigation breakage in expanded mode, durrr 2015-08-11 11:31:50 +03:00
Andrew Dolgov b71add41d5 unfuck catchupbatchedarticles a bit 2015-08-11 10:12:22 +03:00
Andrew Dolgov 8292123ebc assorted fixes for keyboard navigation which hopefully don't break everything else 2015-08-11 10:06:30 +03:00
Andrew Dolgov 231c672c5d fix previous 2015-08-11 09:12:57 +03:00
Andrew Dolgov 837443630f infscroll: preload articles a bit earlier 2015-08-11 09:05:04 +03:00
Andrew Dolgov d8e8e24e34 pass DOMNodes instead of escaped html data to JS article rendered hooks (i think this makes much more sense) 2015-07-31 13:42:05 +03:00
Andrew Dolgov 8691b32abf disable headline appear animation 2015-07-29 18:11:23 +03:00
Andrew Dolgov d46af5a5cf headlines scroll handler: make preloading less aggressive 2015-07-29 16:57:24 +03:00
Andrew Dolgov e7a66d1230 (experimental) disable infscroll requests while marking auto catched up articles as read 2015-07-14 12:50:27 +03:00
Andrew Dolgov 33c4bd8968 fix error feed (i.e. when requested feed no longer exists) not display properly 2015-07-13 22:04:21 +03:00
Andrew Dolgov f17069960c roll back separate headline transport 2015-07-13 22:01:29 +03:00
Andrew Dolgov 57c521df91 maybe speedup headline adding a bit, maybe not 2015-07-13 18:38:39 +03:00
Andrew Dolgov 9ef1985f1b viewfeed.js: cleanup the code a bit 2015-07-13 01:28:02 +03:00
Andrew Dolgov ac4c1383ae bring cdmFeedTitle style in line with the rest of the UI
send headline rows as separate JSON objects
2015-07-13 01:19:52 +03:00
Andrew Dolgov 48fefe2f6b fixes for first_id stuff 2015-07-12 18:08:02 +03:00
Andrew Dolgov 39d488a256 viewfeed: set hsp status when scrolling to the very end 2015-07-12 13:37:24 +03:00
Andrew Dolgov 15ae8cd084 js: remove current_top_id global 2015-07-12 13:30:00 +03:00
Andrew Dolgov 3444020100 report top id changed in headlines buffer 2015-07-12 12:01:34 +03:00
Andrew Dolgov f5a0fb8b64 queryFeedHeadlines: move to array-based arguments, optionally check if first element changed when paginating 2015-07-12 01:29:36 +03:00
Andrew Dolgov 9090b874ab simplify search, remove search_mode as useless
remove dialog to select by tags, simplify browsing by tag query
2015-07-07 15:59:32 +03:00
Andrew Dolgov 5a45821ec9 prevent event propagation when clicking on CDM article footer 2015-06-18 16:00:03 +03:00
Andrew Dolgov a72cd54ce1 bayes: properly reset score when going good -> ugly
article: add helper to refresh article score pic, properly set scorepic title
2015-06-17 22:04:32 +03:00
Andrew Dolgov 86b05f8661 better feed debugger ui for f D 2015-06-12 13:06:36 +03:00
Andrew Dolgov 415a3b50c9 fix some minor typos and stuff 2015-06-07 18:41:18 +03:00
Andrew Dolgov 669fc881f3 add error notification if trying to toggle widescreen in cdm 2015-03-06 15:51:54 +03:00
Andrew Dolgov 40f147df79 feedtree: do not hide special category for reals if configured as such 2015-03-06 14:42:05 +03:00
Andrew Dolgov 119ba03bd4 minor fixes for previous 2015-02-03 14:42:20 +03:00
Andrew Dolgov efcc5d365d add placeholder update checker using git changesets 2015-02-03 14:39:15 +03:00
Andrew Dolgov ed775e4e8d remove obsolete code related to version checking and tarball updater plugin 2015-01-31 15:08:55 +03:00
Anders Kaseorg 5c145bde7a Make the floating title transition smoother
Previously the floating title would not appear until the real title
scrolled entirely out of view, which was visually distracting.  Now it
appears at the point when its bottom lines up with the real title’s
bottom.  This isn’t perfect yet due to small differences between the
two titles’ layouts, but it’s much closer.

We now need to use visibility: visible|hidden instead of display:
block|none to show and hide the floating title, in order to be able to
retrieve its height while it’s hidden.  It’s important to use that
height because occasionally line wrapping differences make the
floating title shorter than the real title, and we don’t want the real
title to poke out from underneath.

Also fix scrollToRowId to offset by the 4 pixel top margin (like
cdmScrollToArticleId already does), so that it goes back to a point
when the floating title was hidden; and set the right margin on the
floating title so that it’s the same width as the real title and
doesn’t overlap the scroll bar.

Signed-off-by: Anders Kaseorg <andersk@mit.edu>
2015-01-30 21:58:44 -05:00
Andrew Dolgov 0d41fd76d3 notify fixes 2014-11-09 20:31:29 +03:00
Andrew Dolgov d9c93ebfdb tweak notifications; use css animations for notifications 2014-11-02 20:58:46 +03:00
Andrew Dolgov 98cbae8dfa hotkey actions: toggle_expand, collapse_article: check if element exists
before acting on it (closes #815)
2014-10-26 10:25:19 +04:00
Andrew Dolgov 38bc9dad22 mail plugin: use dijit.form.ComboBox to allow random email input instead of only predefined ones 2014-08-26 18:11:32 +04:00
Andrew Dolgov 89018afa13 assign stored content-insert height/width in switchPanelMode(); reset stored sizes on widescreen switch 2014-08-11 15:39:14 +04:00