JDK 1.4.2 and full-screen mode

Hi all,
I'm messing around with a 2D-elite clone using Java 1.4 full-screen mode. After a few hours of work I am happily zapping asteroids and aliens at a zippy 140 FPS.
I then switch from JDK 1.4.0_01 to 1.4.2_01 in the hope of getting some extra speed. Without making any other changes to the code, things suddenly start crawling along at <30 FPS.
I am using BufferStrategy in combination with a VolatileImage to draw everything on. Did I miss any important changes in the newest release of the JDK or am I doing something fundamentally wrong?
Raf

Hi Abuse,
Thanks for answering. First of all, my speed calculations are a bit crufty. In my main thread, I do a System.currentTimeMillis() every 1000th call. I consider 10^6 / (this time in ms - last time in ms) to be the speed in FPS. It's probably wildly off, but the difference in speed between the two JDKs is noticeable even without the numbers.
Posting all of the code is going to be a bit difficult because there's quite a few classes in the project. However, I'll try to isolate the relevant code below.
At this point, I'm not entirely convinced that the drawing is the problem. I'm using a shoddy integrated video card which may be causing the issues, but even if I only draw the background starfield I see a significant drop in speed. I'll try to disable some code here and there in the hope of finding something more specific.
I'm playing some music in the background and there is rather a lot of collision-handling code going on, maybe that's the bottle-neck. When you bump into stuff, the trajectory of your ship and whatever you rammed is altered depending on weight, velocity and angle. It's a lot of fun to watch but still quite buggy at this point. (I've got a planet on-screen which acts rather like a beach-ball when I ram it).
Anyhow, here's the rendering code:
This class takes care of the initialization of the full-screen mode.
Actual drawing is done in the Level class below.
public class Main implements Runnable {
    private long lastTime = System.currentTimeMillis();
    double frameCount = 0;
    public static final int BUFFER_COUNT = 1;
    private JFrame frame;
    BufferStrategy bufferStrategy;
    GraphicsDevice device;
    private BigScreen screen;
    private static final int DRAW_DELAY = 5;
    public static void main(String[] args) {
        Main main = new Main();
    public Main() {
        this.initializeSettings();
        this.initializeGUI();
        new Thread(this).start();
        new Thread(new HouseKeeping()).start();
    private void initializeSettings() {
        Tools.loadEntityTypes();
        SoundManager.getHandle().playMusic();
    private void initializeGUI() {
        GraphicsEnvironment env = GraphicsEnvironment.getLocalGraphicsEnvironment();
        device = env.getDefaultScreenDevice();
        GraphicsConfiguration gc = device.getDefaultConfiguration();
        frame = new JFrame(gc);
        frame.setTitle("Elite 2D");
        frame.setUndecorated(true);
        frame.setResizable(false);
        frame.setIgnoreRepaint(true);
        frame.setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);
        device.setFullScreenWindow(frame);
        Level.getHandle().setDimensions((int) device.getDefaultConfiguration().getBounds().getWidth(),
                (int) device.getDefaultConfiguration().getBounds().getHeight());
        BufferCapabilities bc = new BufferCapabilities(new ImageCapabilities(true),
                new ImageCapabilities(true),
                BufferCapabilities.FlipContents.BACKGROUND
        try {
            frame.createBufferStrategy(BUFFER_COUNT, bc);
        } catch (AWTException e) {
            e.printStackTrace();
        bufferStrategy = frame.getBufferStrategy();
        int width = device.getDisplayMode().getWidth();
        int height = device.getDisplayMode().getHeight();
        screen = new BigScreen(width, height, gc.createCompatibleVolatileImage(width, height));
        frame.getContentPane().add(screen);
        frame.addWindowListener(new WindowAdapter() {
            public void windowClosing(WindowEvent e) {
                System.exit(0);
            public void windowDeiconified(WindowEvent e) {
                GraphicsEnvironment env = GraphicsEnvironment.getLocalGraphicsEnvironment();
                device = env.getDefaultScreenDevice();
                GraphicsConfiguration gc = device.getDefaultConfiguration();
                device.setFullScreenWindow(null);
                device.setFullScreenWindow(frame);
                BufferCapabilities bc = new BufferCapabilities(new ImageCapabilities(true),
                        new ImageCapabilities(true),
                        BufferCapabilities.FlipContents.COPIED
                try {
                    frame.createBufferStrategy(BUFFER_COUNT, bc);
                } catch (AWTException awt) {
                    awt.printStackTrace();
        // Set the cursor to a transparent image
        Image image = Toolkit.getDefaultToolkit().createImage(
                new MemoryImageSource(16, 16, new int[16 * 16], 0, 16));
        Cursor transparentCursor = Toolkit.getDefaultToolkit().createCustomCursor(image,
                new Point(0, 0), "invisiblecursor");
        frame.setCursor(transparentCursor);
        screen.setFocusable(false);
        frame.addKeyListener(getKeyListener());
    public KeyAdapter getKeyListener() {
        return new KeyAdapter() {
            public void keyPressed(KeyEvent e) {
                Level.getHandle().getPlayer().handleKeyUp(e.getKeyCode());
            public void keyReleased(KeyEvent e) {
                Level.getHandle().getPlayer().handleKeyDown(e.getKeyCode());
    public void run() {
        while (true) {
            if (frameCount++ % 1000 == 0) {
                long thisTime = System.currentTimeMillis();
                // aantal ms voor 1000 frames
                // 1000 * (aantal frames / seconde)
                double fps = thisTime - lastTime;
                lastTime = thisTime;
                Level.getHandle().getConsole().addConsoleMessage("FPS : " + 1000000 / fps);
            Graphics g = bufferStrategy.getDrawGraphics();
            screen.paintSurroundings();
            g.drawImage(screen.background, 0, 0, null);
            g.dispose();
            bufferStrategy.show();
            try {
                Thread.sleep(DRAW_DELAY);
            } catch (InterruptedException e) {
            } catch (IllegalStateException i) {
    public Rectangle getScreenDimensions() {
        return frame.getGraphicsConfiguration().getBounds();
    public void exitFullScreen() {
        device.setFullScreenWindow(null);
} // End class Main// The rendering-code in Level is done in the updateStatus-method.
// Once again, rendering is delegated to the current SolarSystem class.
public class Level {
    private static Level handle;
    public SolarSystem currentSolarSystem;
    private Console console;
    private int width, height;
    private Ship player;
    // All ships within this radius of the player get to act
    private static final int ACTION_RADIUS = 5000;
    // All entities within this radius of the player qualify for drawing
    private static final int VISIBILITY_RADIUS = 2000;
    private Level() {
        console = new Console();
        currentSolarSystem = new SolarSystem();
        Equipment[] weapons = new Equipment[3];
        weapons[0] = new BeamWeapon(Color.red, 1000, 0.02, 0.1);
        weapons[1] = new PulseWeapon(Color.blue, 500, 0, 400, 1);
        weapons[2] = new MissileLauncher();
        player = new Ship(100, 100, weapons, currentSolarSystem);
        currentSolarSystem.addEntity(new Entity(1000, 1000, Tools.getEntityType("planet"), currentSolarSystem));
        for (int i = 0; i < 20; i++) {
            Entity asteroid = Tools.getEntityType("asteroid").createEntity(200 * i, 0, currentSolarSystem);
            asteroid.setSpeed(Tools.getRandom(asteroid.getMaxSpeed()));
            asteroid.setAccelerationAngle(Tools.getRandom(Tools.TWOPI));
            currentSolarSystem.addEntity(asteroid);
        for (int i = 0; i < 5; i++) {
            currentSolarSystem.addEntity(Tools.getEntityType("enemy").createEntity(
                    Tools.getRandom(-1000, 1000), Tools.getRandom(-1000, 1000), currentSolarSystem));
    public SolarSystem getActiveSolarSystem() {
        return this.currentSolarSystem;
    public Console getConsole() {
        return this.console;
    public void setDimensions(int x, int y) {
        this.width = x;
        this.height = y;
    public int getWidth() {
        return this.width;
    public int getHeight() {
        return this.height;
    public static Level getHandle() {
        if (handle == null) {
            handle = new Level();
        return handle;
    public ArrayList getEntitiesInRectangle(int x1, int y1, int w1, int h1) {
        ArrayList intersects = new ArrayList();
        for (int i = 0; i < currentSolarSystem.getEntities().size(); i++) {
            Entity e = (Entity) currentSolarSystem.getEntities().get(i);
            if ((x1 + w1 > e.getX()) && (e.getX() + e.getWidth() > x1) && (y1 + h1 > e.getHeight())
                    && (e.getY() + e.getHeight() > y1)) {
                intersects.add(e);
        return intersects;
    public ArrayList getEntitiesInLine(double x1, double y1, double x2, double y2) {
        ArrayList intersects = new ArrayList();
        Line2D line = new Line2D.Double(x1, y1, x2, y2);
        for (int i = 0; i < currentSolarSystem.getEntities().size(); i++) {
            Entity e = (Entity) currentSolarSystem.getEntities().get(i);
            // System.out.println(e.getBoundingShape() + " vs " + x1 + "x" + y1 + ", " + x2 + "x" + y2);
            if (line.intersects(e.getBoundingShape().getBounds2D())) {
                intersects.add(e);
        return intersects;
    public Entity getNearestEntityToLineOrigin(double x1, double y1, double x2, double y2) {
        double closestIndex = 0;
        Entity closestEntity = null;
        Line2D line = new Line2D.Double(x1, y1, x2, y2);
        for (int i = 0; i < currentSolarSystem.getEntities().size(); i++) {
            Entity e = (Entity) currentSolarSystem.getEntities().get(i);
            // System.out.println(e.getBoundingShape() + " vs " + x1 + "x" + y1 + ", " + x2 + "x" + y2);
            if (line.intersects(e.getBoundingShape().getBounds2D())) {
                double distance = Tools.getDistance(x1, y1, e);
                if (closestEntity == null) {
                    closestEntity = e;
                    closestIndex = distance;
                } else if (distance < closestIndex) {
                    closestEntity = e;
        return closestEntity;
    public Ship getPlayer() {
        return player;
    public void updateStatus(Graphics g, int width, int height) {
        getActiveSolarSystem().updateStatus(g, getPlayer(), width, height);
        getConsole().showConsoleMessages(g);
}Draws a starfield and all visible entities in sight. So far I'm just
drawing all entities in the solar system. Seems to be faster than
figuring out whether objects are near the player for <100 objects.
public class SolarSystem {
    private static final int BIG_STARS = 20;
    private static final int MAX_STARS = 1000;
    private static final int STAR_AREA = 1400;
    private int[][] stars;
    private ArrayList entities;
    private ArrayList explosions;
    public SolarSystem() {
        entities = new ArrayList();
        explosions = new ArrayList();
        this.initializeStarField();
    public ArrayList getEntities() {
        return entities;
    public ArrayList getExplosions() {
        return explosions;
    public void addEntity(Entity e) {
        entities.add(e);
    public void removeEntity(Entity e) {
        entities.remove(e);
    public void addExplosion(int x, int y, int size, int max) {
        // System.out.println("Adding explosion at " + x + " " + y);
        explosions.add(new Explosion(x, y, size, max));
    public void updateStatus(Graphics g, Ship player, int width, int height) {
        this.pollEntities(player);
        this.drawScene(g, player, width, height);
    private void drawScene(Graphics g, Ship player, int width, int height) {
        // Make sure nothing extraneous gets drawn
        g.clipRect(0, 0, width, height);
        // Clear the surface and set the background
        g.setColor(Color.black);
        g.fillRect(0, 0, width, height);
        // Draw explosions & remove from the buffer if needed
        Explosion[] expl = (Explosion[]) getExplosions().toArray(new Explosion[explosions.size()]);
        int centerX = (int) player.getX();
        int centerY = (int) player.getY();
        int widthOffset = centerX + width / 2;
        int heightOffset = centerY + height / 2;
        this.drawStarField(g, player);
        for (int i = expl.length - 1; i >= 0; i--) {
            Explosion ex = expl;
g.setColor(new Color(Math.max(255 - ex.size, 0), 0, 0));
g.drawOval(ex.x - widthOffset, ex.y - heightOffset, ex.size, ex.size);
if (ex.size < ex.max) {
ex.size += 2;
ex.x--;
ex.y--;
explosions.set(i, ex);
} else {
explosions.remove(i);
// todo - can we re-use the active entities table here?
Entity[] entities = getVisibleEntities(player);
for (int i = 0; i < entities.length; i++) {
entities[i].drawEntity((int) (entities[i].getX() - player.getX() + width / 2),
(int) (entities[i].getY() - player.getY() + height / 2), g);
player.drawEntity(width / 2, height / 2, g, entities, width, height);
private void drawStarField(Graphics g, Ship player) {
g.setColor(new Color(255, 255, 255));
int starX = ((int) player.getX() % STAR_AREA);
int starY = ((int) player.getY() % STAR_AREA);
for (int i = 0; i < BIG_STARS; i++) {
g.fillOval((stars[i][0] - starX) % STAR_AREA, (stars[i][1] - starY) % STAR_AREA, 3, 3);
for (int i = BIG_STARS; i < MAX_STARS; i++) {
g.drawLine((stars[i][0] - starX) % STAR_AREA, (stars[i][1] - starY) % STAR_AREA,
(stars[i][0] - starX) % STAR_AREA, (stars[i][1] - starY) % STAR_AREA);
* Includes the player as an active entity
* @param player
* @return
private Entity[] getActiveEntities(Ship player) {
Entity[] activeEntities = (Entity[]) entities.toArray(new Entity[entities.size() + 1]);
activeEntities[activeEntities.length - 1] = player;
return activeEntities;
private void pollEntities(Ship player) {
this.purgeDestroyedObjects();
Entity[] activeEntities = this.getActiveEntities(player);
for (int i = 0; i < activeEntities.length; i++) {
activeEntities[i].resolveAction();
// todo - Handle gravitational pull
//if (activeEntities[i].hasGravitationalPull()) {
// Handle collisions
for (int i = activeEntities.length - 1; i >= 0; i--) {
if (activeEntities[i] != null && !activeEntities[i].isTransparent() && !activeEntities[i].isDestroyed()) {
for (int j = i - 1; j >= 0; j--) {
if (activeEntities[i] != null && activeEntities[j] != null &&
!activeEntities[j].isTransparent() && Tools.entitiesCollide(activeEntities[i], activeEntities[j])) {
handleCollision(activeEntities[i], activeEntities[j]);
// todo - seems redundant - remove by avoiding player ?
if (activeEntities[i].isDestroyed()) {
// System.out.println("Removing " + activeEntities[i]);
activeEntities[i] = null;
if (activeEntities[j].isDestroyed()) {
// System.out.println("Removing " + activeEntities[j]);
activeEntities[j] = null;
private void purgeDestroyedObjects() {
for (int i = entities.size() - 1; i >= 0; i--) {
if (((Entity) entities.get(i)).isDestroyed()) {
entities.remove(i);
private void handleCollision(Entity one, Entity two) {
// Base damage is a factor of total speed & angle.
double collisionFactor = Math.abs(Math.sin((one.getAccelerationAngle() - two.getAccelerationAngle()) / 2));
double explosiveDamage = 0;
if (one.explodesOnImpact()) {
one.onDestroy();
explosiveDamage += one.getExplosiveDamage();
if (two.explodesOnImpact()) {
two.onDestroy();
explosiveDamage += two.getExplosiveDamage();
one.applyDamage(explosiveDamage + (collisionFactor * two.getMass() / one.getMass()));
two.applyDamage(explosiveDamage + (collisionFactor * one.getMass() / two.getMass()));
// Introducing the FACTOR-variable also causes stickiness (two objects glued together after collision)
// FACTOR determines how much of the energy is transfered from entity 1 to 2, and how much remains
double FACTOR = 0.9;
// Don't delete v1 and a1!
double v1 = one.getSpeed();
double a1 = one.getAccelerationAngle();
double spinFactor = Math.cos(one.getAccelerationAngle() - two.getAccelerationAngle());
if (!one.isDestroyed()) {
one.setSpeed(two.getSpeed() * FACTOR + one.getSpeed() * (1 - FACTOR));
one.setAccelerationAngle(two.getAccelerationAngle());
one.applySpin(spinFactor);
if (!two.isDestroyed()) {
two.setSpeed(v1 * FACTOR + two.getSpeed() * (1 - FACTOR));
two.setAccelerationAngle(a1);
two.applySpin(-spinFactor);
public Entity[] getVisibleEntities(Entity center) {
return (Entity[]) entities.toArray(new Entity[entities.size()]);
private void initializeStarField() {
stars = new int[MAX_STARS][2];
for (int i = 0; i < MAX_STARS; i++) {
setStar(i);
private void setStar(int index) {
stars[index][0] = Tools.getRandom(STAR_AREA) + STAR_AREA;
stars[index][1] = Tools.getRandom(STAR_AREA) + STAR_AREA;
Finally, the Entity class. All in-game objects extend Entity. Rendering is done in the drawEntity-method. Each Entity has an EntityType which contains parameters like the weight, maximum acceleration and turn rate etc... Images are also stored in EntityType.
public class Entity {
    public static final double TWOPI = Math.PI * 2;
    protected double speed;
    protected double turnRate;
    protected double x, y;
    protected double heading;
    protected double accelerationAngle;
    protected boolean destroyed = false;
    protected double energy;
    protected EntityType type;
    private Equipment activeEquipment;
    private SolarSystem solar;
    public Entity(int xPos, int yPos, EntityType type, SolarSystem solar) {
        this.x = xPos;
        this.y = yPos;
        this.type = type;
        this.energy = this.getEntityType().getEnergy();
        this.solar = solar;
     * Basic entity drawing function doesn't taken rotation into account
    public void drawEntity(int xLocation, int yLocation, Graphics g) {
        if (this.getActiveEquipment() != null && this.getActiveEquipment().isActive()) {
            this.getActiveEquipment().applyEffect(this, g);
//        Level.getHandle().getConsole().addConsoleMessage(xLocation + "x" + yLocation);
        g.drawImage(getIcon(), xLocation, yLocation, null);
    public Shape getBoundingShape() {
        return new Rectangle((int) getX(), (int) getY(), getWidth(), getHeight());

Similar Messages

  • Having screen rendering / memory problems with Microsoft Outlook 2013 and full screen mode with large 2560x1440 dual monitors

    MS Outlook 2013 seems to work fine for a while until a) enough time passes or b) I have multiple MS Outlook windows open. Then I start to see all sorts of graphical issues ranging from certain parts of the outlook window not rendering to certain functions
    locking etc.  Occassionally, when I decrease from full screen I get the screens to render correctly, making me think there's something unique with full screen mode that is causing the issue.   There seems to me to be quite a bit of memory issues
    with this version. 
    I have a beast of a graphics card, 32gb of RAM, and a fast SSD, so don't think its the machine. 
    Thoughts?

    Hi,
    Does this happen to other applications?
    If it's specific to Outlook, consider to check the hardware acceleration option:
    Go to FILE tab -> Options -> Advanced -> Display -> Disable hardware graphics acceleration, turn this option on or off to check the result.
    If the issue persists, please also consider whether any 3rd-party add-ins are interfering with Outlook, we can start Outlook in Safe Mode:
    Press Win + R, type "outlook.exe /safe" in the blank box, press Enter.
    If there's no problem in Safe Mode, disable the suspicious add-ins to verify which caused the problem.
    Regards,
    Melon Chen
    TechNet Community Support
    It's recommended to download and install
    Configuration Analyzer Tool (OffCAT), which is developed by Microsoft Support teams. Once the tool is installed, you can run it at any time to scan for hundreds of known issues in Office
    programs.

  • Two Second Skip Switching Between Windowed and Full Screen Modes During Playback YouTube videos

    I am finding that every video I watch skips two seconds every time I switch back and forth from Full Screen mode. Happens mostly with 720p videos in YouTube.
    Can be replicated by pausing the video (also possible during playback, pausing it was just to determine how long the skip is), switching to Full Screen and back, noticing the two second change on the timer.
    Main operating environment is Opera browser on Windows 7 (x86), Flash ver.  11.1.102.55 and 12beta. I have also been able to replicate the problem on Internet Explorer ver. 9.0.8112.16421

    I see about 30-80 MB memory usage increase while switching to fullscreen and it is falling back while switching back to normal mode.
    I think the "freeing" of the memory is to agressive and produces such "lags."
    @Adobe: This should be optimized with the next versions.
    Update:
    With the Plash Player plugin (Firefox Nightly/Opera Next) it is worse and with Active-X (IE9) it seems to be ok.

  • Conflict between using msn messenger in offline mode and full screen mode

    I don't want to be visible in my msn messenger for the simple reason that I don't want to get chats all the time, but when I'm in off-line mode in msn messenger and I open a full screen application, immediately the messenger goes online. This happens with full screen games and while watching a youtube video in full screen. Why is this and how can I fix this?
    Andreas

    Your profile indicates you are running Tiger.
    Please update it or repost in Tiger forum.
    Thanks.
    Since msn messenger is not an Apple product, you might also check to see if there are any forums in the MS area.
    This might be a good start
    http://www.officeformac.com/productforums
    Message was edited by: nerowolfe

  • Not able to get the minimize maximized and close button and its running with full screen mode.

    Hi
    My Thunderbird is running with ubuntu OS and while using some shortcut key my thunderbird mailbox switched to full screen mode. now i am not able to resize it's view and also not able to see minimize, maximize and close buttons on top left corner.
    Please help me out.
    Thanks

    I'm also running Ubuntu. Not sure how you got there, but you can try a Control-Q to quit. Then restart it and hope in comes back normal.

  • I pressed something, and it made the browser go into a "full screen" mode, how do I change it back? And also, something happened and made my FireFox text on all internet pages smaller, is there any way I could change this setting?

    I had pressed a button on my keyboard which made my text and pictures and the whole page smaller in size, can I change that? And how could I change my browser out of "Full Screen" mode?

    You can press F10 to toggle (View) Full Screen mode.
    Reset the page zoom on pages that cause problems: <b>View > Zoom > Reset</b> (Ctrl+0 (zero); Cmd+0 on Mac)
    * http://kb.mozillazine.org/Zoom_text_of_web_pages

  • All that comes up when I open Firefox are my toolbars and a place to enter a URL, but there is no window. I have to enter full screen mode to view websites.

    Something happened with Firefox where all that comes up when I open Firefox are my toolbars and a place to enter a URL, but there is no window. I have to enter full screen mode to view websites. How do I get back to a regular browsing window? I have no idea how this even happened.

    Hello,
    The Reset Firefox feature can fix many issues by restoring Firefox to its factory default state while saving your essential information.
    Note: ''This will cause you to lose any Extensions, Open websites, and some Preferences.''
    To Reset Firefox do the following:
    #Go to Firefox > Help > Troubleshooting Information.
    #Click the "Reset Firefox" button.
    #Firefox will close and reset. After Firefox is done, it will show a window with the information that is imported. Click Finish.
    #Firefox will open with all factory defaults applied.
    Further information can be found in the [[Reset Firefox – easily fix most problems]] article.
    Did this fix your problems? Please report back to us!
    Thank you.

  • Why is there a grey block on the bottom of my screen in safari and i cant see the top of my screen in full screen mode?

    When I put the window into full screen mode a gray block appears across the bottom of the screen. Thus the top of any given web page is truncated upward and I cannot access anything...But if I minimize the view what was once unavailable reappears.
    Is there a way to get rid of this gray block?

    Provide computer and OS version info and maybe we can help. Phone and iOS stuff tells us nothing useful.

  • I can't restore my toolbars and the "full screen" mode button is NOT at the top right-hand corner of my browser (or anywhere else)

    My toolbar and menu is gone from Firefox. I have tried closing the browser and opening new ones and all the suggestions in the help forums on this website (as well as several others). Pressing "alt", "F10", "F11" and SEVERAL other things have NOT helped.
    There is no full screen mode button anywhere on my browser and when I put my cursor at the top of the window, NO menu options appear at all.
    I normally would quit Firefox but the icon won't appear in my dock and my computer won't let me eject the application (to download again) because apparently it's in use (even when I've closed all windows).

    F11 doesn't work on a Mac to toggle full screen mode.
    Make sure that you do not run Firefox in full screen mode (press F11 or Fn + F11 to toggle; Mac: Command+Shift+F).
    *https://support.mozilla.org/kb/how-to-use-full-screen

  • I was using the newest version on OSX 10.7.5 and I was in full screen mode and viewing a photo and it was impossible to exit full screen. This happened at 11:03pm on Friday April 12, 2013. How to fix

    I was using the newest version on OSX 10.7.5 and I was in full screen mode and viewing a photo and it was impossible to exit full screen. This happened at 11:03pm on Friday April 12, 2013. I deleted this from my apps and then deleted iphoto from my purchases in macbook app store the search it the app store and it says it has still been installed. What can I do to fix it?

    Well deleting it from your machine was not the way to go.
    Deleting it from your Purchases List was definitely not the way to go.
    So, I'm not really sure how you're going to reinstall it.
    But figure that out and we can try help. Contact App Store support. There's a link on the right hand side of the App Store Window. They should be able to get it back on your purchases list so you can reinstall it.

  • X800-XT Mac Edition and Photoshop CS2 in Full Screen Mode

    I recently installed a new ATI X800XT AGP Retail card into my Dual 2-Gig G5 Mac. I have (2) Sony CRTs connected to this card - a 21" Artisan and a 24" GDM-FW900. So far I have only found one problem and this involves Full-Screen Mode in Photoshop CS2 under a certain condition.
    All of the following conditions must be met to reproduce this anomoly, but it is at least consistent and happens 100% of the time. Here are the conditions:
    (1) Open any image in Photoshop CS2
    (2) Zoom in on the image until the image area exceeds the boindaries of the screen.
    (3) Go into Full-Screen Mode (without Menu Bar showing) but hitting the "F" key twice.
    (4) Hit the Tab key to hide toolbars (the image should now fill the screen and extend off all four borders.
    (5) Now - holding down the spacebar to get the hand tool - pan the umage around the screen with the grabber hand. You will notice that the image will not refresh properly.
    (6) One other condition must be met - you must perform this while on the main monitor which normally has the OSX Menu Bar present. Note: changing the menu bar to the other monitor causes this problem to migrate to that monitor only.
    Can anyone else reproduce this?
    G5-Dual-2Gig   Mac OS X (10.4.6)   4.5 Gig Ram

    Post this over at the Adobe forums to see if it's just a CS2 problem.
    Also you might want to file a bug report with them.

  • Aspect ratio wrong and different from QT in full screen mode

    Hi all,
    I created a video using anamorphic records from my camcorder in Final Cut Express HD. QT displays the final movies (MPEG 4 H.264) just fine in either partial or full screen mode. When played in Front Row, the video height is stretched. Any ideas why or how to fix?
    Movies are being played on a Mini connected to a 40" LED TV with 1366x768 resolution.
    Thanks in advance.

    It is true you can change the properties but it appears that Front Row expects all movies to have square pixels and thus displays all pixels as square. QT did/does understand the anamorphic properties and display movies correctly.
    As an aside to all, the previous solution was to generate all movies at 853x480. This results in a green bar on the 853rd column (at least when generating using Final Cut Express HD). I regenerated the movies at 852x480 and the bar went away. No other noticable effects.

  • Export as PDF and viewing in full screen mode

    Using LR 4.3, I'm exporting a slideshow to PDF.  Even though I turned off transitions in LR, the transitions automatcally start in Acrobat X in full screen mode.
    My goal is to present ths slide show with a mouse click, or arrow key, to move to the next slide in full screen mode. Any ideas?
    Thanks.

    Yes, because Acrobat has its own transition  settings that take precedence over the settings in Lr.
    In Acrobat go >Edit >Preferences >Full Screen and under <Default Transitions> select <No Transition>.

  • Full Screen mode and Spaces

    Full Screen mode in iTunes does not remain persistent when used with Spaces. If you place iTunes in a space and enable Full Screen viewing, then navigate to another space and back, iTunes will default back to GUI mode. This behavior should be changed so that if you navigate away from iTunes while in Full Screen mode it should remain the way you left it.

    Full Screen mode in iTunes does not remain persistent when used with Spaces. If you place iTunes in a space and enable Full Screen viewing, then navigate to another space and back, iTunes will default back to GUI mode. This behavior should be changed so that if you navigate away from iTunes while in Full Screen mode it should remain the way you left it.

  • Full Screen mode and two monitors

    I consider this an oddity in Lion. I have two monitors. If I have Mail open in the left one and let's say Address book on the right one, and I put Mail into full screen mode, the other monitor goes gray. So . . . no way to have one monitor in full screen mode and still use the second monitor!
    RW

    This is Apple's warped sense of humor about how full screen should work.  Aparrently the designer only uses tablets so has no clue how the real world works.
    This is totally hated by most  power users but,  alas,  Apple aren't doing anything about fixing this patently broken design,  let alone admitting that they could have made a mistake.
    Your options are to either put up with it or back out to Snow Leopard.

Maybe you are looking for

  • App world will not open

    I have rebooted phone, uninstalled and reinstalled app world, but it refuses to open.  Click on it, use menu option, nothing.  I have notice that 2 of my apps have newer ver's on app world, the email notice will not open app world like it used to!  A

  • Data base User Creation

    I want to create a user from the prodcution enviorment to UAT enviorment. I do import and export for restoration of database . During restoration i drop the user from the UAT enviorment and create user and with grant connect resources and unlimited t

  • Best Practices for Desigining Item Matrix in Retailing Like Garments

    Hi Please provide me with the best pracitices for designing Item Matrix in retail industry such as garment or shoe etc. Regards [Abdul Muneem|http://www.brio.co.in]

  • Demo license for the Adobe PDF library

    Hi, Does anyone knows how to get the demo license for the adobe PDF library?? I just need to test the API calls to see whether they suite my needs or not.. Kindly help me in this regard... Any other way would also be welcomed.. thanks.. Deepak

  • Error in Exchange 2K Contacts Portlet

    There is an error in January PDK Exchange 2000 Portlet Contacts: Error: Variable Undefined 'lngRowsLeft' line 428 To fix, add 'Dim lngRowsLeft' under 'Variable declaration for locale-specific strings' r/ George