-
Notifications
You must be signed in to change notification settings - Fork 157
use egl platform display #437
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Conversation
00f6aab to
cd33f62
Compare
|
@taka-okayama could you watch the repos? |
|
can anyone review this pr? I've read mesa source code and know why eglGetDisplay() does not crash on x86 desktop. mesa can check native display's first pointer and detect platform type with this hack, see https://gitlab.freedesktop.org/mesa/mesa/-/blob/mesa-25.0.7/src/egl/main/eglapi.c?ref_type=tags#L423 and https://gitlab.freedesktop.org/mesa/mesa/-/blob/mesa-25.0.7/src/egl/main/egldisplay.c#L125 proprietary drivers may not support this, for example arm mali drivers I tested on some rockchip boards, that's why egl paltform extension exists. |
|
Hi @taka-okayama, Could you help update elinux-common.zip? Thanks! |
|
@zxcv1884 I have a solution for both correct elinux-common.zip and wrong one w/o leaking gl resources, see https://github.com/wang-bin/fvp/blob/master/elinux/fvp_plugin.cc |
The DRM backend failed to translate between view property dimensions (specified in scaled pixels) and Flutter window mentrics (specified in physical pixels). This patch fixes two issues: first, given the DRM backend (questionably) overrides the dimensions specified by the application with the native window dimensions but neglects to compensate for the current scaling factor. Secondly, cursor and touch events are not correctly mapped from physical pixels to scaled pixels. Signed-off-by: Luke Howard <lukeh@padl.com>
|
This looks good to me, I've re-opened this as flutter-elinux#4 on the new repo and intend to merge it there in the next few days I'm not sure I fully understand the elinux-common.zip issue, right now it'll contain files timestamps as of the underlying filesystem when the zip was created, but the content is not meant to change (it's a snapshot of the state of this repo for a given release) so I don't see why the timestamp would be a problem for people only using the zip. |
These scripts are heavily based on what sony provided in [1], with the container environment / cross compilation and some details fixed up to allow rebuilding an older version more easily. If these scripts live in the source repo further improvements can be made to avoid cloning flutter-embedded-linux twice more, but they are good enough for now, so let's start with what we have. Link: sony/flutter-elinux#289 (comment) [1]
Build broke with gcc-15 due to `error: unknown type name 'uint8_t'` Adding cstdint fixes that.
issues do not exist in flutter-elinux repo, so original sony links were kept Also give thanks to sony for creating the fork
fix: add missing cstdint header
Fix DRM backend dimension scaling
flutter-elinux fork: update most URLs to github.com/flutter-elinux
publish release scripts
6784ca7 to
3c508f1
Compare
required if mutiple platforms are available, otherwise egl may call into x11 and crash even if gbm is desired. tested on rk3588
not required by mesa driver because platform type can be detected in eglGetDisplay() via native display.
required by arm mali driver if mutiple platforms are available, otherwise egl may call into x11 and crash even if gbm is desired. tested on rk3588