Andrew Dolgov
0a6ff72e70
Revert "fix HOOK_ARTICLE_RENDERED_CDM never being called"
...
This reverts commit e3a522cdc1
.
4 years ago
Andrew Dolgov
e3da11bf6d
Revert "somewhat experimental: disable article packing/unpacking, render content immediately"
...
This reverts commit ab53591957
.
4 years ago
Andrew Dolgov
e3a522cdc1
fix HOOK_ARTICLE_RENDERED_CDM never being called
4 years ago
Andrew Dolgov
ab53591957
somewhat experimental: disable article packing/unpacking, render content immediately
4 years ago
Andrew Dolgov
f693ebab21
fix default password nag dialog, load via xhr
4 years ago
Andrew Dolgov
77faa5d523
editFeed: only try to reload feed tree in preferences if its actually there
4 years ago
Andrew Dolgov
3f9390c45f
comments link: load in new tab
4 years ago
Andrew Dolgov
42b5564d1e
editarticletags: load dialog via XHR
4 years ago
Andrew Dolgov
0a142912d3
backend handler: require CSRF, remove obsolete code
4 years ago
Andrew Dolgov
154417d80b
public/logout: require valid CSRF token
4 years ago
Andrew Dolgov
cbcb10a272
Feeds: load quickaddfeed and search dialogs via XHR w/ CSRF protection
4 years ago
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
Andrew Dolgov
aeaafefa07
don't pass csrf token as a GET parameter to Article
4 years ago
Andrew Dolgov
e670ac2ee5
require CSRF token for Article/redirect
4 years ago
Andrew Dolgov
7e50c6c4b5
- enable CSRF support earlier
...
- remove rpc/sanityCheck from CSRF-excluded calls
4 years ago
Andrew Dolgov
b4cb67e77f
remove csrf token from rpc method sanityCheck
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
5 years ago
Andrew Dolgov
d01ad09800
eslint-related fixes; move a few things from global context to App
5 years ago
Andrew Dolgov
88027d7a39
fix various minor issues reported by eslint
5 years ago
Andrew Dolgov
9d28b3ac50
unify prefs/main App objects, remove fake classes, use single static App object instead
5 years ago
Andrew Dolgov
30ed5d7c3c
same, but for preferences
5 years ago
Andrew Dolgov
e37f8cfa78
don't use declare() for static objects with no inheritance because apparently it's not actually needed by AMD
5 years ago
Andrew Dolgov
676cdf6ee4
move isCombinedMode to AppBase so we wouldn't crash in preferences
5 years ago
Andrew Dolgov
b39e615683
add Headlines.default_force_previous, default_force_to_top
5 years ago
Andrew Dolgov
19893d33e3
only bind up/down in 3 panel mode
5 years ago
Andrew Dolgov
409ba0db2d
- RIP smooth scrolling and associated hacks
...
- attempt to make Headlines.move() / Article.cdmMoveToId() behave a bit more intuitively
5 years ago
Andrew Dolgov
d63329baa1
Headlines.move: add params.force_previous to always move to previous article in CDM
5 years ago
Andrew Dolgov
2deb9c555e
Headlines.move: use requestAnimationFrame in CDM :(
5 years ago
Andrew Dolgov
8dc6b48ebd
Headlines.move: when going back to top of active article, use a smarter (?) offset calculation
5 years ago
Andrew Dolgov
25c8467753
rename Headlines.correctHeadlinesOffset() to scrollToArticleId()
...
invoke it in Article.view() instead of all over the place
5 years ago
Andrew Dolgov
05a84ab778
Headlines.move: maybe glitch less when moving back to top, etc
5 years ago
Andrew Dolgov
9ae9302b6b
implement keyboard-related changes discussed in https://community.tt-rss.org/t/changing-the-amount-of-scroll-by-arrow-key/3452/7
5 years ago
Andrew Dolgov
a1ffc11619
only enable unpack observer in expanded mode
5 years ago
Andrew Dolgov
5e77d0062b
use intersection observer to unpack visible articles, remove Headlines.unpackVisible()
5 years ago
Andrew Dolgov
7adbc95acc
remove floating title, use position: sticky for cdm headers instead
5 years ago
Andrew Dolgov
4a00d41915
Article.cdmMoveToId: don't crash if params is not given
5 years ago
Andrew Dolgov
a802649d53
rename cdmScrollToId to cdmMoveToId
...
prevent smooth scrolling when going directly to an article
5 years ago
Andrew Dolgov
2558fcbe21
add hotkey "\" to cancel current search
5 years ago
ltGuillaume
19064864bf
Allow setting Insert (45) and Delete (46) as hotkeys
...
These are not reported via keypress either, so handle them via keydown.
5 years ago
Andrew Dolgov
0d467973dc
Article.pack: dispose of unpacked content properly
5 years ago
Andrew Dolgov
e17c7e2fb4
Headlines.renderAgain: scroll instantly to active article when going back to combined mode on the fly
5 years ago
Andrew Dolgov
b3e4f0188e
in combined non-expanded mode, pack headline rows as they are unfocused to save RAM
5 years ago
Andrew Dolgov
afaac95d8d
if comment URL is not specified but comment count is non-zero, show comments prompt leading to the article
5 years ago
Andrew Dolgov
a65749a512
source validationtextarea in main UI
5 years ago
Andrew Dolgov
f24ece85a6
add validationtextarea control, use it for filter match editor
5 years ago
Andrew Dolgov
2fefb4fd87
getTestResults: don't try to use previously removed variable
5 years ago
Andrew Dolgov
4f62f5f3f1
filter edit dialog: load rule editor via XHR
5 years ago
Andrew Dolgov
340bb7f392
fix typo
5 years ago
Andrew Dolgov
8645f36c5b
filter test dialog: pass contents via xhr POST
5 years ago
Andrew Dolgov
4e74da590e
af_readability: allow get full text button to work as a toggle; in cdm, scroll to article after embedding
5 years ago
Andrew Dolgov
07b27b375f
update toggle_embed_original hotkey to invoke readability embed instead of removed embed_original plugin
5 years ago
Andrew Dolgov
71ff485fbf
af_readability: add article button to embed content of a specific article
5 years ago
Andrew Dolgov
788ea95fbd
feed tree: do not mark Labels as Special
5 years ago
Andrew Dolgov
4ab3854aed
don't generate default.css, replace with themes/light.css as a default root CSS file
5 years ago
Andrew Dolgov
282b445a43
feed tree: don't set Special class on Labels category
5 years ago
Andrew Dolgov
2d3fdd6836
hide read feeds / hide read shows special: use CSS instead of JS-based hiding
5 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
5 years ago
Andrew Dolgov
076c5382fa
login form: add workarounds for chrome password manager
5 years ago
Andrew Dolgov
776fe4768b
default password warning: fix close button, don't crash if dialog is recreated (on feed tree reload etc)
5 years ago
Andrew Dolgov
4a4d7a44fa
onViewModeChanged: set view mode value as a custom body attribute
5 years ago
Andrew Dolgov
6f625aa8aa
apply Has_Marked css class to feed tree elements with marked articles
5 years ago
Andrew Dolgov
a6d314b753
support dark mode for login form
5 years ago
Andrew Dolgov
aa56bcaf44
support night mode when using share by URL
5 years ago
Andrew Dolgov
303f8fb329
properly escape quotes when rendering article data to html attributes via template strings
5 years ago
Andrew Dolgov
7e2fd9bdce
Headlines.move: fix move to previous article if scrollTop returns a fractional value for current item
5 years ago
Andrew Dolgov
f83836ade9
updateCurrentUnread: don't crash if counter element is not available
5 years ago
Andrew Dolgov
9f70bb010a
fix blank screen on load if custom theme is enabled
5 years ago
Andrew Dolgov
07f4878d59
workaround for a race condition between dojo.parse() and tt-rss loading proper day/night css on startup because of firefox async CSS loader
5 years ago
Andrew Dolgov
0d6add5d7f
show alert() if fatal exception happens while initializing base app objects and app.error is not available
5 years ago
JustAMacUser
b4dd03ba2a
Wrap AppBase.setupNightModeDetection() in try/catch because Safari doesn't support matchMedia change events.
5 years ago
Andrew Dolgov
0237dee980
implement automatic night mode detection using MQL
...
add separate light.css to force light theme
remove manual night mode toggle and related code
5 years ago
Andrew Dolgov
9c0235ab66
show current unread counter on headlines toolbar if sidebar is hidden
5 years ago
Andrew Dolgov
0a10832491
- update descriptions of changed hotkeys
...
- bind noscroll variants of move article hotkeys to n/p by default
- update N/P (i.e. scroll article content) hotkeys to scroll by fraction of viewport height instead of hardcoded pixel distance
- minor fixes w/ checking for undefined
5 years ago
Andrew Dolgov
985e11b754
re-enable updates of floating title on scroll, duh
5 years ago
Andrew Dolgov
0e4f67bf2b
with previous change, we don't actually need to automatically track active articles now at all in combined mode.
5 years ago
Andrew Dolgov
3993198aa7
when moving next or previous and currently active article is entirely invisible, start moving from first visible one
5 years ago
Andrew Dolgov
7d0bbe9962
only track active article on scroll if auto catchup is enabled
5 years ago
Andrew Dolgov
5b4eb8d7b9
remove unnecessary "== 1" when checking for init params
...
unsubscribeFeed: check for undefined title correctly
5 years ago
Andrew Dolgov
a40f22d8aa
Article.cdmScrollToId: disable smooth scrolling in collapsed combined mode
5 years ago
Andrew Dolgov
560346f9d1
Article.cdmScrollToId: disable smooth scrolling on repeated events
5 years ago
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
5 years ago
Andrew Dolgov
44ef447c0f
fix fatal error in previous because of event not being passed via Headlines.move()
...
scrollbypages, etc: make event optional anyway
5 years ago
Andrew Dolgov
e7dd634183
exp: auto-disable smooth scrolling for repeat hotkey events
5 years ago
Andrew Dolgov
7a68e4a6f7
pgup/pgdn; increase scroll distance to almost entire viewport height (from 90%)
5 years ago
Andrew Dolgov
ac95ab4a65
user css dialog: allow saving and applying CSS without closing the dialog
5 years ago
Andrew Dolgov
e1ef122355
force-disable headlines smooth scrolling when switching feeds
...
enable smooth scrolling for article frame
5 years ago
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
5 years ago
Andrew Dolgov
6913158b82
add hotkeys to scroll headlines/articles (whichever is active) by one page
5 years ago
Andrew Dolgov
249130e58d
implement app password checking / management UI
5 years ago
Andrew Dolgov
781fe3d636
setScore, selectionSetScore: check for numerical values properly
5 years ago
Andrew Dolgov
d172abb037
scroll handler: also invoke lazy load if last article in buffer is currently active
5 years ago
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
5 years ago
Andrew Dolgov
e8523733b0
filter dialog: add inline regexp checker
5 years ago
Andrew Dolgov
86a014f23b
add placeholder Filters.filterDlgCheckRegExp
5 years ago
Andrew Dolgov
079ef15b1b
previous: remove unused debugging line
6 years ago
Andrew Dolgov
905f038610
search dialog: display active query if searching already
6 years ago
fox
e981d52bda
Merge branch 'master' of ltGuillaume/ttrss into master
6 years ago
Andrew Dolgov
3bf40f3ba8
_active_feed_id: set to undefined on startup to prevent unneeded Feed.open() if reloadCurrent is called because of a non-default main toolbar value
6 years ago
Andrew Dolgov
d09aad7c80
fix read categories not being hidden when hide read feeds is enabled
6 years ago
ltGuillaume
44bfbc9529
Allow to unregister plugin hooks
6 years ago
Andrew Dolgov
2ce31fd0bf
FeedStoreModel.getFeedUnread: return -1 when value is unset
6 years ago
Andrew Dolgov
9368f1a07f
restore feed from URL hash after feedlist init
6 years ago
Andrew Dolgov
6479c07324
js: add PluginHost.HOOK_COUNTERS_PROCESSED
6 years ago
Andrew Dolgov
2411cc8d1c
js: add PluginHost.HOOK_COUNTERS_RECEIVED
6 years ago
Andrew Dolgov
4b74491b8b
feed tree: set placeholder feed unread value to -1
6 years ago
Michael Kuhn
e38fcd6dea
Fix button focus issues
...
This change introduces derived classes for ComboButton, DropDownButton
and Select that make sure that buttons do not remain focused after their
menus are closed. This allows using hotkeys after closing them.
6 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.
6 years ago
ltGuillaume
4c72d3b4fc
Add keyboard shortcut 'g r': Go to Recently read
6 years ago
Andrew Dolgov
cc2ac3a86c
FeedTree: add feed debugger to per-feed context menu
6 years ago
Andrew Dolgov
b1bb7c6001
Merge branch 'master' of git.fakecake.org:tt-rss
6 years ago
Andrew Dolgov
019f4578bc
fix feed icon upload not working, rework form to use FormData/ajax
6 years ago
Michael Kuhn
e74f7bde22
Refactor hotkeys to use keypress instead of keydown
...
keydown returns the "raw" key in event.which. Depending on the keyboard
layout, this may not be what is wanted. For example, on a German
keyboard, Shift+7 has to be pressed to get a slash. However, event.which
will be 55, which corresponds to "7". In the keypress event, however,
event.which will be 47, which corresponds to "/".
Sadly, several important keys (such as escape and the arrow keys) do not
trigger a keypress event. Therefore, they have to be handled using a
keydown event.
This change refactors the hotkey support to make use of keypress events
whenever possible. This will make hotkeys work regardless of the user's
keyboard layout. Escape and arrow keys are still handled via keydown
events.
There should be only one change in behavior: I could not make Ctrl+/
work and therefore rebound the help dialog to "?".
6 years ago
Andrew Dolgov
a34509c8ae
Merge branch 'master' of git.fakecake.org:tt-rss
6 years ago
Andrew Dolgov
19f162dbe3
css: insensitive -> text-muted
6 years ago
Andrew Dolgov
900cdbbb31
Headlines.click: open original article (and mark as read) on alt click on title
6 years ago
Andrew Dolgov
ae9ef7fe84
Headlines.click: fix another small issue with expanded mode (2)
6 years ago
Andrew Dolgov
0b8f3909fe
Headlines.click: fix another small issue with expanded mode
6 years ago
Andrew Dolgov
84cf95fe8f
Headlines.click: open original article when it makes sense to do so
6 years ago
Andrew Dolgov
cf6f867feb
getRange: handle start == stop
6 years ago
Andrew Dolgov
d876cca22a
tweak Headlines.click: ctrl-click toggles selection, shift-click selects range
6 years ago
Andrew Dolgov
ef6d2b8a4e
update notifications to make them more visible
...
cleanup some minor stuff in pref-users
6 years ago
Andrew Dolgov
70c53257d9
on_catchup_show_next: remove auto-trigger on headlines scroll
6 years ago
Andrew Dolgov
4db13b8a17
simplify preference layout, remove some unnecessary css classes
6 years ago
Andrew Dolgov
6e14e575b3
use separate id for default password warning dialog
6 years ago
Andrew Dolgov
848bb6579c
floatingTitle: show collapse button if in expandable mode
6 years ago
Andrew Dolgov
1124c3f00a
label display: fix unneeded nested container in headlines, increase overall minimalism, fix label element typo (div1)
6 years ago
Andrew Dolgov
dbab03bd4c
Feeds.catchupAllFeeds() should be Feeds.catchupAll()
6 years ago
Andrew Dolgov
c7c9c5fb0a
feedTree: amend previous to check that nodes are actually there (2)
6 years ago
Andrew Dolgov
42e0c7a420
feedTree: amend previous to check that nodes are actually there
6 years ago
Andrew Dolgov
3827e5b944
selectFeed: scroll feed tree to selected row
6 years ago
Andrew Dolgov
8b26b8629f
headlines-frame: set is-vfeed attribute if result is virtual feed
6 years ago
Andrew Dolgov
c607b7836e
onLoaded: clear this.headlines on first page load
6 years ago
Andrew Dolgov
f44c6d01b0
fix previous always disabling infscroll
6 years ago
Andrew Dolgov
c66db9bde8
headlines onloaded: when appending, check for duplicate IDs
6 years ago
Andrew Dolgov
51b069a1ee
display filter tree rules as a list
6 years ago
Andrew Dolgov
8393096947
selectionTogglePublished: fix typo which caused it to mark articles instead
6 years ago
Andrew Dolgov
dee210e546
headlines onLoaded: make sure a few more things respect append instead of offset == 0
6 years ago
Andrew Dolgov
8effabd075
append headline buffer if requested, don't just use offset
6 years ago
Andrew Dolgov
957c44d177
rework git update checking to be initiated by frontend, outside of runtime info output
6 years ago
Andrew Dolgov
c3b8b6a2a1
also prevent multiple requests
6 years ago
Andrew Dolgov
54ce930b8d
delay counters request on promise completion a bit
6 years ago
Andrew Dolgov
8c49689fda
filter test results: remove table bloat
6 years ago
Jordan Galby
47b4a262cf
fix missing curly brace
...
Fix the error:
```
SyntaxError: missing } after property list
```
6 years ago
Andrew Dolgov
d3885c5883
App.toggleNightMode: add some fadein/fadeout
6 years ago
Andrew Dolgov
d53cdaf815
requestCounters: remove cooldown
6 years ago
Andrew Dolgov
4e41db7ed3
Article.unpack: add placeholder if data-content is empty
6 years ago
Andrew Dolgov
eda4ac2a2b
add fallback colors for headline feed titles based on feed name if favicon color is not available
6 years ago
Andrew Dolgov
be49b77b14
Revert "use codeflask for user css editor"
...
This reverts commit daa43e0572
.
6 years ago
Andrew Dolgov
721f9ad866
requestIdleCallback: remove hard dependency for now
6 years ago