# HG changeset patch # User shade # Date 1497550153 -7200 # Node ID a5a481b5605963908d9860f9938f00c9c4fd5eaa # Parent e22defb2a606eaa2e570d654cb652442460b0fba Fix incorrect grid size calculation, resulting in drawing area overflow. diff -r e22defb2a606 -r a5a481b56059 src/main/java/org/openjdk/shenandoah/Colors.java --- a/src/main/java/org/openjdk/shenandoah/Colors.java Tue Jun 13 13:20:06 2017 +0200 +++ b/src/main/java/org/openjdk/shenandoah/Colors.java Thu Jun 15 20:09:13 2017 +0200 @@ -20,4 +20,6 @@ static final Color LIVE_BORDER = new Color(0, 100, 0); static final Color CSET = Color.YELLOW; static final Color HUMONGOUS = Color.RED; + + static final Color BORDER = new Color(150, 150, 150); } diff -r e22defb2a606 -r a5a481b56059 src/main/java/org/openjdk/shenandoah/RegionStat.java --- a/src/main/java/org/openjdk/shenandoah/RegionStat.java Tue Jun 13 13:20:06 2017 +0200 +++ b/src/main/java/org/openjdk/shenandoah/RegionStat.java Thu Jun 15 20:09:13 2017 +0200 @@ -136,7 +136,7 @@ g.fillOval(x + width/2, y + height/2, width/4, height/4); } - g.setColor(Color.GRAY); + g.setColor(Colors.BORDER); g.drawRect(x, y, width, height); } diff -r e22defb2a606 -r a5a481b56059 src/main/java/org/openjdk/shenandoah/ShenandoahVisualizer.java --- a/src/main/java/org/openjdk/shenandoah/ShenandoahVisualizer.java Tue Jun 13 13:20:06 2017 +0200 +++ b/src/main/java/org/openjdk/shenandoah/ShenandoahVisualizer.java Thu Jun 15 20:09:13 2017 +0200 @@ -288,6 +288,7 @@ for (String key : items.keySet()) { int y = (int) (i * sqSize * 1.5); items.get(key).render(g, 0, y, sqSize, sqSize); + g.setColor(Color.BLACK); g.drawString(key, (int) (sqSize * 1.5), y + sqSize); i++; } @@ -296,15 +297,15 @@ public synchronized void renderRegions(Graphics g) { int area = regionWidth * regionHeight; int sqSize = Math.max(1, (int) Math.sqrt(1D * area / snapshot.regionCount())); - int cellSize = sqSize + 3; - int cols = regionWidth / cellSize; + int cols = regionWidth / sqSize; + int cellSize = sqSize - 2; for (int i = 0; i < snapshot.regionCount(); i++) { - int rectx = (i % cols) * cellSize; - int recty = (i / cols) * cellSize; + int rectx = (i % cols) * sqSize; + int recty = (i / cols) * sqSize; RegionStat s = snapshot.get(i); - s.render(g, rectx, recty, sqSize, sqSize); + s.render(g, rectx, recty, cellSize, cellSize); } Color BASE = new Color(0, 0, 0, 20);