-
Notifications
You must be signed in to change notification settings - Fork 0
Description
Description
Caret does not rescale correctly when moving from high to low zoom levels (e.g., 250% → 100%) while the editor is focused and the caret is visible.
I have observed this issue in both the IDE and the runtime workspace. In the runtime workspace, it occurs only when multiple projects are open (for example, when I have EGit projects imported). With very few projects in the workspace, this issue does not appear.
I suspect this may be related to an asynchronous DPI change, although I don’t see any background tasks running in the progress viewer at the time. If I change the async DPI change call in handleMonitorSpecificDpiChange to false I no longer have the issue
@@ -2526,7 +2526,7 @@ private void handleMonitorSpecificDpiChange(int newNativeZoom, Rectangle newBoun
// Do not process DPI change for child shells asynchronous to avoid relayouting when
// repositioning the child shell to a different monitor upon opening
boolean processDpiChangeAsynchronous = getParent() == null;
- Event zoomChangedEvent = createZoomChangedEvent(newNativeZoom, processDpiChangeAsynchronous);
+ Event zoomChangedEvent = createZoomChangedEvent(newNativeZoom, false);Here is a screenshot showing the caret when switching from 250% to 100% with the caret visible:

Metadata
Metadata
Assignees
Labels
Type
Projects
Status