Adding in ye' old McHack until I can figure out what is actually booched with the macs copyarea. This lets the game play all happy like.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2950 542714f4-19e9-0310-aa3c-eee0fc999fb1
This commit is contained in:
@@ -1,5 +1,5 @@
|
|||||||
//
|
//
|
||||||
// $Id: VirtualMediaPanel.java,v 1.23 2003/11/12 21:47:09 ray Exp $
|
// $Id: VirtualMediaPanel.java,v 1.24 2004/02/05 18:53:00 eric Exp $
|
||||||
|
|
||||||
package com.threerings.media;
|
package com.threerings.media;
|
||||||
|
|
||||||
@@ -322,6 +322,24 @@ public class VirtualMediaPanel extends MediaPanel
|
|||||||
width - Math.abs(_dx),
|
width - Math.abs(_dx),
|
||||||
height - Math.abs(_dy), -_dx, -_dy);
|
height - Math.abs(_dy), -_dx, -_dy);
|
||||||
gfx.translate(_abounds.x, _abounds.y);
|
gfx.translate(_abounds.x, _abounds.y);
|
||||||
|
} else if (RunAnywhere.isMacOS()) {
|
||||||
|
try {
|
||||||
|
gfx.copyArea(cx, cy,
|
||||||
|
width - Math.abs(_dx),
|
||||||
|
height - Math.abs(_dy), -_dx, -_dy);
|
||||||
|
} catch (Exception e) {
|
||||||
|
// HACK when it throws an exception trying to do the
|
||||||
|
// copy area, just tag the are we were trying to copy
|
||||||
|
// to onto the end of the dirty rects array.
|
||||||
|
int length = dirty.length;
|
||||||
|
Rectangle[] ndirty = new Rectangle[length + 1];
|
||||||
|
System.arraycopy(dirty, 0, ndirty, 0, length);
|
||||||
|
ndirty[length] =new Rectangle(_vbounds.x + cx-_dx,
|
||||||
|
_vbounds.y + cy-_dy,
|
||||||
|
width - Math.abs(_dx),
|
||||||
|
height - Math.abs(_dy));
|
||||||
|
dirty = ndirty;
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
gfx.copyArea(cx, cy,
|
gfx.copyArea(cx, cy,
|
||||||
width - Math.abs(_dx),
|
width - Math.abs(_dx),
|
||||||
|
|||||||
Reference in New Issue
Block a user