fix(render): repaint on layer/property edits (#231)
Layer color/linetype/lineweight and MATCHPROP edits set the document dirty flag but never bumped geometry_epoch. The wire caches key on that epoch and bake a ByLayer entity's resolved color at tessellation time, so they returned stale wires until a new entity forced a rebuild. Bump geometry on those four handlers so the edit repaints immediately. Also remove REGEN/REGENALL/REDRAW/REDRWALL: the GPU raster pipeline keeps the display continuously in sync, so on-demand regen/redraw is a no-op concept in OCS. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
parent
a994a148fe
commit
f6a7b0885f
6 changed files with 29 additions and 12 deletions
|
|
@ -3,12 +3,6 @@ use super::*;
|
|||
impl OpenCADStudio {
|
||||
pub(super) fn dispatch_display(&mut self, cmd: &str, i: usize) -> Option<Task<Message>> {
|
||||
match cmd {
|
||||
// ── Display refresh (no-op in GPU raster pipeline) ────────────────
|
||||
"REGEN" | "REGENALL" | "REDRAW" | "REDRWALL" => {
|
||||
// Display is always up-to-date in the GPU raster pipeline.
|
||||
self.command_line.push_output("Display regenerated.");
|
||||
}
|
||||
|
||||
// Interactive pan: left-drag pans the view until Esc. The only pan
|
||||
// path when there is no middle mouse button (trackpad / web).
|
||||
"PAN" | "P" => {
|
||||
|
|
|
|||
|
|
@ -511,10 +511,6 @@ inventory::submit!(crate::command::CommandRegistration {
|
|||
"QSELECT",
|
||||
"QUIT",
|
||||
"REDO",
|
||||
"REDRAW",
|
||||
"REDRWALL",
|
||||
"REGEN",
|
||||
"REGENALL",
|
||||
"RENAME",
|
||||
"REPORT",
|
||||
"SA",
|
||||
|
|
|
|||
Loading…
Reference in a new issue