Skip to content

Commit 8ccd10c

Browse files
Calculating height and width every time getBounds is called
1 parent 592917e commit 8ccd10c

File tree

1 file changed

+6
-18
lines changed
  • bundles/org.eclipse.swt/Eclipse SWT/win32/org/eclipse/swt/graphics

1 file changed

+6
-18
lines changed

bundles/org.eclipse.swt/Eclipse SWT/win32/org/eclipse/swt/graphics/Image.java

Lines changed: 6 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -2121,23 +2121,17 @@ private class ImageFileNameProviderWrapper extends AbstractImageProviderWrapper
21212121
*/
21222122
private final ImageFileNameProvider provider;
21232123
private boolean isDestroyed;
2124-
private int width;
2125-
private int height;
2126-
private final static int BASE_ZOOM = 100;
21272124

21282125
ImageFileNameProviderWrapper(ImageFileNameProvider provider) {
21292126
checkProvider(provider, ImageFileNameProvider.class);
21302127
this.provider = provider;
2131-
ImageHandle handleAt100 = getImageMetadata(BASE_ZOOM);
2132-
width = handleAt100.width;
2133-
height = handleAt100.height;
2134-
destroyHandle(BASE_ZOOM);
21352128
}
21362129

21372130
@Override
21382131
protected Rectangle getBounds(int zoom) {
2139-
Rectangle rectangle = new Rectangle(0, 0, width, height);
2140-
return DPIUtil.scaleBounds(rectangle, zoom, BASE_ZOOM);
2132+
ImageData imageData = getImageData(zoom);
2133+
Rectangle rectangle = new Rectangle(0, 0, imageData.width, imageData.height);
2134+
return rectangle;
21412135
}
21422136

21432137
@Override
@@ -2198,24 +2192,18 @@ private class ImageDataProviderWrapper extends AbstractImageProviderWrapper {
21982192
* ImageDataProvider to provide ImageData at various Zoom levels
21992193
*/
22002194
private final ImageDataProvider provider;
2201-
private int width;
2202-
private int height;
22032195
private boolean isDestroyed;
2204-
private final static int BASE_ZOOM = 100;
22052196

22062197
ImageDataProviderWrapper(ImageDataProvider provider) {
22072198
checkProvider(provider, ImageDataProvider.class);
22082199
this.provider = provider;
2209-
ImageHandle handleAt100 = getImageMetadata(BASE_ZOOM);
2210-
width = handleAt100.width;
2211-
height = handleAt100.height;
2212-
destroyHandle(BASE_ZOOM);
22132200
}
22142201

22152202
@Override
22162203
protected Rectangle getBounds(int zoom) {
2217-
Rectangle rectangle = new Rectangle(0, 0, width, height);
2218-
return DPIUtil.scaleBounds(rectangle, zoom, BASE_ZOOM);
2204+
ImageData imageData = getImageData(zoom);
2205+
Rectangle rectangle = new Rectangle(0, 0, imageData.width, imageData.height);
2206+
return rectangle;
22192207
}
22202208

22212209
@Override

0 commit comments

Comments
 (0)