Skip to content

Commit

Permalink
Merge branch 'master' into restore_solution
Browse files Browse the repository at this point in the history
  • Loading branch information
akshita31 authored May 21, 2018
2 parents c0d146f + c908660 commit 81aa30b
Show file tree
Hide file tree
Showing 2 changed files with 23 additions and 2 deletions.
6 changes: 6 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,12 @@

* There currently is no completion support for package references in csproj files. ([#1156](https://github.com/OmniSharp/omnisharp-vscode/issues/1156))
* As an alternative, consider installing the [MSBuild Project Tools](https://marketplace.visualstudio.com/items?itemName=tintoy.msbuild-project-tools) extension by @tintoy.

## 1.16.0 _(Not Yet Released)_

#### Editor

* Improved diagnostics by refreshing them when the active editor changes or the current window is focused. (PR: [#2317](https://github.com/OmniSharp/omnisharp-vscode/pull/2317)) _(Contributed by [@SirIntruder](https://github.com/SirIntruder))

## 1.15.2 (May 15, 1018)

Expand Down
19 changes: 17 additions & 2 deletions src/features/diagnosticsProvider.ts
Original file line number Diff line number Diff line change
Expand Up @@ -133,7 +133,9 @@ class DiagnosticsProvider extends AbstractSupport {
let d4 = vscode.workspace.onDidOpenTextDocument(event => this._onDocumentAddOrChange(event), this);
let d3 = vscode.workspace.onDidChangeTextDocument(event => this._onDocumentAddOrChange(event.document), this);
let d5 = vscode.workspace.onDidCloseTextDocument(this._onDocumentRemove, this);
this._disposable = new CompositeDisposable(this._diagnostics, d1, d2, d3, d4, d5);
let d6 = vscode.window.onDidChangeActiveTextEditor(event => this._onDidChangeActiveTextEditor(event), this);
let d7 = vscode.window.onDidChangeWindowState(event => this._OnDidChangeWindowState(event), this);
this._disposable = new CompositeDisposable(this._diagnostics, d1, d2, d3, d4, d5, d6, d7);

// Go ahead and check for diagnostics in the currently visible editors.
for (let editor of vscode.window.visibleTextEditors) {
Expand All @@ -156,14 +158,27 @@ class DiagnosticsProvider extends AbstractSupport {
this._disposable.dispose();
}

private _OnDidChangeWindowState(windowState: vscode.WindowState): void {
if (windowState.focused === true) {
this._onDidChangeActiveTextEditor(vscode.window.activeTextEditor);
}
}

private _onDidChangeActiveTextEditor(textEditor: vscode.TextEditor): void {
// active text editor can be undefined.
if (textEditor != undefined && textEditor.document != null) {
this._onDocumentAddOrChange(textEditor.document);
}
}

private _onDocumentAddOrChange(document: vscode.TextDocument): void {
if (document.languageId === 'csharp' && document.uri.scheme === 'file') {
this._validateDocument(document);
this._validateProject();
}
}

private _onDocumentRemove(document: vscode.TextDocument) {
private _onDocumentRemove(document: vscode.TextDocument): void {
let key = document.uri;
let didChange = false;
if (this._diagnostics.get(key)) {
Expand Down

0 comments on commit 81aa30b

Please sign in to comment.