Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -969,7 +969,7 @@ describe('IgxDatePicker', () => {
},
element: {
nativeElement: jasmine.createSpyObj('mockElement',
['focus', 'blur', 'click', 'addEventListener', 'removeEventListener'])
['focus', 'blur', 'click', 'addEventListener', 'removeEventListener', 'querySelector'])
}
} as any;
mockInputDirective = {
Expand Down Expand Up @@ -1030,6 +1030,7 @@ describe('IgxDatePicker', () => {

datePicker = TestBed.inject(IgxDatePickerComponent);
(datePicker as any).inputGroup = mockInputGroup;
(mockInputGroup.element.nativeElement.querySelector as jasmine.Spy).and.returnValue(mockInputGroup.element.nativeElement);
(datePicker as any).inputDirective = mockInputDirective;
(datePicker as any).dateTimeEditor = mockDateEditor;
(datePicker as any).viewContainerRef = viewsContainerRef;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -462,7 +462,7 @@ export class IgxDatePickerComponent extends PickerBaseDirective implements Contr
}

private get inputGroupElement(): HTMLElement {
return this.inputGroup?.element.nativeElement;
return this.inputGroup?.element.nativeElement.querySelector('.igx-input-group__bundle');
}

private get dateValue(): Date {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -1922,10 +1922,11 @@ describe('IgxDateRangePicker', () => {
fixture.detectChanges();

const overlayContent = document.getElementsByClassName(CSS_CLASS_OVERLAY_CONTENT)[0] as HTMLElement;
const expectedTarget = dateRange.element.nativeElement.querySelector('.igx-input-group__bundle');
expect(AutoPositionStrategy.prototype.position).toHaveBeenCalledTimes(1);
expect(AutoPositionStrategy.prototype.position)
.toHaveBeenCalledWith(overlayContent, jasmine.anything(), document,
jasmine.anything(), dateRange.element.nativeElement);
jasmine.anything(), expectedTarget);
}));
it('Should the weekStart property takes precedence over locale.', fakeAsync(() => {
fixture = TestBed.createComponent(DateRangeCustomComponent);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -1255,10 +1255,15 @@ export class IgxDateRangePickerComponent extends PickerBaseDirective
private configPositionStrategy(): void {
this._positionSettings = {
openAnimation: fadeIn,
closeAnimation: fadeOut
closeAnimation: fadeOut,
offset: 1
};
this._dropDownOverlaySettings.positionStrategy = new AutoPositionStrategy(this._positionSettings);
this._dropDownOverlaySettings.target = this.element.nativeElement;

const bundle = this.hasProjectedInputs
? this.projectedInputs.first?.nativeElement.querySelector('.igx-input-group__bundle')
: this.element.nativeElement.querySelector('.igx-input-group__bundle');
this._dropDownOverlaySettings.target = bundle || this.element.nativeElement;
}

private configOverlaySettings(): void {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -432,6 +432,10 @@ export class IgxTimePickerComponent extends PickerBaseDirective
return Object.assign({}, this._defaultDropDownOverlaySettings, this.overlaySettings);
}

private get inputGroupElement(): HTMLElement {
return this.inputGroup?.element.nativeElement.querySelector('.igx-input-group__bundle');
}

/** @hidden @internal */
public displayValue: PipeTransform = { transform: (date: Date) => this.formatter(date) };
/** @hidden @internal */
Expand Down Expand Up @@ -472,7 +476,6 @@ export class IgxTimePickerComponent extends PickerBaseDirective
outlet: this.outlet
};
private _defaultDropDownOverlaySettings: OverlaySettings = {
target: this.element.nativeElement,
modal: false,
closeOnOutsideClick: true,
scrollStrategy: new AbsoluteScrollStrategy(),
Expand Down Expand Up @@ -771,6 +774,10 @@ export class IgxTimePickerComponent extends PickerBaseDirective
: this.dialogOverlaySettings
, settings);

if (this.isDropdown && this.inputGroupElement) {
overlaySettings.target = this.inputGroupElement;
}

this.toggleRef.open(overlaySettings);
}

Expand Down
Loading