mirror of
https://github.com/laurent22/joplin.git
synced 2024-12-24 10:27:10 +02:00
Desktop, Mobile: Immediately sort notes after toggling a checkbox
This commit is contained in:
parent
bfc31127af
commit
5820f63ea6
@ -208,6 +208,7 @@ const NoteList = (props: Props) => {
|
|||||||
isSelected={props.selectedNoteIds.includes(note.id)}
|
isSelected={props.selectedNoteIds.includes(note.id)}
|
||||||
isWatched={props.watchedNoteFiles.includes(note.id)}
|
isWatched={props.watchedNoteFiles.includes(note.id)}
|
||||||
listRenderer={listRenderer}
|
listRenderer={listRenderer}
|
||||||
|
dispatch={props.dispatch}
|
||||||
/>,
|
/>,
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
@ -9,6 +9,7 @@ import { OnInputChange } from './utils/types';
|
|||||||
import Note from '@joplin/lib/models/Note';
|
import Note from '@joplin/lib/models/Note';
|
||||||
import { NoteEntity } from '@joplin/lib/services/database/types';
|
import { NoteEntity } from '@joplin/lib/services/database/types';
|
||||||
import useRenderedNote from './utils/useRenderedNote';
|
import useRenderedNote from './utils/useRenderedNote';
|
||||||
|
import { Dispatch } from 'redux';
|
||||||
|
|
||||||
interface NoteItemProps {
|
interface NoteItemProps {
|
||||||
dragIndex: number;
|
dragIndex: number;
|
||||||
@ -28,6 +29,7 @@ interface NoteItemProps {
|
|||||||
isSelected: boolean;
|
isSelected: boolean;
|
||||||
isWatched: boolean;
|
isWatched: boolean;
|
||||||
listRenderer: ListRenderer;
|
listRenderer: ListRenderer;
|
||||||
|
dispatch: Dispatch;
|
||||||
}
|
}
|
||||||
|
|
||||||
const NoteListItem = (props: NoteItemProps, ref: LegacyRef<HTMLDivElement>) => {
|
const NoteListItem = (props: NoteItemProps, ref: LegacyRef<HTMLDivElement>) => {
|
||||||
@ -52,10 +54,12 @@ const NoteListItem = (props: NoteItemProps, ref: LegacyRef<HTMLDivElement>) => {
|
|||||||
id: changeEvent.noteId,
|
id: changeEvent.noteId,
|
||||||
todo_completed: changeEvent.value ? Date.now() : 0,
|
todo_completed: changeEvent.value ? Date.now() : 0,
|
||||||
}, { userSideValidation: true });
|
}, { userSideValidation: true });
|
||||||
|
|
||||||
|
props.dispatch({ type: 'NOTE_SORT' });
|
||||||
} else {
|
} else {
|
||||||
if (props.onChange) await props.onChange(changeEvent);
|
if (props.onChange) await props.onChange(changeEvent);
|
||||||
}
|
}
|
||||||
}, [props.onChange, noteId]);
|
}, [props.onChange, noteId, props.dispatch]);
|
||||||
|
|
||||||
const rootElement = useRootElement(elementId);
|
const rootElement = useRootElement(elementId);
|
||||||
|
|
||||||
|
@ -75,6 +75,8 @@ class NoteItemComponent extends Component {
|
|||||||
todo_completed: checked ? time.unixMs() : 0,
|
todo_completed: checked ? time.unixMs() : 0,
|
||||||
};
|
};
|
||||||
await Note.save(newNote);
|
await Note.save(newNote);
|
||||||
|
|
||||||
|
this.props.dispatch({ type: 'NOTE_SORT' });
|
||||||
}
|
}
|
||||||
|
|
||||||
onPress() {
|
onPress() {
|
||||||
|
Loading…
Reference in New Issue
Block a user