refactor: replace USE_X11 with OS_LINUX for sharing code with Ozone#27
refactor: replace USE_X11 with OS_LINUX for sharing code with Ozone#27discabbage wants to merge 1 commit into
Conversation
🔍 PR Link Analysis🔗 Ranked Links#1 these Wayland patches🔍 The patches replace #2 going away🔍 Replacing USE_X11 with OS_LINUX is a necessary first step to enable Wayland support in Electron, as it allows code to be shared across display servers rather than being tied exclusively to X11. #3 commit guidelines🔍 This pull request replaces the USE_X11 preprocessor macro with OS_LINUX to enable sharing code between X11 and Wayland backends in Electron. #4 https://github.com/electron/electron/blob/master/CONTRIBUTING.md🔍 The contributor guidelines outline the project's code of conduct and issue reporting process, which is relevant to ensuring contributions like this Wayland support refactor follow proper procedures. #5 chromium#1085700🔍 The webpage content is empty, so no summary can be provided. #6 these chromium changes🔍 The change replaces the USE_X11 preprocessor macro with OS_LINUX to enable code sharing between X11 and Wayland builds in preparation for Ozone/Wayland support. |
Description of Change
This pull-request is a small first step in trying to bring support for Wayland to Electron. I'm planning to follow up on this with more pull-requests in an effort to upstream these Wayland patches.
However, those patches will need some adjustments in order to make them compatible with the upcoming Chromium changes (chromium#1085700) which will soon be merged into Electron (#25488). In particular, it should be taken into consideration that the
USE_X11andUSE_OZONEbuild flags are no longer mutually exclusive.Also,
USE_X11is going away so it might be desirable as a long term goal to remove it from Electron too and replace it with the Ozone equivalents.With that in mind, this pull-request replaces a few instances of
#if defined(USE_X11)with#if defined(OS_LINUX)where it was identified that the guarded code could be shared with Ozone.The more meaningful changes will come in the upcoming pull-requests but I'll be waiting for these chromium changes to be pulled into Electron first (#24984, #25488).
Checklist
npm testpassesRelease Notes
Notes: none