From: Kimmo R. <ki...@us...> - 2010-08-01 14:16:04
|
Update of /cvsroot/arianne/stendhal/src/games/stendhal/client In directory sfp-cvsdas-4.v30.ch3.sourceforge.com:/tmp/cvs-serv2271/src/games/stendhal/client Modified Files: GameScreen.java StendhalClient.java Log Message: suppress redraws while switching maps Index: GameScreen.java =================================================================== RCS file: /cvsroot/arianne/stendhal/src/games/stendhal/client/GameScreen.java,v retrieving revision 1.158 retrieving revision 1.159 diff -C2 -d -r1.158 -r1.159 *** GameScreen.java 1 Aug 2010 12:18:52 -0000 1.158 --- GameScreen.java 1 Aug 2010 14:15:54 -0000 1.159 *************** *** 453,456 **** --- 453,470 ---- @Override + public void paintImmediately(int x, int y, int w, int h) { + /* + * Try to keep the old screen while the user is switching maps. + * + * NOTE: Relies on the repaint() requests to eventually come to this, + * so if swing internals change some time in the future, a new solution + * may be needed. + */ + if (!StendhalClient.get().isInBatchUpdate()) { + super.paintImmediately(x, y, w, h); + } + } + + @Override protected void paintComponent(final Graphics g) { Collections.sort(views, entityViewComparator); Index: StendhalClient.java =================================================================== RCS file: /cvsroot/arianne/stendhal/src/games/stendhal/client/StendhalClient.java,v retrieving revision 1.223 retrieving revision 1.224 diff -C2 -d -r1.223 -r1.224 *** StendhalClient.java 1 Aug 2010 12:18:52 -0000 1.223 --- StendhalClient.java 1 Aug 2010 14:15:54 -0000 1.224 *************** *** 96,100 **** * Whether the client is in a batch update. */ ! private boolean batchUpdate; private final StendhalPerceptionListener stendhalPerceptionListener; --- 96,100 ---- * Whether the client is in a batch update. */ ! private volatile boolean batchUpdate; private final StendhalPerceptionListener stendhalPerceptionListener; |