removed help mode for elements that overlap other elements

This commit is contained in:
Valentin Mihai 2022-02-09 14:59:47 +02:00
parent 6b4fe281cb
commit 0bab458476
8 changed files with 8 additions and 23 deletions

View File

@ -59,7 +59,6 @@
} }
.help-mode-on-mouse-over-reset-filters { .help-mode-on-mouse-over-reset-filters {
z-index: 20;
padding-left: 4px; padding-left: 4px;
} }
@ -69,19 +68,13 @@
height: calc(100% - 70px); height: calc(100% - 70px);
} }
.help-mode-on-mouse-over-edit-dossier-attributes {
z-index: 20;
}
.help-mode-on-mouse-over-dossier-features { .help-mode-on-mouse-over-dossier-features {
z-index: 20;
height: 50px; height: 50px;
margin-top: 17px; margin-top: 17px;
width: 95%; width: 95%;
} }
.help-mode-on-mouse-over-edit-dossier-from-list { .help-mode-on-mouse-over-edit-dossier-from-list {
z-index: 30;
padding-left: 5px ; padding-left: 5px ;
} }
@ -90,7 +83,6 @@
.help-mode-on-mouse-over-redaction-remove-from-dictionary, .help-mode-on-mouse-over-redaction-remove-from-dictionary,
.help-mode-on-mouse-over-redaction-false-positive, .help-mode-on-mouse-over-redaction-false-positive,
.help-mode-on-mouse-over-recommendation-accept-or-reject { .help-mode-on-mouse-over-recommendation-accept-or-reject {
z-index: 20;
width: 20px; width: 20px;
height: 20px; height: 20px;
margin-left: 9px; margin-left: 9px;

View File

@ -8,7 +8,6 @@ import { Router } from '@angular/router';
}) })
export class HelpModeDirective implements OnInit { export class HelpModeDirective implements OnInit {
@Input('iqserHelpMode') elementName!: string; @Input('iqserHelpMode') elementName!: string;
@Input() updateElementPosition = true;
private _path: string; private _path: string;
constructor( constructor(
@ -33,7 +32,7 @@ export class HelpModeDirective implements OnInit {
this._renderer.addClass(helperElement, 'help-mode-on-mouse-over'); this._renderer.addClass(helperElement, 'help-mode-on-mouse-over');
this._renderer.addClass(helperElement, `help-mode-on-mouse-over-${this.elementName}`); this._renderer.addClass(helperElement, `help-mode-on-mouse-over-${this.elementName}`);
this._helpModeService.addElement(elementNameWithId, element, helperElement, this.updateElementPosition); this._helpModeService.addElement(elementNameWithId, element, helperElement);
} }
} }

View File

@ -8,7 +8,6 @@ import { HELP_DOCS, MANUAL_BASE_URL } from './tokens';
interface Helper { interface Helper {
readonly element: HTMLElement; readonly element: HTMLElement;
readonly helperElement: HTMLElement; readonly helperElement: HTMLElement;
readonly updateElementPosition: boolean;
} }
@Injectable({ @Injectable({
@ -84,15 +83,13 @@ export class HelpModeService {
}); });
} }
addElement(elementName: string, element: HTMLElement, helperElement: HTMLElement, updateElementPosition: boolean): void { addElement(elementName: string, element: HTMLElement, helperElement: HTMLElement): void {
this._elements[elementName] = { element, helperElement, updateElementPosition }; this._elements[elementName] = { element, helperElement };
} }
private _enableHelperElements() { private _enableHelperElements() {
Object.values(this._elements).forEach(({ element, helperElement, updateElementPosition }) => { Object.values(this._elements).forEach(({ element, helperElement }) => {
if (updateElementPosition) { this._renderer.setStyle(element, 'position', 'relative');
this._renderer.setStyle(element, 'position', 'relative');
}
this._renderer.appendChild(element, helperElement); this._renderer.appendChild(element, helperElement);
}); });
} }

