Add website-targeted JavaScript Skin Designer integration#4758
Open
liannacasper wants to merge 29 commits intomasterfrom
Open
Add website-targeted JavaScript Skin Designer integration#4758liannacasper wants to merge 29 commits intomasterfrom
liannacasper wants to merge 29 commits intomasterfrom
Conversation
Contributor
Cloudflare Preview
|
Contributor
✅ Continuous Quality ReportTest & Coverage
Static Analysis
Generated automatically by the PR CI workflow. |
Collaborator
|
Compared 7 screenshots: 7 matched. |
Replace the stacked ImageViewer + overlay with a single custom Component. Eliminate per-drag full-image allocation from createMute, add Screen/Safe/Pan mode toggles so the safe area can be moved independently, and let zoom operate on one shared view so overlay and skin no longer desync. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Add a 'Use Safe Area' toggle on each image card; when off, the safe area fields disable and the save file uses the screen values for safe area. When on, defaults clamp safe area to stay inside the screen and the aim form constrains safe-mode drags to the screen rect. Polish the aim form: style all nav buttons consistently with center alignment, give every control a tooltip, show a ToastBar hint when switching modes (especially Pan), give the form a title, and wire a back command to the cancel action so ESC / system back still exits cleanly even if the Cancel button is tapped through content. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
- Save the calling form on entry and call previousForm.showBack() on Done/Cancel. Form.showBack() re-shows the form it is called on, so calling it on the aim form was a no-op; that is why Done and Cancel appeared unresponsive. - Remove the Pan mode button and constant. Zoom in/out now auto-center the view on the currently active rectangle, which covers the use case Pan mode was supposed to address. - Add mirrored X / Y / W / H TextFields inside the aim form for both screen and safe area. Edits commit to the main form fields and the view repaints; drags/nudges propagate back into the mirror fields. - Add drag-to-resize on the safe area: press near an edge or corner to resize, press in the interior to move. Draw small handles at the corners and edge midpoints when Safe mode is active. - Show a single entry ToastBar when the aim form opens that explains how to drag, resize, and enter numeric values. Co-Authored-By: Claude Opus 4.7 (1M context) <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.
Motivation
Description
ShouldExecuteimplementation for the JavaScript port that returnstrueand posts acn1-skindesigner-ui-readymessage to the parent page to support embedded hosting (file:scripts/skindesigner/javascript/src/main/javascript/com_codename1_tools_skindesigner_ShouldExecute.js)./skindesigner/with loading UI and dark-mode sync (files:docs/website/content/skindesigner.mdanddocs/website/layouts/_default/skindesigner.html).docs/website/hugo.toml.scripts/website/build.shto optionally build and extract the Skin Designer JavaScript bundle intodocs/website/static/skindesigner-appusingWEBSITE_INCLUDE_SKINDESIGNER, following the same pattern used for Playground/Initializr.Testing
bash -n scripts/website/build.shwhich reported no syntax errors in the modified build script.sh ./mvnw -q -pl javascript -am -DskipTests -Dcodename1.platform=javascript packageinscripts/skindesigner, but the build failed in this environment due to missing Java 8 (JAVA_HOMEpath not present) and network/maven wrapper download errors (java.net.SocketException: Network is unreachable).Codex Task