mirror of
https://github.com/rust-lang/rust-analyzer
synced 2024-12-27 13:33:31 +00:00
fix: inlay hints config desyncronization between the frontend and the backend
See the explanation in the issue comment: https://github.com/rust-analyzer/rust-analyzer/issues/3924#issuecomment-612444566
This commit is contained in:
parent
372414d27b
commit
7534266156
1 changed files with 3 additions and 2 deletions
|
@ -3,13 +3,13 @@ import * as vscode from 'vscode';
|
||||||
import * as ra from './rust-analyzer-api';
|
import * as ra from './rust-analyzer-api';
|
||||||
|
|
||||||
import { Ctx, Disposable } from './ctx';
|
import { Ctx, Disposable } from './ctx';
|
||||||
import { sendRequestWithRetry, isRustDocument, RustDocument, RustEditor } from './util';
|
import { sendRequestWithRetry, isRustDocument, RustDocument, RustEditor, sleep } from './util';
|
||||||
|
|
||||||
|
|
||||||
export function activateInlayHints(ctx: Ctx) {
|
export function activateInlayHints(ctx: Ctx) {
|
||||||
const maybeUpdater = {
|
const maybeUpdater = {
|
||||||
updater: null as null | HintsUpdater,
|
updater: null as null | HintsUpdater,
|
||||||
onConfigChange() {
|
async onConfigChange() {
|
||||||
if (
|
if (
|
||||||
!ctx.config.inlayHints.typeHints &&
|
!ctx.config.inlayHints.typeHints &&
|
||||||
!ctx.config.inlayHints.parameterHints &&
|
!ctx.config.inlayHints.parameterHints &&
|
||||||
|
@ -17,6 +17,7 @@ export function activateInlayHints(ctx: Ctx) {
|
||||||
) {
|
) {
|
||||||
return this.dispose();
|
return this.dispose();
|
||||||
}
|
}
|
||||||
|
await sleep(100);
|
||||||
if (this.updater) {
|
if (this.updater) {
|
||||||
this.updater.syncCacheAndRenderHints();
|
this.updater.syncCacheAndRenderHints();
|
||||||
} else {
|
} else {
|
||||||
|
|
Loading…
Reference in a new issue