mirror of
https://github.com/PaperMC/Paper.git
synced 2025-01-17 06:48:23 +01:00
Some small touchups to the GUI (#11505)
As noted on the issue, the method here can blow up in certain cases, the GUI logic already handles "the mouse is missing", and so, we'll just catch this and move on. Misc fix - There is probably an issue report for this somewhere, but, the details section utilised the bukkit singleton to try to get the TPS from the server. We already have the MinecraftServer instance passed into us, and so we'll just get the information directly from there instead. Fixes: #11494
This commit is contained in:
parent
9ad769150f
commit
5912598c02
2 changed files with 20 additions and 3 deletions
|
@ -15,7 +15,12 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
|
||||||
GraphData data = RAMGraph.DATA.peekLast();
|
GraphData data = RAMGraph.DATA.peekLast();
|
||||||
Vector<String> vector = new Vector<>();
|
Vector<String> vector = new Vector<>();
|
||||||
+
|
+
|
||||||
+ double[] tps = org.bukkit.Bukkit.getTPS();
|
+ // Follows CraftServer#getTPS
|
||||||
|
+ double[] tps = new double[] {
|
||||||
|
+ server.tps1.getAverage(),
|
||||||
|
+ server.tps5.getAverage(),
|
||||||
|
+ server.tps15.getAverage()
|
||||||
|
+ };
|
||||||
+ String[] tpsAvg = new String[tps.length];
|
+ String[] tpsAvg = new String[tps.length];
|
||||||
+
|
+
|
||||||
+ for ( int g = 0; g < tps.length; g++) {
|
+ for ( int g = 0; g < tps.length; g++) {
|
||||||
|
|
|
@ -313,7 +313,14 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
|
||||||
+ Runtime jvm = Runtime.getRuntime();
|
+ Runtime jvm = Runtime.getRuntime();
|
||||||
+ DATA.add(new GraphData(jvm.totalMemory(), jvm.freeMemory(), jvm.maxMemory()));
|
+ DATA.add(new GraphData(jvm.totalMemory(), jvm.freeMemory(), jvm.maxMemory()));
|
||||||
+
|
+
|
||||||
+ PointerInfo pointerInfo = MouseInfo.getPointerInfo();
|
+ PointerInfo pointerInfo = null;
|
||||||
|
+ // I think I recall spotting a bug report where this throwed an exception once
|
||||||
|
+ // not sure it's of concern here
|
||||||
|
+ try {
|
||||||
|
+ pointerInfo = MouseInfo.getPointerInfo();
|
||||||
|
+ } catch (NullPointerException | ArrayIndexOutOfBoundsException ignored) {
|
||||||
|
+ // https://bugs.openjdk.org/browse/JDK-6840067
|
||||||
|
+ }
|
||||||
+ if (pointerInfo != null) {
|
+ if (pointerInfo != null) {
|
||||||
+ Point point = pointerInfo.getLocation();
|
+ Point point = pointerInfo.getLocation();
|
||||||
+ if (point != null) {
|
+ if (point != null) {
|
||||||
|
@ -360,7 +367,12 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
|
||||||
+ graphics.setColor(new Color(0xFF000000));
|
+ graphics.setColor(new Color(0xFF000000));
|
||||||
+ graphics.drawRect(0, 0, 348, 100);
|
+ graphics.drawRect(0, 0, 348, 100);
|
||||||
+
|
+
|
||||||
+ Point m = getMousePosition();
|
+ Point m = null;
|
||||||
|
+ try {
|
||||||
|
+ m = getMousePosition();
|
||||||
|
+ } catch (NullPointerException ignored) {
|
||||||
|
+ // https://bugs.openjdk.org/browse/JDK-6840067
|
||||||
|
+ }
|
||||||
+ if (m != null && m.x > 0 && m.x < 348 && m.y > 0 && m.y < 100) {
|
+ if (m != null && m.x > 0 && m.x < 348 && m.y > 0 && m.y < 100) {
|
||||||
+ GraphData data = DATA.get(m.x);
|
+ GraphData data = DATA.get(m.x);
|
||||||
+ int used = data.getUsedPercent();
|
+ int used = data.getUsedPercent();
|
||||||
|
|
Loading…
Reference in a new issue