Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

High DPI open issues

Open issues for bug 399786 in http://git.eclipse.org/c/platform/eclipse.platform.swt.git/log/?h=slakkimsetti/HighDPIChangesforNeon

Problem Platform Owner Status
1 Status line . The position of right side status like writable/gc condition not appearing correctly GTK/Win32 Markus Fixed. org.eclipse.e4.ui.workbench.renderers.swt.TrimBarLayout is causing some problem.. skipping Auto-scale for this particular layout instance in SWT fixes the problem.
2 ImageBasedFrame from platform UI nor rendering correctly Fixed.
3 In tasklist view the help button is out of the task view boundary
4 The error icon for compilation unit is not correct if the class is abstract also the icon is cut on the top and bottom
    • Sravan
      • This problem is rounding problem in 150% zoom. When we switch to Provider based Api this will go away
150% only
5 Splash screen is clipped - size wrong
6 Dynamic change of scaling factor: SWT should adapt automatically GTK3
7 At 200% zoom, StyledText#computeSize(..), Link#computeSizeInPixels(...), etc. often throw an IAE. Example: Search > Java... . The problem is that clients expect TextLayout#getWidth() to return -1 if wrapping is disabled. This should:
  • be documented in the API
  • be fixed in the implementations of TextLayout#getWidth() and TextLayout#setWidth(int)

TextLayout's ascent & descent properties look like they also need similar *InPixels(..) getters and setters that treat -1 specially. There could be more such cases, also in other classes.

    • Sravan
      • Fixed this issue
      • if I make *InPixels(..) getters and setters TextLayout's ascent and descent are causing trouble with styled text due to rounding error this may require change in the Styled text for rounding error.
GTK3 200% Sravan Fixed
8 Would be good to have a way to enforce a given zoom level for debugging purposes. E.g. on Ubuntu 14.04, I couldn't set the scale factor to 2 when I only had a 1680x1050 display attached. I hacked DPIUtil#setDeviceZoom(int) to add a system property "org.eclipse.swt.internal.deviceZoom", but this still left the rendered fonts unzoomed.
    • I specifically made a change in OS.java to set the flag GDK_SCALE to resolve this problem. This is working for snippet367. but for eclipse we need to make the same change in launcher.
    • workaround for this is set the environment variable GDK_SCALE to 1 before starting eclipse or set this in run configuration
All Sravan Fixed in launcher
9 APIs: eliminate all unnecessary API additions like TextLayout#getWidthInPixels(). The Javadoc on the internal *InPixels(...) methods should be removed. They are wrong (don't tell that they deal with pixels), redundant (thereby risking wrong updates in the future), and against SWT's traditions (don't document internal APIs unless there's something important to say).

To find API changes, select the org.eclipse.swt project and use Compare With > API Baseline... . Choose the current I-build as baseline.
GTK3
10 Eclipse SDK main toolbar doesn't wrap properly: Quick Access field and perspective switcher disappear when window gets resized. GTK3/Win32 150% Markus Fixed. org.eclipse.e4.ui.workbench.renderers.swt.TrimBarLayout is causing some problem.. skipping Auto-scale for this particular layout instance in SWT fixes the problem.
11 CustomControlExample > CTabFolder:
  • preferred height too small: Cut at the bottom
  • Minimize/Maximize icons get a red shadow on the right/bottom. Looks like a problem with transparency. When I change the transparent color in CTabFolder#createButtonImage(...) to 0, 0xFD, 0, then the shadow becomes green.
GTK3 150%
12 OwnerDraw Tree can paint outside of clipping. Also reproducible at 100%. Example: Expand JRE System Library in Package Explorer. Put focus into Package Explorer / editor / other views, or resize the window. GTK3 Markus Fixed, see bug 446075 comment c69. The problem was an atrocious hack that killed code that called GC#setClipping(Rectangle) instead of GC#setClipping(int, int, int, int).
13 Tab width not scaled.

In StyledText, tab widths are not scaled. Probably a problem in TextLayout#setTabs(int[]) or other code that works with TextLayout#tabs.
GTK3@200%, Win@200%
14 Widget#DEFAULT_WIDTH/HEIGHT need to be auto-scaled.

Example: ControlExample > Canvas > Size: Preferred
GTK3@200%, Win@200%

Back to the top