Skip to content

Commit bab4f0e

Browse files
committed
feat:double click to edit name
1 parent 4ce22cb commit bab4f0e

2 files changed

Lines changed: 24 additions & 4 deletions

File tree

src/app/component/teams-groups-editor/selectable-list.component.html

Lines changed: 13 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -35,30 +35,39 @@ <h2>{{ title }}</h2>
3535
<input
3636
#editInput
3737
[(ngModel)]="editingName"
38+
(click)="$event.stopPropagation()"
3839
(keydown.escape)="cancelEditItem(name)"
3940
(keydown.enter)="saveEditedItem(name)"
4041
(blur)="saveEditedItem(name)" />
4142
</ng-template>
4243
<ng-template #displayItem>
43-
<span>{{ name }}</span>
44+
<span
45+
(dblclick)="$event.stopPropagation(); handleDoubleClick(name)"
46+
style="cursor: text"
47+
title="Double-click to edit {{ name }}"
48+
>{{ name }}</span
49+
>
4450
</ng-template>
4551

4652
<span *ngIf="editMode">
4753
<button
4854
*ngIf="editingOrgName !== name"
4955
mat-icon-button
50-
(click)="startEditItem(name)"
56+
(click)="$event.stopPropagation(); startEditItem(name)"
5157
title="Rename {{ name }}">
5258
<mat-icon class="material-icons-outlined">edit</mat-icon>
5359
</button>
5460
<button
5561
*ngIf="editingOrgName === name"
5662
mat-icon-button
57-
(click)="saveEditedItem(name)"
63+
(click)="$event.stopPropagation(); saveEditedItem(name)"
5864
title="Accept edit for {{ name }}">
5965
<mat-icon class="material-icons-outlined">check</mat-icon>
6066
</button>
61-
<button mat-icon-button (click)="deleteListItem(name)" title="Delete {{ name }}">
67+
<button
68+
mat-icon-button
69+
(click)="$event.stopPropagation(); deleteListItem(name)"
70+
title="Delete {{ name }}">
6271
<mat-icon class="material-icons-outlined">delete</mat-icon>
6372
</button>
6473
</span>

src/app/component/teams-groups-editor/selectable-list.component.ts

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,17 @@ export class SelectableListComponent {
6161
});
6262
}
6363

64+
handleDoubleClick(name: string) {
65+
if (!this.canEdit) {
66+
return;
67+
}
68+
if (!this.editMode) {
69+
this.editMode = true;
70+
this.editModeChange.emit(this.editMode);
71+
}
72+
this.startEditItem(name);
73+
}
74+
6475
cancelEditItem(oldName: string) {
6576
console.log(`${perfNow()}: Cancel editing: ${oldName}`);
6677
this.editingName = '';

0 commit comments

Comments
 (0)