-
{
this.reloadDossiers('set-approved');
diff --git a/apps/red-ui/src/app/modules/shared/directives/long-press.directive.ts b/apps/red-ui/src/app/modules/shared/directives/long-press.directive.ts
new file mode 100644
index 000000000..0f7b5a134
--- /dev/null
+++ b/apps/red-ui/src/app/modules/shared/directives/long-press.directive.ts
@@ -0,0 +1,33 @@
+import { Directive, EventEmitter, HostListener, Output } from '@angular/core';
+
+const LONG_PRESS_TIMEOUT = 500;
+
+export interface LongPressEvent {
+ touchEnd?: boolean;
+}
+
+@Directive({
+ selector: '[redactionLongPress]'
+})
+export class LongPressDirective {
+ private _touchTimeout: any;
+
+ @Output() longPress = new EventEmitter();
+
+ constructor() {}
+
+ @HostListener('window:keydown.control')
+ @HostListener('window:keydown.meta')
+ touchStart() {
+ this._touchTimeout = setTimeout(() => {
+ this.longPress.emit({});
+ }, LONG_PRESS_TIMEOUT);
+ }
+
+ @HostListener('window:keyup.control')
+ @HostListener('window:keyup.meta')
+ touchEnd() {
+ clearTimeout(this._touchTimeout);
+ this.longPress.emit({ touchEnd: true });
+ }
+}
diff --git a/apps/red-ui/src/app/modules/shared/shared.module.ts b/apps/red-ui/src/app/modules/shared/shared.module.ts
index 74c3200a4..381b6d0bb 100644
--- a/apps/red-ui/src/app/modules/shared/shared.module.ts
+++ b/apps/red-ui/src/app/modules/shared/shared.module.ts
@@ -24,6 +24,7 @@ import { MonacoEditorModule } from '@materia-ui/ngx-monaco-editor';
import { AssignUserDropdownComponent } from './components/assign-user-dropdown/assign-user-dropdown.component';
import { PageHeaderComponent } from './components/page-header/page-header.component';
import { DatePipe } from '@shared/pipes/date.pipe';
+import { LongPressDirective } from '@shared/directives/long-press.directive';
const buttons = [FileDownloadBtnComponent, UserButtonComponent];
@@ -44,7 +45,7 @@ const components = [
...buttons
];
-const utils = [DatePipe, NavigateLastDossiersScreenDirective];
+const utils = [DatePipe, NavigateLastDossiersScreenDirective, LongPressDirective];
const modules = [MatConfigModule, ScrollingModule, IconsModule, FormsModule, ReactiveFormsModule, CommonUiModule];