forked from 1b-agent/opencadstudio-upstream
perf: warm the entity quadtree alongside the handle index
Warming only the interaction handle index left the first hover at
385 ms, down from 992 but not gone:
hover-detail query=0.1 handles=384.6 ... candidates=186
The handles stage builds two indexes, not one. `interaction_candidate_handles`
also reaches for `entity_index()` — the entity quadtree, keyed on
geometry_epoch and just as cold at that point. Warm both.
Co-Authored-By: Claude Opus 5 <[email protected]>
This commit is contained in:
1 parent
909b7f3379
commit
b9c2524748
1 file changed
+5
@@ -7912,6 +7912,11 @@ impl Scene {
|
||||
/// already waiting. A second on an open that is already seconds long reads
|
||||
/// very differently from a second-long freeze on a mouse move.
|
||||
pub(crate) fn warm_interaction_caches(&self) {
|
||||
// Both indexes on the hover path, not just one. The handle index alone
|
||||
// left `hover-detail ... handles=384.6` on the first hover: the same
|
||||
// stage also builds the entity quadtree, which is keyed on
|
||||
// `geometry_epoch` and equally cold at that point.
|
||||
let _ = self.entity_index();
|
||||
let _ = self.interaction_handle_index();
|
||||
}
|
||||
|
||||
|
||||
Reference in new issue
Block a user