Q:

When selecting a date how can I keep the datepicker open? 

I have an Angular 4.x app that uses the Angular Material Datepicker (package.json shows this as "@angular/material": "^2.0.0-beta.12") - I have got this working fine however I require the ability to select a date and keep the datepicker open - this functionality is available in the following release of Angular Material (v5.0.0) however it also would mean upgrading our version of Angular itself from 4 to 5 (something which we are unable to do currently at this time)
How can I amend the code to allow me to either a) keep the datepicker open even once a date selection has been made OR b) once the date selection has been made instantly re-open the datepicker - is this possible using this older version of material
https://stackblitz.com/edit/angular-ysspzm-bz2ezu?file=app/datepicker-overview-example.ts
// HTML Component 

    
<mat-datepicker-toggle
        matSuffix
        [for]="picker">
</mat-datepicker-toggle>

<mat-datepicker
        #picker
        class="fixed-open"
        opened="true">
</mat-datepicker>

// Custom Datepicker Component
imports added here...
@Component({
  selector: 'app-datepicker',
  templateUrl: './datepicker.component.html',
  styleUrls: ['./datepicker.component.scss']
})

export class DatepickerComponent {
  @ViewChild('keepOpen') _input: ElementRef;

  _openCalendar(picker: MatDatepicker<Date>) {
      picker.open();
  }
}

// The datepicker.d.ts from the node_modules directory (I am using the code below in the pastebin link)
https://pastebin.com/ChYBmpU6

A:

This seems to work on date change, you could refactor this to any event type you need. 
Component 
 @ViewChild('picker') picker;

  _openCalendar() {
   setTimeout(()=>this.picker.open());
  }

HTML
<input 
      matInput 
      [matDatepicker]="picker" 
      placeholder="Choose a date" 
      (dateChange)="_openCalendar()"
      #keepOpen>

