UI logic update