dispose method
void
dispose()
Releases all native renderer resources and detaches the finalizer.
Implementation
void dispose() {
if (_disposed) return;
_disposed = true;
// Detach from finalizer before manual destruction (prevent double-free)
_finalizer.detach(_finalizerKey);
// Invalidate before destroying native handle so any stragglers (clipped
// views, etc.) fail fast instead of touching freed memory.
_invalidateBorrowedBuffers();
_bindings.destroyRenderer(_handle);
}