*/
public setBuffer(buffer: CircularList<any>): void {
this._buffer = buffer;
+ this.clearSelection();
}
/**
* Gets whether there is an active text selection.
*/
public get hasSelection(): boolean {
- return !!this._model.finalSelectionStart && !!this._model.finalSelectionEnd;
+ const start = this._model.finalSelectionStart;
+ const end = this._model.finalSelectionEnd;
+ if (!start || !end) {
+ return false;
+ }
+ return start[0] !== end[0] || start[1] !== end[1];
}
/**
// and joining the array into a multi-line string.
const formattedResult = result.map(line => {
return line.replace(ALL_NON_BREAKING_SPACE_REGEX, ' ');
- }).join('\n');
+ }).join(Browser.isMSWindows ? '\r\n' : '\n');
return formattedResult;
}