Skip to content

Commit 6295a23

Browse files
committed
chore: release 6.9.1 and update changelog
1 parent e9ae525 commit 6295a23

8 files changed

Lines changed: 212 additions & 103 deletions

File tree

.idea/workspace.xml

Lines changed: 15 additions & 19 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.kotlin/errors/errors-1768875061052.log

Lines changed: 37 additions & 0 deletions
Large diffs are not rendered by default.

CHANGELOG.md

Lines changed: 27 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,33 @@
22

33
## Unreleased
44

5-
## 6.9.0 - 2025-01-21
5+
6+
## 6.9.1 - 2026-01-26
7+
8+
### ✨ Drift Debugger Optimizations
9+
- **Column Resizing**: Support dynamic column resizing by dragging header borders.
10+
- **CSV Support**: Added options to export table data to CSV and preview CSV content in the editor.
11+
- **Cell Interactions**: Added a context menu for table cells on hover:
12+
- One-click copy cell value to clipboard.
13+
- Inline editing of cell values.
14+
- Open content in a standalone editor (supports Plain Text and JSON).
15+
- Quick toggle between timestamp and formatted date/time display.
16+
- **Filtering & UI**:
17+
- Improved Filter Builder with type-aware operators.
18+
- Added zebra-striped rows for better table readability.
19+
- Refined database and table list interfaces.
20+
- Added a status bar to display operation logs and status.
21+
22+
### 🎨 UI/UX Improvements
23+
- **Donation Support**: Added a WeChat donation popup on the home page.
24+
- **Internationalization**: Improved localization for English, Traditional Chinese (HK), Japanese, and Korean.
25+
26+
### 🐛 Bug Fixes & Technical
27+
- Fixed Drift database component layout issues.
28+
- Fixed MCP (Model Context Protocol) build configuration.
29+
- Improved selection feedback and animations across the tool windows.
30+
31+
## 6.9.0 - 2026-01-21
632

733
### ✨ New Features
834
- **Drift Database Viewer**: Added complete Drift database viewer with real-time data inspection

build.gradle.kts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,7 @@ dependencies {
7474
intellijIdeaCommunity("2025.2.1")
7575
bundledPlugins(bPlugins)
7676
//"io.flutter:88.2.0"
77-
plugins("Dart:$dartVersion")
77+
plugins("Dart:$dartVersion","io.flutter:88.2.0")
7878
pluginVerifier()
7979
zipSigner()
8080
javaCompiler()

gradle.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
kotlin.stdlib.default.dependency=false
22
pluginVersion=6.9.0
3-
dartVersion=502.0.0
3+
dartVersion=500.0.0
44
sinceBuildVersion=252
55
kotlin.daemon.jvmargs=-Xmx5024m
66
org.gradle.jvmargs=-Xmx4g -XX:MaxMetaspaceSize=512m -Dfile.encoding=UTF-8

src/main/kotlin/shop/itbug/flutterx/common/yaml/DartYamlModel.kt

Lines changed: 13 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ package shop.itbug.flutterx.common.yaml
33
import com.intellij.openapi.application.readAction
44
import com.intellij.psi.SmartPointerManager
55
import com.intellij.psi.SmartPsiElementPointer
6+
import com.intellij.psi.util.PsiTreeUtil
67
import org.jetbrains.yaml.psi.impl.YAMLBlockMappingImpl
78
import org.jetbrains.yaml.psi.impl.YAMLKeyValueImpl
89
import org.jetbrains.yaml.psi.impl.YAMLPlainTextImpl
@@ -71,10 +72,14 @@ data class DartYamlModel(
7172
companion object {
7273

7374
suspend fun create(element: YAMLKeyValueImpl): DartYamlModel? {
74-
val pt = element.findChild<YAMLPlainTextImpl>() ?: return null
75-
val hasBlock = element.findChild<YAMLBlockMappingImpl>() != null
76-
if (hasBlock) return null
75+
// 在 readAction 内部进行所有 PSI 访问,避免元素在异步操作中失效
7776
return readAction {
77+
// 检查元素是否仍然有效
78+
if (!element.isValid) return@readAction null
79+
val pt = PsiTreeUtil.findChildOfType(element,YAMLPlainTextImpl::class.java) ?: return@readAction null
80+
val hasBlock = PsiTreeUtil.findChildOfType(element,YAMLBlockMappingImpl::class.java) != null
81+
if (hasBlock) return@readAction null
82+
7883
val version = element.valueText.trim()
7984
if (version.isBlank()) return@readAction null
8085
val name = element.keyText.trim()
@@ -92,8 +97,11 @@ data class DartYamlModel(
9297
*/
9398
suspend fun fetch(element: YAMLKeyValueImpl): DartYamlModel? {
9499
val model = create(element) ?: return null
95-
val file = readAction { element.containingFile }
96-
val project = readAction { element.project }
100+
val fileAndProject = readAction {
101+
if (!element.isValid) return@readAction null
102+
element.containingFile to element.project
103+
} ?: return null
104+
val (file, project) = fileAndProject
97105
val isIgnored = YamlFileIgDartPackageCache.getInstance(project).state.hasItem(file, model.name)
98106
if (isIgnored) return null
99107
val data = PubService.callPluginDetails(model.name) ?: return null

0 commit comments

Comments
 (0)