Simplify folder name editing

This commit is contained in:
the-djmaze 2023-02-21 14:26:16 +01:00
parent 938c209869
commit 81d521c562
3 changed files with 10 additions and 10 deletions

View file

@ -465,6 +465,14 @@ export class FolderModel extends AbstractModel {
}); });
} }
edit() {
this.canBeEdited() && this.editing(true);
}
unedit() {
this.editing(false);
}
/** /**
* For url safe '/#/mailbox/...' path * For url safe '/#/mailbox/...' path
*/ */

View file

@ -52,8 +52,6 @@ export class UserSettingsFolders /*extends AbstractViewSettings*/ {
this.folderForDeletion = folderForDeletion; this.folderForDeletion = folderForDeletion;
this.folderForEdit = ko.observable(null).extend({ toggleSubscribeProperty: [this, 'editing'] });
SettingsUserStore.hideUnsubscribed.subscribe(value => Remote.saveSetting('HideUnsubscribed', value)); SettingsUserStore.hideUnsubscribed.subscribe(value => Remote.saveSetting('HideUnsubscribed', value));
SettingsUserStore.unhideKolabFolders.subscribe(value => Remote.saveSetting('UnhideKolabFolders', value)); SettingsUserStore.unhideKolabFolders.subscribe(value => Remote.saveSetting('UnhideKolabFolders', value));
} }
@ -89,15 +87,9 @@ export class UserSettingsFolders /*extends AbstractViewSettings*/ {
}); });
} }
// this.folderForEdit(null);
folder.editing(false); folder.editing(false);
} }
folderEditOnEsc(folder) {
// this.folderForEdit(null);
folder?.editing(false);
}
onShow() { onShow() {
FolderUserStore.folderListError(''); FolderUserStore.folderListError('');
} }

View file

@ -1,11 +1,11 @@
<tr data-bind="css: { 'selectable': selectable, 'system': isSystemFolder }"> <tr data-bind="css: { 'selectable': selectable, 'system': isSystemFolder }">
<td data-bind="css: 'deep-' + deep"> <td data-bind="css: 'deep-' + deep">
<span class="folder-name" data-bind="text: name, visible: !editing(), css: { 'can-be-edited': canBeEdited }, <span class="folder-name" data-bind="text: name, visible: !editing(), css: { 'can-be-edited': canBeEdited },
click: function (oFolder) { oFolder.canBeEdited() && $root.folderForEdit(oFolder); }, click: edit,
tooltipErrorTip: errorMsg"></span> tooltipErrorTip: errorMsg"></span>
<input type="text" <input type="text"
autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false"
data-bind="value: nameForEdit, visible: editing, hasfocus: editing, onEnter: function () { $root.folderEditOnEnter($data); }, onEsc: function () { $root.folderEditOnEsc($data); }"> data-bind="value: nameForEdit, visible: editing, hasfocus: editing, onEnter: function () { $root.folderEditOnEnter($data); }, onEsc: unedit">
&nbsp; &nbsp;
<span class="folder-system-name" data-bind="text: manageFolderSystemName, visible: isSystemFolder"></span> <span class="folder-system-name" data-bind="text: manageFolderSystemName, visible: isSystemFolder"></span>
</td> </td>