diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/gpu/GpuPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/gpu/GpuPlugin.java index 869ac73eef..232dd9d351 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/gpu/GpuPlugin.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/gpu/GpuPlugin.java @@ -78,6 +78,7 @@ import net.runelite.api.SceneTilePaint; import net.runelite.api.Texture; import net.runelite.api.TextureProvider; import net.runelite.api.events.GameStateChanged; +import net.runelite.api.events.ResizeableChanged; import net.runelite.api.hooks.DrawCallbacks; import net.runelite.client.callback.ClientThread; import net.runelite.client.config.ConfigManager; @@ -1535,6 +1536,17 @@ public class GpuPlugin extends Plugin implements DrawCallbacks } } + @Subscribe + public void onResizeableChanged(ResizeableChanged resizeableChanged) + { + if (OSType.getOSType() == OSType.MacOS) + { + // switching resizable mode adjusts the canvas size, without adjusting + // the client size. queue the GLFBODrawable resize for later. + needsReset = 5; + } + } + private void uploadScene() { vertexBuffer.clear();