From bd18c4cbb1465a9213c1a7159fd4d88ee302430a Mon Sep 17 00:00:00 2001 From: Michael Bayne Date: Fri, 2 May 2003 18:12:34 +0000 Subject: [PATCH] If a block finishes resolution after it's already become visible, repaint its bounds immediately rather than waiting for the remaining queued blocks to be resolved. git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2525 542714f4-19e9-0310-aa3c-eee0fc999fb1 --- src/java/com/threerings/miso/client/MisoScenePanel.java | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/java/com/threerings/miso/client/MisoScenePanel.java b/src/java/com/threerings/miso/client/MisoScenePanel.java index 177f77c88..c73fc9f55 100644 --- a/src/java/com/threerings/miso/client/MisoScenePanel.java +++ b/src/java/com/threerings/miso/client/MisoScenePanel.java @@ -1,5 +1,5 @@ // -// $Id: MisoScenePanel.java,v 1.25 2003/05/02 18:09:56 mdb Exp $ +// $Id: MisoScenePanel.java,v 1.26 2003/05/02 18:12:34 mdb Exp $ package com.threerings.miso.client; @@ -684,6 +684,13 @@ public class MisoScenePanel extends VirtualMediaPanel Rectangle sbounds = block.getScreenBounds(); if (!_delayRepaint && sbounds != null && sbounds.intersects(_vbounds)) { Log.warning("Block visible during resolution " + block + "."); + // if we have yet further blocks to resolve, queue up a + // repaint now so that we get this data onscreen as quickly as + // possible + if (_pendingBlocks > 1) { + recomputeVisible(); + _remgr.invalidateRegion(sbounds); + } } // once all the pending blocks have completed their resolution,