flutter / flutter/devtools

Consider alternative algorithm for selecting node after auto-refreshing the inspector tree

Ouverte
#8,481 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub
inspector-2.0-polish P3 screen: inspector
Langage dominant
Dart
Étoiles
1.7k
Forks
404
Merge moyen
6 j 17 h
PR mergées (30 j)
18

Description

Currently we walk up the tree from the previously selected node until we find the first unchanged ancestor. Then, we walk down the new tree from that ancestor until we find the first node matching the description of the previously selected node, or if we can't find any nodes matching the description, we select the first unchanged ancestor.

Instead, we could keep track of the path (as a linked list) from the previously selected node to the first unchanged ancestor, then use a variation of a path finding algorithm to walk down the path, including searching down paths where a node might have changed or been renamed. Note that this would be slightly less performant than the current approach.

Marking this as P3, can bump the priority if we decide this is a necessary improvement.

Guide de contribution

Ouvrir le guide de contribution

Piste de recherche

Start by tracing the inspector tree's auto-refresh selection logic and documenting how it currently walks to an unchanged ancestor and searches for a matching node. Compare that behavior with the proposed linked-list path search, including renamed or changed nodes; done means the selection behavior and performance trade-off are understood well enough to choose an approach.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
dart
Domaine
devtools
Type d'issue
Refactorisation
Difficulté
5/5
Temps estimé
Plus d'une semaine
Activité
À l'abandon
Clarté
Plutôt claire
Accessibilité débutants
35/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.