Changeset 11278 in josm
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/org/openstreetmap/josm/actions/FullscreenToggleAction.java
r9576 r11278 44 44 putValue("toolbar", "fullscreen"); 45 45 Main.toolbar.register(this); 46 gd = GraphicsEnvironment.getLocalGraphicsEnvironment().getDefaultScreenDevice(); 46 gd = GraphicsEnvironment.isHeadless() ? null : GraphicsEnvironment.getLocalGraphicsEnvironment().getDefaultScreenDevice(); 47 47 setSelected(Main.pref.getBoolean("draw.fullscreen", false)); 48 48 notifySelectedState(); … … 79 79 boolean selected = isSelected(); 80 80 81 frame.dispose(); 82 frame.setUndecorated(selected); 81 if (frame != null) { 82 frame.dispose(); 83 frame.setUndecorated(selected); 83 84 84 if (selected) { 85 prevBounds = frame.getBounds(); 86 frame.setBounds(new Rectangle(GuiHelper.getScreenSize())); 85 if (selected) { 86 prevBounds = frame.getBounds(); 87 frame.setBounds(new Rectangle(GuiHelper.getScreenSize())); 88 } 87 89 } 88 90 … … 94 96 // screen by default (it's a simulated mode, but should be ok) 95 97 String exclusive = Main.pref.get("draw.fullscreen.exclusive-mode", "auto"); 96 if ("true".equals(exclusive) || ("auto".equals(exclusive) && !Main.isPlatformWindows())) { 98 if (("true".equals(exclusive) || ("auto".equals(exclusive) && !Main.isPlatformWindows())) && gd != null) { 97 99 gd.setFullScreenWindow(selected ? frame : null); 98 100 } 99 101 100 if (!selected && prevBounds != null) { 102 if (!selected && prevBounds != null && frame != null) { 101 103 frame.setBounds(prevBounds); 102 104 } 103 105 104 106 for (Window wind : visibleWindows) { 105 wind.setVisible(true); 107 if (wind != null) { 108 wind.setVisible(true); 109 } 106 110 } 107 111 108 112 // Free F10 key to allow it to be used by plugins, even after full screen (see #7502) 109 frame.getJMenuBar().getInputMap(JComponent.WHEN_IN_FOCUSED_WINDOW).put(KeyStroke.getKeyStroke(KeyEvent.VK_F10, 0), "none"); 113 if (frame != null) { 114 frame.getJMenuBar().getInputMap(JComponent.WHEN_IN_FOCUSED_WINDOW).put(KeyStroke.getKeyStroke(KeyEvent.VK_F10, 0), "none"); 115 } 110 116 } 111 117 }
Note:
See TracChangeset
for help on using the changeset viewer.