View File

@ -36,7 +36,7 @@
></iqser-icon-button> ></iqser-icon-button>
</ng-container> </ng-container>
<div class="actions" iqserHelpMode="edit-dossier"> <div class="actions">
<ng-container *ngFor="let config of actionConfigs; trackBy: trackByLabel"> <ng-container *ngFor="let config of actionConfigs; trackBy: trackByLabel">
<iqser-circle-button <iqser-circle-button
(action)="config.action($event)" (action)="config.action($event)"

View File

@ -1,4 +1,4 @@
<div [iqserHelpMode]="helpModeKey" class="display-contents"> <div class="display-contents">
<cdk-virtual-scroll-viewport <cdk-virtual-scroll-viewport
[class.no-data]="listingComponent.noContent$ | async" [class.no-data]="listingComponent.noContent$ | async"
[itemSize]="itemSize" [itemSize]="itemSize"

View File

@ -15,8 +15,8 @@ import { AutoUnsubscribe, trackByFactory } from '../../utils';
import { IListable } from '../models'; import { IListable } from '../models';
import { ListingComponent, ListingService } from '../index'; import { ListingComponent, ListingService } from '../index';
import { HasScrollbarDirective } from '../../scrollbar'; import { HasScrollbarDirective } from '../../scrollbar';
import { HelpModeService } from '@iqser/common-ui';
import { BehaviorSubject } from 'rxjs'; import { BehaviorSubject } from 'rxjs';
import { HelpModeService } from '@iqser/common-ui';
@Component({ @Component({
selector: 'iqser-table-content', selector: 'iqser-table-content',
@ -30,7 +30,6 @@ export class TableContentComponent<T extends IListable> extends AutoUnsubscribe
@Input() itemMouseLeaveFn?: (entity: T) => void; @Input() itemMouseLeaveFn?: (entity: T) => void;
@Input() tableItemClasses?: Record<string, (e: T) => boolean>; @Input() tableItemClasses?: Record<string, (e: T) => boolean>;
@Input() selectionEnabled!: boolean; @Input() selectionEnabled!: boolean;
@Input() helpModeKey?: 'dossier-list' | 'document-list';
readonly trackBy = trackByFactory<T>(); readonly trackBy = trackByFactory<T>();
@ViewChild(CdkVirtualScrollViewport, { static: true }) readonly scrollViewport!: CdkVirtualScrollViewport; @ViewChild(CdkVirtualScrollViewport, { static: true }) readonly scrollViewport!: CdkVirtualScrollViewport;

View File

@ -29,7 +29,6 @@
[itemSize]="itemSize" [itemSize]="itemSize"
[selectionEnabled]="selectionEnabled" [selectionEnabled]="selectionEnabled"
[tableItemClasses]="tableItemClasses" [tableItemClasses]="tableItemClasses"
[helpModeKey]="helpModeKey"
></iqser-table-content> ></iqser-table-content>
<iqser-scroll-button <iqser-scroll-button

View File

@ -49,7 +49,6 @@ export class TableComponent<T extends IListable> extends AutoUnsubscribe impleme
@Input() tableItemClasses?: Record<string, (e: T) => boolean>; @Input() tableItemClasses?: Record<string, (e: T) => boolean>;
@Input() itemMouseEnterFn?: (entity: T) => void; @Input() itemMouseEnterFn?: (entity: T) => void;
@Input() itemMouseLeaveFn?: (entity: T) => void; @Input() itemMouseLeaveFn?: (entity: T) => void;
@Input() helpModeKey?: 'dossier-list' | 'document-list';
@Output() readonly noDataAction = new EventEmitter<void>(); @Output() readonly noDataAction = new EventEmitter<void>();
@ViewChild(TableContentComponent, { static: true }) private readonly _tableContent!: TableContentComponent<T>; @ViewChild(TableContentComponent, { static: true }) private readonly _tableContent!: TableContentComponent<T>;