这是indexloc提供的服务,不要输入任何密码
Skip to content

Conversation

@leewyatt
Copy link
Collaborator

@leewyatt leewyatt commented May 2, 2025

Problem

Under normal conditions, the popup content of SelectionBox updates correctly when itemsProperty changes.

However, in a rare but valid edge case, the update may silently fail:

If the itemsProperty is bound and changes before the popup skin is initialized, the "updatePopupContent" flag is set too early and never consumed—because the listener hasn't been registered yet. This prevents future updates from triggering.

Solution

Move the popup.getProperties().remove(...) calls into the updatePopupContent() and updateSelectionInPopup() methods themselves. This ensures the trigger flags are always cleared after consumption, even during delayed skin initialization.

Moved the clearing of `UPDATE_POPUP_CONTENT` and `UPDATE_SELECTION_IN_POPUP` flags to ensure they are always removed after updates. This prevents future updates from being blocked and ensures proper popup behavior.
@leewyatt leewyatt requested a review from dlemmermann May 2, 2025 07:51
@sonarqubecloud
Copy link

sonarqubecloud bot commented May 2, 2025

@dlemmermann dlemmermann merged commit b475875 into master May 2, 2025
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants