Repository navigation
Integrate native desktop title areas and fix editor input and MCP dialogs - #6019
Conversation
|
@codex review |
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
|
Developer Guide build artifacts are available for download from this workflow run:
Developer Guide quality checks: |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 13d84a7443
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
Cloudflare Preview
|
|
Compared 170 screenshots: 170 matched. Native Android coverage
✅ Native Android screenshot tests passed. Native Android coverage
Benchmark ResultsDetailed Performance Metrics
|
|
Compared 206 screenshots: 206 matched. |
|
@codex review |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 5da72321f0
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
|
@codex review |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 5f96845573
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
|
@codex review |
|
Codex Review: Didn't find any major issues. Another round soon, please! Reviewed commit: ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
If Codex has suggestions, it will comment; otherwise it will react with 👍. Codex can also answer questions or update the PR. Try commenting "@codex address that feedback". |
|
Compared 185 screenshots: 185 matched. Benchmark ResultsDetailed Performance Metrics
ParparVM vs HotSpot (JDK 25): Windows x64Runner CPU: AMD64 Family 25 Model 1 Stepping 1, AuthenticAMD (baseline Ratios are ParparVM / JDK 25: below 1.00x ParparVM is faster (time) or smaller (RAM). Median of 5 interleaved, paired rounds; every run's output was verified. A ratio more than 15% (time) / 15% (RAM) away from its baseline in
Result: no regression |
✅ Continuous Quality ReportTest & Coverage
Static Analysis
Generated automatically by the PR CI workflow. |
|
Compared 185 screenshots: 185 matched. ParparVM vs HotSpot (JDK 25): Linux x64Runner CPU: AMD EPYC 7763 64-Core Processor (baseline Ratios are ParparVM / JDK 25: below 1.00x ParparVM is faster (time) or smaller (RAM). Median of 5 interleaved, paired rounds; every run's output was verified. A ratio more than 15% (time) / 15% (RAM) away from its baseline in
Result: no regression |
|
Compared 185 screenshots: 185 matched. ParparVM vs HotSpot (JDK 25): Linux arm64Runner CPU: Neoverse-N2 (baseline Ratios are ParparVM / JDK 25: below 1.00x ParparVM is faster (time) or smaller (RAM). Median of 5 interleaved, paired rounds; every run's output was verified. A ratio more than 15% (time) / 15% (RAM) away from its baseline in
Result: no regression |
|
Compared 185 screenshots: 185 matched. Benchmark ResultsDetailed Performance Metrics
|
|
@codex review |
|
Codex Review: Didn't find any major issues. Keep it up! Reviewed commit: ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
If Codex has suggestions, it will comment; otherwise it will react with 👍. Codex can also answer questions or update the PR. Try commenting "@codex address that feedback". |
|
Compared 185 screenshots: 185 matched. Benchmark ResultsDetailed Performance Metrics
ParparVM vs HotSpot (JDK 25): Windows arm64Runner CPU: ARMv8 (64-bit) Family 8 Model D49 Revision 0, MICROSOFT CORPORATION (baseline Ratios are ParparVM / JDK 25: below 1.00x ParparVM is faster (time) or smaller (RAM). Median of 5 interleaved, paired rounds; every run's output was verified. A ratio more than 15% (time) / 15% (RAM) away from its baseline in
Result: no regression |
✅ ByteCodeTranslator Quality ReportTest & Coverage
Benchmark Results
Static Analysis
Generated automatically by the PR CI workflow. |
|
Compared 167 screenshots: 167 matched. Benchmark Results
Detailed Performance Metrics
|
|
Compared 236 screenshots: 236 matched. |
|
Compared 179 screenshots: 179 matched. Benchmark Results
Detailed Performance Metrics
ParparVM vs HotSpot (JDK 25): macOS arm64Runner CPU: Apple M1 (Virtual) (baseline Ratios are ParparVM / JDK 25: below 1.00x ParparVM is faster (time) or smaller (RAM). Median of 5 interleaved, paired rounds; every run's output was verified. A ratio more than 15% (time) / 15% (RAM) away from its baseline in
Result: no regression |
|
@codex review |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 6094645afb
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
|
@codex review |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: b74dc0886c
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
|
@codex review |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: ba1172ca65
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
|
@codex review |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 8f3119a162
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
|
@codex review |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: b8acc0c8a9
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
|
@codex review |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: bed59be638
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
|
@codex review |
|
Codex Review: Didn't find any major issues. Already looking forward to the next diff. Reviewed commit: ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
If Codex has suggestions, it will comment; otherwise it will react with 👍. Codex can also answer questions or update the PR. Try commenting "@codex address that feedback". |
Native document editors exposed several shared framework failures: custom title bars intercepted controls, native dialogs lost their first text-input session, iOS geometry callbacks could deadlock against rendering, and opening a modal dialog through MCP blocked the connection needed to dismiss it. This PR fixes those paths and provides the framework baseline intended for Codename One 7.0.277, so the remaining Word-style editor features can build on a released version.
Desktop chrome: integrate application title content with real AppKit, Windows DWM and GTK window controls. Reserve native-control space automatically, including physical left/right placement, DPI and theme changes; route blank title areas and resizing to the OS while excluding application controls. Preserve AppKit dragging and the system double-click preference; preserve native controls, reopen minimized windows, bridge custom-toolbar side-menu commands, refresh native hit regions when drag eligibility changes, suppress AppKit default document creation after handling reopen, clear native and fallback drag regions when the toolbar is hidden or removed before its first paint, apply the Maven title-bar hint before application initialization; retain Linux touch ownership across caption/control boundaries; update Windows DPI before rebuilding physical-unit fonts and layout, and reapply the DWM frame margin on the same DPI event; and invalidate the macOS layout after asynchronous title-inset changes.
Dialogs and files: measure native dialogs against their owner, bind input only after the native peer exists, restore owner focus, keep main-window rendering on its own surface, and use document-owned asynchronous macOS file sheets with support for custom extensions and request IDs so sheets can complete independently across windows. Keep timeout expiration on the EDT while modal workers only observe the volatile disposed flag; retain custom-extension data conformance without the deprecated iOS UTI constant.
Text input: dispatch rich clipboard and multiline Tab commands to the editor, serialize subsequent native edits until Java acknowledges each command, guard AppKit state echoes on the main queue, resolve keyboard layout from the active editor's top level and restore padding only on that owner, and answer synchronous native geometry queries from immutable
TextInputGeometrysnapshots captured on the EDT. Built-in editors provide visible-layout snapshots with bulk caret measurement per directional run, visible-line selection geometry, and half-open caret hit testing. Publish geometry with its matching native shadow state on the main queue, reject stale echoes, and ignore callbacks from replaced sessions. Snapshots refresh after layout, scrolling, and native selection changes; pure editors reveal the caret in both keyboard layout modes. Custom editors can provide their own layout snapshot.Accessibility and MCP: activate buttons/list items without requiring hardware key mappings or depending on pointer-drag state; add
ui_windowsand optionalwindowIdtargeting; reject actions on modal-blocked windows; return an explicit pending response when a modal handler is suspended so subsequent MCP requests can operate the dialog.Concurrent backend builds: stage runtime resources in each build's private directory and prepend it to that translator's classpath. Copying into shared
ByteCodeTranslator/target/classestruncated files while other test forks read them, allowing incomplete generated headers/sources.Includes regression tests and developer-guide documentation for the title-bar, geometry-provider and MCP contracts. The existing ZIP APIs are already on the base branch. Application document features and benchmark claims are outside this PR; no release version is changed here.
Validation for
4c7e35efd9:WM_DPICHANGED, continued routing to the outer resize handler, and no custom-margin updates in native-frame mode. The DWM call observer delegates to the real imported API. Wine exposes no compositor here, so physical mixed-DPI/DWM visual acceptance remains separate. The disposable Wine container was removed.git diff --checkpasses. No Java or workflow changes in this follow-up.Earlier validation for
bed59be638uses Java 8 and the same unique isolated Maven repository:ffmpeg-platform:7.1-1.5.11artifact. Maven Central serves the artifact; the workflow's download-failure filter now recognizesCould not resolve dependencies. Local replay confirms that this resolution failure retries while compilation and test failures stop immediately. Actionlint passes.Earlier validation through
b8acc0c8a9:verify: 45 tests pass across desktop chrome, iOS text geometry, editor snapshots, and Mac file-sheet requests. PMD, SpotBugs, and Checkstyle each report zero findings; the required-report quality gate passes.stringBuildingmemory gate: pool three existing five-round runs on AMD Family 26 Model 2 to 0.267x, preserving the 35% memory tolerance, 0.05x floor, and timing baseline. All 26 metrics in each of the three reports pass local gate replay. Source jobs, artifact hashes, measurements, and reproduction document the calibration; no native workflow was dispatched or rerun.git diff --checkpass.verifypassed 7,800 tests after one intermittent telemetry-listener failure in its initial run; 149 dialog tests passed on both Java 8 and Java 21; backend runtime-resource isolation and Latin-1/virtual-thread checks passed locally; native Windows compilation/Wine routing, guide compilation/Vale, and live MCP dialog checks passed. These earlier results do not establish new cross-platform application acceptance.Scope and acceptance boundaries: