Commit Graph

91 Commits

Author SHA1 Message Date
Andrew Dolgov 5e77d0062b use intersection observer to unpack visible articles, remove Headlines.unpackVisible() 2020-05-13 07:28:13 +03:00
Andrew Dolgov 7adbc95acc remove floating title, use position: sticky for cdm headers instead 2020-05-13 06:51:46 +03:00
Andrew Dolgov a802649d53 rename cdmScrollToId to cdmMoveToId
prevent smooth scrolling when going directly to an article
2020-05-09 08:16:12 +03:00
Andrew Dolgov e17c7e2fb4 Headlines.renderAgain: scroll instantly to active article when going back to combined mode on the fly 2020-04-17 07:58:34 +03:00
Andrew Dolgov 303f8fb329 properly escape quotes when rendering article data to html attributes via template strings 2020-01-18 10:31:00 +03:00
Andrew Dolgov 7e2fd9bdce Headlines.move: fix move to previous article if scrollTop returns a fractional value for current item 2020-01-08 08:51:40 +03:00
Andrew Dolgov f83836ade9 updateCurrentUnread: don't crash if counter element is not available 2019-12-17 14:06:50 +03:00
Andrew Dolgov 9c0235ab66 show current unread counter on headlines toolbar if sidebar is hidden 2019-12-12 07:37:28 +03:00
Andrew Dolgov 985e11b754 re-enable updates of floating title on scroll, duh 2019-12-10 16:45:59 +03:00
Andrew Dolgov 0e4f67bf2b with previous change, we don't actually need to automatically track active articles now at all in combined mode. 2019-12-10 13:03:49 +03:00
Andrew Dolgov 3993198aa7 when moving next or previous and currently active article is entirely invisible, start moving from first visible one 2019-12-10 12:55:24 +03:00
Andrew Dolgov 7d0bbe9962 only track active article on scroll if auto catchup is enabled 2019-12-10 12:34:49 +03:00
Andrew Dolgov 5b4eb8d7b9 remove unnecessary "== 1" when checking for init params
unsubscribeFeed: check for undefined title correctly
2019-12-10 09:10:45 +03:00
Andrew Dolgov 560346f9d1 Article.cdmScrollToId: disable smooth scrolling on repeated events 2019-12-10 08:51:45 +03:00
Andrew Dolgov dad3d1c7a9 combined mode n/p behavior changes:
1. instead of jumping/scrolling sometimes, always scroll by a constant viewport offset unless moving to next/prev article directly
2. when going up and current article is partially above the viewport, move to its top first instead of directly to a previous one
3. instead of previous marking active logic, on scroll in combined mode track first (partially or otherwise) visible article as active
2019-12-10 07:47:09 +03:00
Andrew Dolgov 44ef447c0f fix fatal error in previous because of event not being passed via Headlines.move()
scrollbypages, etc: make event optional anyway
2019-12-09 23:23:54 +03:00
Andrew Dolgov e7dd634183 exp: auto-disable smooth scrolling for repeat hotkey events 2019-12-09 22:42:43 +03:00
Andrew Dolgov 7a68e4a6f7 pgup/pgdn; increase scroll distance to almost entire viewport height (from 90%) 2019-12-09 12:22:43 +03:00
Andrew Dolgov e1ef122355 force-disable headlines smooth scrolling when switching feeds
enable smooth scrolling for article frame
2019-12-05 21:48:16 +03:00
Andrew Dolgov 1902a7dcb0 pgup/pgdown hotkey normalization:
- pgup/pgdown without modifier scroll headline buffer
- shift+pgup/pgdown work similarly to shift+up/down but operating on pages
2019-12-05 17:00:17 +03:00
Andrew Dolgov d172abb037 scroll handler: also invoke lazy load if last article in buffer is currently active 2019-07-30 16:13:47 +03:00
Andrew Dolgov c35a618b00 lazy load (infinite scrolling) changes:
1. invoke Headlines.loadMore() if last article row is close to becoming visible instead of relying on headlines-spacer offset to viewport

