1
0
Fork 0

Let's try this out

Sometimes the logic gets confusing
This commit is contained in:
Lim Chee Aun 2023-11-02 20:13:00 +08:00
parent 7f327e5980
commit 89f82707d6

View file

@ -54,8 +54,6 @@ function Notifications({ columnMode }) {
const notificationsIterator = useRef(); const notificationsIterator = useRef();
async function fetchNotifications(firstLoad) { async function fetchNotifications(firstLoad) {
states.notificationsShowNew = false; // Hide "new notifications" button early
if (firstLoad || !notificationsIterator.current) { if (firstLoad || !notificationsIterator.current) {
// Reset iterator // Reset iterator
notificationsIterator.current = masto.v1.notifications.list({ notificationsIterator.current = masto.v1.notifications.list({
@ -176,6 +174,8 @@ function Notifications({ columnMode }) {
// } // }
// }, [nearReachEnd, showMore]); // }, [nearReachEnd, showMore]);
const [showNew, setShowNew] = useState(false);
const loadUpdates = useCallback( const loadUpdates = useCallback(
({ disableIdleCheck = false } = {}) => { ({ disableIdleCheck = false } = {}) => {
console.log('✨ Load updates', { console.log('✨ Load updates', {
@ -195,6 +195,8 @@ function Notifications({ columnMode }) {
uiState !== 'loading' uiState !== 'loading'
) { ) {
loadNotifications(true); loadNotifications(true);
} else {
setShowNew(snapStates.notificationsShowNew);
} }
}, },
[snapStates.notificationsShowNew, snapStates.settings.autoRefresh, uiState], [snapStates.notificationsShowNew, snapStates.settings.autoRefresh, uiState],
@ -291,7 +293,7 @@ function Notifications({ columnMode }) {
{/* <Loader hidden={uiState !== 'loading'} /> */} {/* <Loader hidden={uiState !== 'loading'} /> */}
</div> </div>
</div> </div>
{snapStates.notificationsShowNew && uiState !== 'loading' && ( {showNew && uiState !== 'loading' && (
<button <button
class="updates-button shiny-pill" class="updates-button shiny-pill"
type="button" type="button"