Skip to content

When the zoom level is configured from 100 to 150, the icons in Eclipse popup menus become blurry. #3582

Open

Description

@real2019

Summary: Popup menu icons are blurry when display zoom is changed at
runtime from 100% to 150%

Description:

Steps to Reproduce:

  1. Start Eclipse with the Windows display zoom set to 100%.
  2. Right-click any view (e.g., Project Explorer) to open a popup/context
    menu. The menu item icons are sharp at this step.
  3. Change the display zoom to 150%
    (Windows Settings -> System -> Display -> Scale: 150%).
  4. Do NOT restart Eclipse; right-click the same view again to open the
    popup menu.
  5. Observe that the menu item icons are now blurry.

Expected Behavior:
Popup menu icons remain sharp after a runtime zoom change, with the same
quality as when Eclipse is started directly at that zoom level.

Actual Behavior:
Icons in popup menus are blurry / pixelated after changing the zoom from
100% to 150% at runtime. Toolbar icons and other UI elements remain sharp.

Control tests (all performed on the same machine):

  • 100% -> 175% at runtime: NOT blurry.
  • Started Eclipse directly at 150%: NOT blurry.
  • Started at 100% then changed to 150% at runtime: BLURRY (only this
    combination triggers the issue).

=> The blur is specific to the runtime zoom-change path, not to the 150%
zoom level itself.

zoom level 150 image:
zoom level 150 Image

zoom level 175 image:

zoom level 175 Image

Environment:

  • OS: Windows 11 Pro 23H2 (64-bit)
  • Eclipse: 2026-03 (4.39.0)
  • JDK: Temurin 21.0.x
  • HiDPI mode: Windows per-monitor scaling, display zoom 150%

Additional Notes:
zoom level 150:

Activity

  1. HeikoKlare commented on Sep 10, 2026

    @HeikoKlare
    Contributor

    Can you please post the complete configuration of our product, including all VM arguments and the preference value for the monitor-specific UI scaling?
    We have experienced such wrong scaling of menu entries in the past and implemented quite some logic to produce properly scaled images and since then have not had any reports of such isues.
    The posted screenshots are inconclusive for me for different reasons:

    • The 150% image shows an overall much smaller UI than the 175% image, so the overall scaling of the application does not seem to be "correct".
    • The menu icons are not smoothly scaled, like it would be done by SWT, so there must be an OS mechanism kicking in.

    When I apply the described workflow, I get this (expected) result on 150%:
    Image

  2. real2019 commented on Sep 10, 2026

    @real2019
    Author

    eclipse.ini params:
    -startup
    plugins/org.eclipse.equinox.launcher_1.7.100.v20251111-0406.jar
    --launcher.library
    plugins/org.eclipse.equinox.launcher.win32.win32.x86_64_1.3.0.v20260203-2149
    -product
    org.eclipse.epp.package.rcp.product
    -showsplash
    org.eclipse.epp.package.common
    --launcher.defaultAction
    openFile
    --launcher.appendVmargs
    -vm
    plugins/org.eclipse.justj.openjdk.hotspot.jre.full.win32.x86_64_21.0.10.v20260205-0638/jre/bin
    -vmargs
    -XX:CompileCommand=quiet
    -XX:CompileCommand=exclude org.eclipse.jdt.internal.core.dom.rewrite.ASTRewriteAnalyzer::getExtendedRange
    -Dorg.eclipse.ecf.provider.filetransfer.excludeContributors=org.eclipse.ecf.provider.filetransfer.httpclientjava
    -Dosgi.requiredJavaVersion=21
    -Dosgi.instance.area.default=@user.home/eclipse-workspace
    -Dosgi.dataAreaRequiresExplicitInit=true
    -Dorg.eclipse.swt.graphics.Resource.reportNonDisposed=true
    -Declipse.e4.inject.javax.warning=false
    -Dsun.java.command=Eclipse
    -Declipse.platform.mergeTrust=true
    -XX:+UseG1GC
    -XX:+UseStringDeduplication
    --add-modules=ALL-SYSTEM
    -javaagent:D:\eclipse-new-2026\lombok.jar

    preference value for the monitor-specific:

    Image

    org.eclipse.ui.prefs:
    eclipse.preferences.version=1
    monitorSpecificScaling=true

    Please let me know if any other configuration is needed. If the problem is due to my setup, I would appreciate it if you could point out what is wrong.

  3. HeikoKlare commented on Sep 10, 2026

    @HeikoKlare
    Contributor

    Is your installation an older Eclipse release that you have updated? If yes, have you tried with a completely fresh Eclipse 2026-03 installation?
    If I remember correctly, we have replaced the Equinox executable configuration with 2026-03 and maybe that one is not updated properly and produces a wrong DPI awareness. I do currently not see any other differences to other/ordinary setups.

  4. real2019 commented on Sep 11, 2026

    @real2019
    Author

    It is indeed an extracted (zip) installation. There is also an older Eclipse version on this machine, installed the same way via extraction — they are in separate directories and I did not update over the old one.

    Windows dpi awareness infomation
    Image

  5. real2019 commented on Sep 14, 2026

    @real2019
    Author

    Addendum: Software launches with zoom 100. Setting Windows zoom to 150 causes blurriness. After switching zoom to 150 and restarting Eclipse, right‑click menu icons render sharp.

  6. HeikoKlare commented on Sep 14, 2026

    @HeikoKlare
    Contributor

    That means that monitor-specific scaling does not work properly, because no blurry scaling should happen when that option is activated. I don't see how that can happen. In particular, the application seems to be running with "PerMonitor V2" DPI awareness, according to your latest screenshot. Is there anything in the logs of your application pointing to an issue with activating monitor-specific scaling?

  7. real2019 commented on Sep 15, 2026

    @real2019
    Author

    Yes, the application is running under PerMonitorV2 DPI awareness.
    The blurry icon issue only occurs when starting Eclipse with Windows zoom set to 100%, then switching Windows display scaling to 150% without restarting Eclipse.
    After restarting Eclipse with Windows zoom already set to 150%, the right‑click menu icons become sharp.
    I have checked the application logs, and there is no error log related to monitor‑specific scaling activation.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions