Fix notebook selection issues including from placeholder (#3836)

This commit is contained in:
Chris LaFreniere
2019-01-28 14:02:23 -08:00
committed by GitHub
parent 565b7404f9
commit e8eb7bec1b
3 changed files with 7 additions and 4 deletions

View File

@@ -7,7 +7,7 @@
<div style="overflow: hidden; width: 100%; height: 100%; display: flex; flex-flow: column">
<div class="placeholder-cell-component" style="flex: 0 0 auto;">
<div class="placeholder-cell-component text">
<p>{{clickOn}} <a href="#" (click)="addCell('code')">{{plusCode}}</a> {{or}} <a href="#" (click)="addCell('markdown')">{{plusText}}</a> {{toAddCell}}</p>
<p>{{clickOn}} <a href="#" (click)="addCell('code', $event)">{{plusCode}}</a> {{or}} <a href="#" (click)="addCell('markdown', $event)">{{plusText}}</a> {{toAddCell}}</p>
</div>
</div>
</div>

View File

@@ -68,7 +68,10 @@ export class PlaceholderCellComponent extends CellView implements OnInit, OnChan
return localize('toAddCell', 'to add a code or text cell');
}
public addCell(cellType: string): void {
public addCell(cellType: string, event?: Event): void {
if (event) {
event.stopPropagation();
}
let type: CellType = <CellType>cellType;
if (!type) {
type = 'code';

View File

@@ -173,14 +173,14 @@ export class NotebookComponent extends AngularDisposable implements OnInit, OnDe
public unselectActiveCell() {
if (this.model && this.model.activeCell) {
this.model.activeCell.active = false;
this.model.activeCell = undefined;
}
this._changeRef.detectChanges();
}
// Add cell based on cell type
public addCell(cellType: CellType) {
let newCell = this._model.addCell(cellType);
this.selectCell(newCell);
this._model.addCell(cellType);
}
// Updates Notebook model's trust details