Fix simulator skin scrollbar repaint - #5352
Merged
Merged
Conversation
Collaborator
Author
|
Compared 12 screenshots: 12 matched. |
Contributor
✅ Continuous Quality ReportTest & Coverage
Static Analysis
Generated automatically by the PR CI workflow. |
Collaborator
Author
|
Compared 144 screenshots: 144 matched. Native Android coverage
✅ Native Android screenshot tests passed. Native Android coverage
Benchmark ResultsDetailed Performance Metrics
|
Collaborator
Author
|
Compared 135 screenshots: 135 matched. |
Collaborator
Author
|
Compared 142 screenshots: 142 matched. Benchmark Results
Detailed Performance Metrics
|
Collaborator
Author
|
Compared 143 screenshots: 143 matched. Benchmark Results
Build and Run Timing
Detailed Performance Metrics
|
Collaborator
Author
|
Compared 139 screenshots: 139 matched. |
Collaborator
Author
|
Compared 216 screenshots: 216 matched. |
Collaborator
Author
|
Compared 137 screenshots: 137 matched. Benchmark Results
Build and Run Timing
Detailed Performance Metrics
|
shai-almog
added a commit
that referenced
this pull request
Jul 9, 2026
…paint (#5352) Conflict resolution: - VectorMapEngine: took master wholesale. #5350's hasRenderedVisibleTiles()/MapView.isMapReady() supersedes this branch's isViewportFullyRendered() -- same visible-tile-coverage idea, but the master probe also actively computes and REQUESTS the visible tile set, so it is deterministic even before the first paint. The branch-side duplicate is dropped. - VectorMapScreenshotBaseTest: master's isMapReady() probe (incl. the NativeMap branch), keeping this branch's two hardening pieces on top: the 30s wait cap (starved CI simulators exceeded the old 9s on heavy first renders) and the CN1SS:WARN when capturing at the cap so a slow leg attributes itself instead of surfacing as a mystery mismatch. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Fixes a JavaSE simulator skin scrollbar repaint gap that could leave Swing displaying stale Codename One pixels after the simulator scrollbar changed the canvas offset.
The scrollbar adjustment path updated
canvas.x/yand only requested a Swing repaint. That could redraw the existing retained buffer at a new offset without asking Codename One to repaint the current form, leaving the visible pixels out of sync with click routing until another CN1 repaint, such as scrolling, occurred.This PR requests a current-form repaint after the simulator scrollbar offset changes and adds a JavaSE regression test proving the CN1 repaint is requested.
Validation
mvn -pl javase -Plocal-dev-javase -DskipITs -DskipTests=false -Dtest=JavaSEPortSkinScrollbarTest,JavaSEPortWindowBoundsTest,DesktopChromeUITest test