From ca47896204482bf4a6979e3838bf7f09f61cebeb Mon Sep 17 00:00:00 2001
From: giy <giy@omp-system.ru>
Date: Fri, 02 Sep 2022 14:16:56 +0300
Subject: [PATCH] Обновление до версии 2.9.0
---
QtVsTools.Package/Editors/Editor.QtDesigner.cs | 21 ++++++++++++++-------
1 files changed, 14 insertions(+), 7 deletions(-)
diff --git a/QtVsTools.Package/Editors/Editor.QtDesigner.cs b/QtVsTools.Package/Editors/Editor.QtDesigner.cs
index 518bd6c..73148b0 100644
--- a/QtVsTools.Package/Editors/Editor.QtDesigner.cs
+++ b/QtVsTools.Package/Editors/Editor.QtDesigner.cs
@@ -31,12 +31,15 @@
using System.IO;
using System.Runtime.InteropServices;
using System.Threading.Tasks;
-using Microsoft.VisualStudio.Shell.Interop;
-using QtVsTools.QtMsBuild;
-using QtVsTools.VisualStudio;
+using Microsoft.VisualStudio.Shell;
+
+using Task = System.Threading.Tasks.Task;
namespace QtVsTools.Editors
{
+ using QtMsBuild;
+ using VisualStudio;
+
[Guid(GuidString)]
public class QtDesigner : Editor
{
@@ -58,27 +61,31 @@
protected override void OnStart(Process process)
{
+ ThreadHelper.ThrowIfNotOnUIThread();
+
base.OnStart(process);
var document = VsShell.GetDocument(Context, ItemId);
if (document == null)
return;
+
var project = document.ProjectItem?.ContainingProject;
- if (project == null || !QtProjectTracker.IsTracked(project))
+ if (project == null || !QtProjectTracker.IsTracked(project.FullName))
return;
+ string projectPath = project.FullName;
string filePath = document.FullName;
string[] itemId = new[] { document.ProjectItem?.Name };
var lastWriteTime = File.GetLastWriteTime(filePath);
- Task.Run(() =>
+ _ = Task.Run(async () =>
{
while (!process.WaitForExit(1000)) {
var latestWriteTime = File.GetLastWriteTime(filePath);
if (lastWriteTime != latestWriteTime) {
lastWriteTime = latestWriteTime;
- QtProjectIntellisense.Refresh(project, selectedFiles: itemId);
+ await QtProjectIntellisense.RefreshAsync(project, projectPath);
}
}
if (lastWriteTime != File.GetLastWriteTime(filePath)) {
- QtProjectIntellisense.Refresh(project, selectedFiles: itemId);
+ await QtProjectIntellisense.RefreshAsync(project, projectPath);
}
});
}
--
Gitblit v1.9.1