diff options
author | Takeshi Umeda <noel.yoshiba@gmail.com> | 2020-10-01 11:17:46 +0900 |
---|---|---|
committer | Thibaut Girka <thib@sitedethib.com> | 2020-10-21 19:33:20 +0200 |
commit | 8071613dd7fcf6214e59929be884eaf4b9704782 (patch) | |
tree | bf534420f945661167f30559a929e76cf9c662c1 | |
parent | c3d82027cf8805ba91e1447960c5e933ecc4b2a7 (diff) |
[Glitch] Fix mark as read in notifications to be saved immediately
Port bec8b12bb52a57b54b66899b2650a5611d9bd561 to glitch-soc Signed-off-by: Thibaut Girka <thib@sitedethib.com>
-rw-r--r-- | app/javascript/flavours/glitch/actions/markers.js | 8 | ||||
-rw-r--r-- | app/javascript/flavours/glitch/features/notifications/index.js | 2 | ||||
-rw-r--r-- | app/javascript/flavours/glitch/features/ui/index.js | 2 |
3 files changed, 8 insertions, 4 deletions
diff --git a/app/javascript/flavours/glitch/actions/markers.js b/app/javascript/flavours/glitch/actions/markers.js index 80bcada6e..c0e7a93af 100644 --- a/app/javascript/flavours/glitch/actions/markers.js +++ b/app/javascript/flavours/glitch/actions/markers.js @@ -100,8 +100,12 @@ export function submitMarkersSuccess({ home, notifications }) { }; }; -export function submitMarkers() { - return (dispatch, getState) => debouncedSubmitMarkers(dispatch, getState); +export function submitMarkers(params = {}) { + const result = (dispatch, getState) => debouncedSubmitMarkers(dispatch, getState); + if (params.immediate === true) { + debouncedSubmitMarkers.flush(); + } + return result; }; export const fetchMarkers = () => (dispatch, getState) => { diff --git a/app/javascript/flavours/glitch/features/notifications/index.js b/app/javascript/flavours/glitch/features/notifications/index.js index 475968caa..18db7e0d2 100644 --- a/app/javascript/flavours/glitch/features/notifications/index.js +++ b/app/javascript/flavours/glitch/features/notifications/index.js @@ -71,7 +71,7 @@ const mapDispatchToProps = dispatch => ({ }, onMarkAsRead() { dispatch(markNotificationsAsRead()); - dispatch(submitMarkers()); + dispatch(submitMarkers({ immediate: true })); }, onMount() { dispatch(mountNotifications()); diff --git a/app/javascript/flavours/glitch/features/ui/index.js b/app/javascript/flavours/glitch/features/ui/index.js index a399fc2b3..fa4068fa3 100644 --- a/app/javascript/flavours/glitch/features/ui/index.js +++ b/app/javascript/flavours/glitch/features/ui/index.js @@ -359,7 +359,7 @@ class UI extends React.Component { const visibility = !document[this.visibilityHiddenProp]; this.props.dispatch(notificationsSetVisibility(visibility)); if (visibility) { - this.props.dispatch(submitMarkers()); + this.props.dispatch(submitMarkers({ immediate: true })); } } |