Skip to content

Conversation

@andrasbacsai
Copy link
Member

Problem

The wire:model.blur on the Domains input in the Application General settings was causing the entire form's dirty state to reset when blurring out of the input. This led to a jarring UI flicker as dirty indicators disappeared and reappeared unexpectedly.

Root Cause

The wire:model.blur directive syncs the input value to the server upon losing focus. This triggers a full component round-trip, during which Livewire re-evaluates all component properties and their canonical server states. This re-evaluation incorrectly resets the wire:dirty trackers for all inputs, including those that were legitimately modified.

Solution

Removed the .blur modifier from the wire:model directive for the Domains input field. This changes the binding behavior to deferred synchronization (wire:model instead of wire:model.blur), meaning the input value will only sync to the server upon form submission.

Changes

  • Modified resources/views/livewire/project/application/general.blade.php to change wire:model.blur="application.fqdn" to wire:model="application.fqdn" on lines 93 and 98.

This change ensures that the Domains input no longer triggers a premature server sync on blur, thus preventing the incorrect reset of the form's dirty state and providing a smoother user experience.

@andrasbacsai andrasbacsai merged commit 51d232f into next Oct 16, 2025
4 checks passed
@andrasbacsai andrasbacsai deleted the andrasbacsai/service-textarea-focus branch October 16, 2025 07:59
This was referenced Oct 17, 2025
@github-actions github-actions bot locked as resolved and limited conversation to collaborators Nov 21, 2025
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants