Skip to content

Commit facc712

Browse files
DanTupCommit Queue
authored andcommitted
[analysis_server] Migrate LSP colors to new element model
Change-Id: Ib31793e2cc5b52cde46b76dee9da7ddc9047eee3 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/393322 Reviewed-by: Samuel Rawlins <[email protected]> Reviewed-by: Brian Wilkerson <[email protected]> Commit-Queue: Samuel Rawlins <[email protected]>
1 parent 6eda5e2 commit facc712

File tree

1 file changed

+12
-11
lines changed

1 file changed

+12
-11
lines changed

pkg/analysis_server/lib/src/lsp/handlers/handler_document_color_presentation.dart

Lines changed: 12 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -8,11 +8,10 @@ import 'package:analysis_server/src/lsp/handlers/handlers.dart';
88
import 'package:analysis_server/src/lsp/mapping.dart';
99
import 'package:analyzer/dart/analysis/results.dart';
1010
import 'package:analyzer/dart/ast/ast.dart';
11-
import 'package:analyzer/dart/element/element.dart';
11+
import 'package:analyzer/dart/element/element2.dart';
1212
import 'package:analyzer/source/source_range.dart';
1313
import 'package:analyzer/src/dart/analysis/session_helper.dart';
1414
import 'package:analyzer/src/dart/ast/utilities.dart';
15-
import 'package:analyzer/src/dart/element/element.dart';
1615
import 'package:analyzer_plugin/utilities/change_builder/change_builder_core.dart';
1716

1817
/// Handles textDocument/colorPresentation.
@@ -74,7 +73,7 @@ class DocumentColorPresentationHandler extends SharedMessageHandler<
7473
Future<ColorPresentation> _createColorPresentation({
7574
required ResolvedUnitResult unit,
7675
required SourceRange editRange,
77-
required InterfaceElement colorType,
76+
required InterfaceElement2 colorType,
7877
required String typeName,
7978
required String invocationString,
8079
required bool includeConstKeyword,
@@ -152,7 +151,7 @@ class DocumentColorPresentationHandler extends SharedMessageHandler<
152151
var editRange = SourceRange(editStart, editEnd - editStart);
153152

154153
var sessionHelper = AnalysisSessionHelper(unit.session);
155-
var colorType = await sessionHelper.getFlutterClass('Color');
154+
var colorType = await sessionHelper.getFlutterClass2('Color');
156155
if (colorType == null) {
157156
// If we can't find the class (perhaps because this isn't a Flutter
158157
// project) we will not include any results. In theory the client should
@@ -246,14 +245,16 @@ class DocumentColorPresentationHandler extends SharedMessageHandler<
246245
return node.isConst;
247246
} else if (node is SimpleIdentifier) {
248247
var parent = node.parent;
249-
var staticElement = parent is PrefixedIdentifier
250-
? parent.staticElement
251-
: node.staticElement;
252-
var target = staticElement is PropertyAccessorElement
253-
? staticElement.variable2
254-
: staticElement;
248+
var element =
249+
parent is PrefixedIdentifier ? parent.element : node.element;
255250

256-
return target is ConstVariableElement;
251+
return switch (element) {
252+
GetterElement(:var variable3) ||
253+
SetterElement(:var variable3) =>
254+
variable3?.isConst ?? false,
255+
VariableElement2() => element.isConst,
256+
_ => false,
257+
};
257258
} else {
258259
return false;
259260
}

0 commit comments

Comments
 (0)