-
Notifications
You must be signed in to change notification settings - Fork 139
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
[win32] workaround for ImageDataProvider implementation #1569
[win32] workaround for ImageDataProvider implementation #1569
Conversation
Test Results 483 files ±0 483 suites ±0 9m 36s ⏱️ + 1m 45s For more details on these failures, see this check. Results for commit bb4f693. ± Comparison against base commit ce2795a. ♻️ This comment has been updated with latest results. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Workaround looks acceptable to me. We target the proper solution as a replacement for M1.
Can you please re-check the description for how to reproduce? I was not able to reproduce the behavior and I am not sure what point 6 is supposed to say. Should it be moving back to the 100% monitor?
Move the workbench window from the 125% to the 125% monitor.
Still, if I do that, everything looks fine even on master.
bundles/org.eclipse.swt/Eclipse SWT/win32/org/eclipse/swt/graphics/Image.java
Outdated
Show resolved
Hide resolved
bundles/org.eclipse.swt/Eclipse SWT/win32/org/eclipse/swt/graphics/Image.java
Outdated
Show resolved
Hide resolved
This commit adds a workaround for ImageDataProvider implementations that instantiate new Images inside the getImageData(zoom) implementation. This image can be instantiated with the wrong zoom in a multi zoom setting as Images still relay on the static zoom value in DPIUtil. This workaround should be replaced by a proper solution. Contributes to eclipse-platform#62 and eclipse-platform#131
1237105
to
bb4f693
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Failing tests are documented and unrelated: #1564 |
This commit adds a workaround for ImageDataProvider implementations that instantiate new Images inside the getImageData(zoom) implementation. This image can be instantiated with the wrong zoom in a multi zoom setting as Images still relay on the static zoom value in DPIUtil. This workaround should be replaced by a proper solution.
How to reproduce
You can reproduce the behavior as follows:
Now the icons are scaled incorrectly for the active part stack. As soon as you switch focus to some other application again, the icons will be rescaled correctly.
Important note: This is not a permanent solution for this issue, but (due to being quite late in the current development cycle) meant as workaround for the 2024-12 release. A proper solution will require an API change, which is not possible now. I tried to implement the workaround as least invasive as possible