You've already forked joplin
mirror of
https://github.com/laurent22/joplin.git
synced 2025-09-16 08:56:40 +02:00
Handle advanced options
This commit is contained in:
@@ -62,10 +62,13 @@ class Application {
|
||||
let output = await this.loadItems(type, pattern, options);
|
||||
|
||||
if (output.length > 1) {
|
||||
output.sort((a, b) => { return a.user_updated_time < b.user_updated_time ? +1 : -1; });
|
||||
|
||||
let answers = { 0: _('[Cancel]') };
|
||||
for (let i = 0; i < output.length; i++) {
|
||||
answers[i + 1] = output[i].title;
|
||||
}
|
||||
|
||||
let msg = _('More than one item match "%s". Please select one:', pattern);
|
||||
const response = await cliUtils.promptMcq(msg, answers);
|
||||
if (!response) return null;
|
||||
|
@@ -32,7 +32,7 @@ class Command extends BaseCommand {
|
||||
}
|
||||
|
||||
async action(args) {
|
||||
Command.handleAction(args, true);
|
||||
await Command.handleAction(args, true);
|
||||
}
|
||||
|
||||
}
|
||||
|
@@ -19,7 +19,7 @@ class Command extends BaseCommand {
|
||||
}
|
||||
|
||||
async action(args) {
|
||||
CommandDone.handleAction(args, false);
|
||||
await CommandDone.handleAction(args, false);
|
||||
}
|
||||
|
||||
}
|
||||
|
@@ -239,6 +239,7 @@ class ScreenHeaderComponent extends Component {
|
||||
</MenuOption>);
|
||||
}
|
||||
|
||||
if (this.props.showAdvancedOptions) {
|
||||
if (menuOptionComponents.length) {
|
||||
menuOptionComponents.push(<View key={'menuOption_' + key++} style={this.styles().divider}/>);
|
||||
}
|
||||
@@ -252,6 +253,7 @@ class ScreenHeaderComponent extends Component {
|
||||
<MenuOption value={() => this.status_press()} key={'menuOption_' + key++} style={this.styles().contextMenuItem}>
|
||||
<Text style={this.styles().contextMenuItemText}>{_('Status')}</Text>
|
||||
</MenuOption>);
|
||||
}
|
||||
|
||||
if (menuOptionComponents.length) {
|
||||
menuOptionComponents.push(<View key={'menuOption_' + key++} style={this.styles().divider}/>);
|
||||
@@ -316,6 +318,7 @@ const ScreenHeader = connect(
|
||||
historyCanGoBack: state.historyCanGoBack,
|
||||
locale: state.settings.locale,
|
||||
theme: state.settings.theme,
|
||||
showAdvancedOptions: state.settings.showAdvancedOptions,
|
||||
};
|
||||
}
|
||||
)(ScreenHeaderComponent)
|
||||
|
@@ -220,6 +220,8 @@ class NoteScreenComponent extends BaseScreenComponent {
|
||||
});
|
||||
if (isNew) Note.updateGeolocation(note.id);
|
||||
this.refreshNoteMetadata();
|
||||
|
||||
Keyboard.dismiss();
|
||||
}
|
||||
|
||||
async saveOneProperty(name, value) {
|
||||
@@ -385,7 +387,7 @@ class NoteScreenComponent extends BaseScreenComponent {
|
||||
// }
|
||||
|
||||
output.push({ title: isTodo ? _('Convert to regular note') : _('Convert to todo'), onPress: () => { this.toggleIsTodo_onPress(); } });
|
||||
output.push({ title: this.state.showNoteMetadata ? _('Hide metadata') : _('Show metadata'), onPress: () => { this.showMetadata_onPress(); } });
|
||||
if (this.props.showAdvancedOptions) output.push({ title: this.state.showNoteMetadata ? _('Hide metadata') : _('Show metadata'), onPress: () => { this.showMetadata_onPress(); } });
|
||||
output.push({ title: _('View location on map'), onPress: () => { this.showOnMap_onPress(); } });
|
||||
|
||||
return output;
|
||||
@@ -555,6 +557,7 @@ const NoteScreen = connect(
|
||||
itemType: state.selectedItemType,
|
||||
folders: state.folders,
|
||||
theme: state.settings.theme,
|
||||
showAdvancedOptions: state.settings.showAdvancedOptions,
|
||||
};
|
||||
}
|
||||
)(NoteScreenComponent)
|
||||
|
@@ -334,6 +334,7 @@ Setting.metadata_ = {
|
||||
nonCompleted: _('Non-completed ones only'),
|
||||
})},
|
||||
'uncompletedTodosOnTop': { value: true, type: Setting.TYPE_BOOL, public: true, label: () => _('Show uncompleted todos on top of the lists') },
|
||||
'showAdvancedOptions': { value: false, type: Setting.TYPE_BOOL, public: true, appTypes: ['mobile'], label: () => _('Show advanced options') },
|
||||
'trackLocation': { value: true, type: Setting.TYPE_BOOL, public: true, label: () => _('Save location with notes') },
|
||||
'sync.interval': { value: 300, type: Setting.TYPE_INT, isEnum: true, public: true, appTypes: ['mobile'], label: () => _('Synchronisation interval'), options: () => {
|
||||
return {
|
||||
|
Reference in New Issue
Block a user