diff --git a/ng2-components/ng2-alfresco-core/src/components/context-menu/context-menu.directive.spec.ts b/ng2-components/ng2-alfresco-core/src/components/context-menu/context-menu.directive.spec.ts index 32d9a6902b..608d622a27 100644 --- a/ng2-components/ng2-alfresco-core/src/components/context-menu/context-menu.directive.spec.ts +++ b/ng2-components/ng2-alfresco-core/src/components/context-menu/context-menu.directive.spec.ts @@ -26,6 +26,7 @@ describe('ContextMenuDirective', () => { beforeEach(() => { contextMenuService = new ContextMenuService(); directive = new ContextMenuDirective(contextMenuService); + directive.enabled = true; }); it('should show menu via service', (done) => { diff --git a/ng2-components/ng2-alfresco-core/src/components/context-menu/context-menu.directive.ts b/ng2-components/ng2-alfresco-core/src/components/context-menu/context-menu.directive.ts index 439937397b..0bcfef10d0 100644 --- a/ng2-components/ng2-alfresco-core/src/components/context-menu/context-menu.directive.ts +++ b/ng2-components/ng2-alfresco-core/src/components/context-menu/context-menu.directive.ts @@ -25,18 +25,23 @@ export class ContextMenuDirective { @Input('context-menu') links: any[]; + @Input('context-menu-enabled') + enabled: boolean = false; + constructor(private _contextMenuService: ContextMenuService) { } @HostListener('contextmenu', ['$event']) onShowContextMenu(event?: MouseEvent) { - if (event) { - event.preventDefault(); - } + if (this.enabled) { + if (event) { + event.preventDefault(); + } - if (this.links && this.links.length > 0) { - if (this._contextMenuService) { - this._contextMenuService.show.next({event: event, obj: this.links}); + if (this.links && this.links.length > 0) { + if (this._contextMenuService) { + this._contextMenuService.show.next({event: event, obj: this.links}); + } } } } diff --git a/ng2-components/ng2-alfresco-datatable/README.md b/ng2-components/ng2-alfresco-datatable/README.md index d84f27bdbc..0635c72de8 100644 --- a/ng2-components/ng2-alfresco-datatable/README.md +++ b/ng2-components/ng2-alfresco-datatable/README.md @@ -103,7 +103,6 @@ Usage example of this component : **my.component.ts** ```ts - import { NgModule, Component } from '@angular/core'; import { BrowserModule } from '@angular/platform-browser'; import { platformBrowserDynamic } from '@angular/platform-browser-dynamic'; @@ -155,17 +154,14 @@ export class DataTableDemo { imports: [ BrowserModule, CoreModule.forRoot(), - DataTableModule + DataTableModule.forRoot() ], declarations: [DataTableDemo], bootstrap: [DataTableDemo] }) -export class AppModule { -} +export class AppModule {} platformBrowserDynamic().bootstrapModule(AppModule); - - ```  @@ -179,6 +175,7 @@ platformBrowserDynamic().bootstrapModule(AppModule); | `actions` | boolean | false | Toggles data actions column | | `actionsPosition` | string (left\|right) | right | Position of the actions dropdown menu. | | `fallbackThumbnail` | string | | Fallback image for row ehre thubnail is missing| +| `contextMenu` | boolean | false | Toggles custom context menu for the component | ### Events diff --git a/ng2-components/ng2-alfresco-datatable/src/components/datatable/datatable.component.html b/ng2-components/ng2-alfresco-datatable/src/components/datatable/datatable.component.html index be77cc8a4f..14fdc4b502 100644 --- a/ng2-components/ng2-alfresco-datatable/src/components/datatable/datatable.component.html +++ b/ng2-components/ng2-alfresco-datatable/src/components/datatable/datatable.component.html @@ -67,7 +67,8 @@ class="mdl-data-table__cell--non-numeric non-selectable data-cell {{col.cssClass}}" (click)="onRowClick(row, $event)" (dblclick)="onRowDblClick(row, $event)" - [context-menu]="getContextMenuActions(row, col)"> + [context-menu]="getContextMenuActions(row, col)" + [context-menu-enabled]="contextMenu">