From d6076189200fbf8bd8299573f4da0f2b0b9daf8b Mon Sep 17 00:00:00 2001 From: Cilibiu Bogdan Date: Fri, 31 Aug 2018 20:07:18 +0300 Subject: [PATCH] [ACA] contextmenu - document click event breaks implementation in FF (#593) * listen event from body element * add event parameter --- .../context-menu/context-menu-outside-event.directive.ts | 2 +- src/app/components/context-menu/context-menu.directive.ts | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/app/components/context-menu/context-menu-outside-event.directive.ts b/src/app/components/context-menu/context-menu-outside-event.directive.ts index 8c8674fb2..89572647b 100644 --- a/src/app/components/context-menu/context-menu-outside-event.directive.ts +++ b/src/app/components/context-menu/context-menu-outside-event.directive.ts @@ -15,7 +15,7 @@ export class OutsideEventDirective implements OnInit, OnDestroy { ngOnInit() { this.subscriptions = this.subscriptions.concat([ - fromEvent(document, 'click') + fromEvent(document.body, 'click') .pipe(delay(1)) .subscribe(() => this.clickOutside.next()) ]); diff --git a/src/app/components/context-menu/context-menu.directive.ts b/src/app/components/context-menu/context-menu.directive.ts index 6b4fcd26e..ee489952b 100644 --- a/src/app/components/context-menu/context-menu.directive.ts +++ b/src/app/components/context-menu/context-menu.directive.ts @@ -68,7 +68,7 @@ export class ContextActionsDirective { ) { } private execute(event: MouseEvent) { - const selected = this.getSelectedRow(); + const selected = this.getSelectedRow(event); if (selected) { if (!this.isInSelection(selected)) { @@ -108,7 +108,7 @@ export class ContextActionsDirective { row.getValue('name') === selected.entry.name); } - private getSelectedRow(): DataRow { + private getSelectedRow(event): DataRow { const rowElement = this.findAncestor(event.target, 'adf-datatable-row'); if (!rowElement) {