fix: Native platform - LwjglCanvas (example)#2646
fix: Native platform - LwjglCanvas (example)#2646JNightRider wants to merge 2 commits intojMonkeyEngine:masterfrom
Conversation
Summary of ChangesHello, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed! This pull request resolves a compatibility issue for the Highlights
Using Gemini Code AssistThe full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips. Invoking Gemini You can request assistance from Gemini at any point by creating a comment using either
Customization To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a Limitations & Feedback Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for GitHub and other Google products, sign up here. Footnotes
|
There was a problem hiding this comment.
Code Review
This pull request addresses an issue with running AWT-based examples on Linux with Wayland by forcing the use of an X11 context. The change is correct and well-contained within the example. The suggestion to include a comment explaining the purpose of this setting for future reference is valid and will improve code clarity for other developers looking at this example.
| @SuppressWarnings("unchecked") | ||
| public static void createCanvas(String appClass){ | ||
| AppSettings settings = new AppSettings(true); | ||
| settings.setX11PlatformPreferred(true); |
There was a problem hiding this comment.
While the PR description explains the reason for this change, it would be beneficial to add a comment here in the code. This example serves as a reference for users, and a comment would clarify why this setting is necessary for AWT canvas integration on platforms like Wayland.
| settings.setX11PlatformPreferred(true); | |
| // On Linux with Wayland, AWT/Swing requires an X11 context. | |
| // This forces the jME context to use X11 (via GLX) to be compatible. | |
| settings.setX11PlatformPreferred(true); |
Since lwjgl3 is the default module in the jme3 examples, enabling (forcing) it to use x11 for the awt canvas is already part of this example to make it work on Wayland (and not appear to have a bug)... since awt/swing still relies on x11 to manage its graphical components (this does not affect functionality on other platforms except Linux with Wayland).