2. allow one final last lazy load request if incomplete buffer was received to permit some flexibility with unread counters possible changing while request was generated / serving remainder of articles
2019-07-30 15:54:47 +03:00
Andrew Dolgov 900cdbbb31 Headlines.click: open original article (and mark as read) on alt click on title 2019-03-07 15:40:02 +03:00
Andrew Dolgov ae9ef7fe84 Headlines.click: fix another small issue with expanded mode (2) 2019-03-07 12:16:50 +03:00
Andrew Dolgov 0b8f3909fe Headlines.click: fix another small issue with expanded mode 2019-03-07 12:16:09 +03:00
Andrew Dolgov 84cf95fe8f Headlines.click: open original article when it makes sense to do so 2019-03-07 11:52:10 +03:00
Andrew Dolgov cf6f867feb getRange: handle start == stop 2019-03-07 10:38:50 +03:00
Andrew Dolgov d876cca22a tweak Headlines.click: ctrl-click toggles selection, shift-click selects range 2019-03-07 10:35:48 +03:00
Andrew Dolgov 70c53257d9 on_catchup_show_next: remove auto-trigger on headlines scroll 2019-02-21 14:22:33 +03:00
Andrew Dolgov 848bb6579c floatingTitle: show collapse button if in expandable mode 2019-02-14 16:20:10 +03:00
Andrew Dolgov 1124c3f00a label display: fix unneeded nested container in headlines, increase overall minimalism, fix label element typo (div1) 2019-02-01 12:42:27 +03:00
Andrew Dolgov 8b26b8629f headlines-frame: set is-vfeed attribute if result is virtual feed 2019-01-16 21:33:59 +03:00
Andrew Dolgov c607b7836e onLoaded: clear this.headlines on first page load 2019-01-03 12:36:57 +03:00
Andrew Dolgov f44c6d01b0 fix previous always disabling infscroll 2019-01-03 01:00:09 +03:00
Andrew Dolgov c66db9bde8 headlines onloaded: when appending, check for duplicate IDs 2019-01-02 16:29:08 +03:00
Andrew Dolgov 8393096947 selectionTogglePublished: fix typo which caused it to mark articles instead 2018-12-18 11:49:26 +03:00
Andrew Dolgov dee210e546 headlines onLoaded: make sure a few more things respect append instead of offset == 0 2018-12-18 07:51:00 +03:00
Andrew Dolgov 8effabd075 append headline buffer if requested, don't just use offset 2018-12-16 21:15:08 +03:00
Andrew Dolgov c3b8b6a2a1 also prevent multiple requests 2018-12-16 12:43:53 +03:00
Andrew Dolgov 54ce930b8d delay counters request on promise completion a bit 2018-12-16 12:41:27 +03:00
Jordan Galby 47b4a262cf fix missing curly brace
Fix the error:
```
SyntaxError: missing } after property list
```
2018-12-13 15:10:32 +01:00
Andrew Dolgov eda4ac2a2b add fallback colors for headline feed titles based on feed name if favicon color is not available 2018-12-12 07:57:37 +03:00
Andrew Dolgov 721f9ad866 requestIdleCallback: remove hard dependency for now 2018-12-11 17:58:10 +03:00
Andrew Dolgov f3c04fc5d8 sync modified scores via mutation observer 2018-12-11 10:30:32 +03:00
Andrew Dolgov 25ca144bb7 score: get correct classes for rows/score icons on the client 2018-12-11 10:00:54 +03:00
Andrew Dolgov fd6f3e7f07 syncModified: request counters once after all xhr promises resolve 2018-12-11 08:48:24 +03:00
Andrew Dolgov 36f3299ddf use window.requestIdleCallback to sync observed modifications 2018-12-11 08:25:22 +03:00
Andrew Dolgov ad5a43bf66 sync article selected status via mutation observer
remove all rchk-related hacks
2018-12-10 21:19:33 +03:00
Andrew Dolgov d9bf0f17c6 sync unread state to server via mutation observer 2018-12-10 20:50:44 +03:00
Andrew Dolgov e5efde26ac sync marked and published states to server via mutation observer 2018-12-10 20:18:45 +03:00