--- old/src/solaris/classes/sun/awt/X11/XToolkit.java 2014-04-07 13:33:04.927310507 -0700 +++ new/src/solaris/classes/sun/awt/X11/XToolkit.java 2014-04-07 13:33:04.570643825 -0700 @@ -36,6 +36,7 @@ import java.awt.dnd.MouseDragGestureRecognizer; import java.awt.dnd.InvalidDnDOperationException; import java.awt.dnd.peer.DragSourceContextPeer; +import java.awt.font.TextAttribute; import java.awt.im.InputMethodHighlight; import java.awt.im.spi.InputMethodDescriptor; import java.awt.image.ColorModel; @@ -98,9 +99,9 @@ private FontConfigManager fcManager = new FontConfigManager(); static int arrowCursor; - static TreeMap winMap = new TreeMap(); - static HashMap specialPeerMap = new HashMap(); - static HashMap winToDispatcher = new HashMap(); + static TreeMap winMap = new TreeMap<>(); + static HashMap specialPeerMap = new HashMap<>(); + static HashMap> winToDispatcher = new HashMap<>(); private static long _display; static UIDefaults uidefaults; static X11GraphicsEnvironment localEnv; @@ -322,7 +323,7 @@ init(); XWM.init(); - PrivilegedAction action = new PrivilegedAction() { + PrivilegedAction action = new PrivilegedAction() { public Thread run() { ThreadGroup currentTG = Thread.currentThread().getThreadGroup(); ThreadGroup parentTG = currentTG.getParent(); @@ -373,16 +374,16 @@ } static XBaseWindow windowToXWindow(long window) { synchronized(winMap) { - return (XBaseWindow) winMap.get(Long.valueOf(window)); + return winMap.get(Long.valueOf(window)); } } static void addEventDispatcher(long window, XEventDispatcher dispatcher) { synchronized(winToDispatcher) { Long key = Long.valueOf(window); - Collection dispatchers = (Collection)winToDispatcher.get(key); + Collection dispatchers = winToDispatcher.get(key); if (dispatchers == null) { - dispatchers = new Vector(); + dispatchers = new Vector<>(); winToDispatcher.put(key, dispatchers); } dispatchers.add(dispatcher); @@ -391,7 +392,7 @@ static void removeEventDispatcher(long window, XEventDispatcher dispatcher) { synchronized(winToDispatcher) { Long key = Long.valueOf(window); - Collection dispatchers = (Collection)winToDispatcher.get(key); + Collection dispatchers = winToDispatcher.get(key); if (dispatchers != null) { dispatchers.remove(dispatcher); } @@ -508,18 +509,18 @@ } XBaseWindow.dispatchToWindow(ev); - Collection dispatchers = null; + Collection dispatchers = null; synchronized(winToDispatcher) { Long key = Long.valueOf(xany.get_window()); - dispatchers = (Collection)winToDispatcher.get(key); + dispatchers = winToDispatcher.get(key); if (dispatchers != null) { // Clone it to avoid synchronization during dispatching - dispatchers = new Vector(dispatchers); + dispatchers = new Vector<>(dispatchers); } } if (dispatchers != null) { - Iterator iter = dispatchers.iterator(); + Iterator iter = dispatchers.iterator(); while (iter.hasNext()) { - XEventDispatcher disp = (XEventDispatcher)iter.next(); + XEventDispatcher disp = iter.next(); disp.dispatchEvent(ev); } } @@ -779,7 +780,7 @@ Insets insets = new Insets(0, 0, 0, 0); - java.util.List search = new LinkedList(); + java.util.List search = new LinkedList<>(); search.add(root); search.add(0); while (!search.isEmpty()) @@ -944,6 +945,7 @@ return XDragSourceContextPeer.createDragSourceContextPeer(dge); } + @SuppressWarnings("unchecked") public T createDragGestureRecognizer(Class recognizerClass, DragSource ds, @@ -1162,7 +1164,7 @@ return 2; // Black and white. } - public Map mapInputMethodHighlight(InputMethodHighlight highlight) { + public Map mapInputMethodHighlight( InputMethodHighlight highlight) { return XInputMethod.mapInputMethodHighlight(highlight); } @Override @@ -1353,31 +1355,25 @@ static void dumpPeers() { if (log.isLoggable(PlatformLogger.Level.FINE)) { log.fine("Mapped windows:"); - Iterator iter = winMap.entrySet().iterator(); - while (iter.hasNext()) { - Map.Entry entry = (Map.Entry)iter.next(); - log.fine(entry.getKey() + "->" + entry.getValue()); - if (entry.getValue() instanceof XComponentPeer) { - Component target = (Component)((XComponentPeer)entry.getValue()).getTarget(); + winMap.forEach((k, v) -> { + log.fine(k + "->" + v); + if (v instanceof XComponentPeer) { + Component target = (Component)((XComponentPeer)v).getTarget(); log.fine("\ttarget: " + target); } - } + }); SunToolkit.dumpPeers(log); log.fine("Mapped special peers:"); - iter = specialPeerMap.entrySet().iterator(); - while (iter.hasNext()) { - Map.Entry entry = (Map.Entry)iter.next(); - log.fine(entry.getKey() + "->" + entry.getValue()); - } + specialPeerMap.forEach((k, v) -> { + log.fine(k + "->" + v); + }); log.fine("Mapped dispatchers:"); - iter = winToDispatcher.entrySet().iterator(); - while (iter.hasNext()) { - Map.Entry entry = (Map.Entry)iter.next(); - log.fine(entry.getKey() + "->" + entry.getValue()); - } + winToDispatcher.forEach((k, v) -> { + log.fine(k + "->" + v); + }); } } @@ -1601,16 +1597,16 @@ * loadXSettings. It is called from the System EDT * if triggered by an XSETTINGS change. */ - void parseXSettings(int screen_XXX_ignored,Map updatedSettings) { + void parseXSettings(int screen_XXX_ignored,Map updatedSettings) { if (updatedSettings == null || updatedSettings.isEmpty()) { return; } - Iterator i = updatedSettings.entrySet().iterator(); + Iterator> i = updatedSettings.entrySet().iterator(); while (i.hasNext()) { - Map.Entry e = (Map.Entry)i.next(); - String name = (String)e.getKey(); + Map.Entry e = i.next(); + String name = e.getKey(); name = "gnome." + name; setDesktopProperty(name, e.getValue()); @@ -1707,7 +1703,7 @@ long window = 0; try{ // get any application window - window = ((Long)(winMap.firstKey())).longValue(); + window = winMap.firstKey().longValue(); }catch(NoSuchElementException nex) { // get root window window = getDefaultRootWindow(); @@ -1813,7 +1809,7 @@ } - private static SortedMap timeoutTasks; + private static SortedMap> timeoutTasks; /** * Removed the task from the list of waiting-to-be called tasks. @@ -1834,10 +1830,10 @@ } return; } - Collection values = timeoutTasks.values(); - Iterator iter = values.iterator(); + Collection> values = timeoutTasks.values(); + Iterator> iter = values.iterator(); while (iter.hasNext()) { - java.util.List list = (java.util.List)iter.next(); + java.util.List list = iter.next(); boolean removed = false; if (list.contains(task)) { list.remove(task); @@ -1884,13 +1880,13 @@ } if (timeoutTasks == null) { - timeoutTasks = new TreeMap(); + timeoutTasks = new TreeMap<>(); } Long time = Long.valueOf(System.currentTimeMillis() + interval); - java.util.List tasks = (java.util.List)timeoutTasks.get(time); + java.util.List tasks = timeoutTasks.get(time); if (tasks == null) { - tasks = new ArrayList(1); + tasks = new ArrayList<>(1); timeoutTasks.put(time, tasks); } tasks.add(task); @@ -1912,7 +1908,7 @@ if (timeoutTasks == null || timeoutTasks.isEmpty()) { return -1L; } - return (Long)timeoutTasks.firstKey(); + return timeoutTasks.firstKey(); } finally { awtUnlock(); } @@ -1933,13 +1929,13 @@ } Long currentTime = Long.valueOf(System.currentTimeMillis()); - Long time = (Long)timeoutTasks.firstKey(); + Long time = timeoutTasks.firstKey(); while (time.compareTo(currentTime) <= 0) { - java.util.List tasks = (java.util.List)timeoutTasks.remove(time); + java.util.List tasks = timeoutTasks.remove(time); - for (Iterator iter = tasks.iterator(); iter.hasNext();) { - Runnable task = (Runnable)iter.next(); + for (Iterator iter = tasks.iterator(); iter.hasNext();) { + Runnable task = iter.next(); if (timeoutTaskLog.isLoggable(PlatformLogger.Level.FINER)) { timeoutTaskLog.finer("XToolkit.callTimeoutTasks(): current time={0}" + @@ -1958,7 +1954,7 @@ if (timeoutTasks.isEmpty()) { break; } - time = (Long)timeoutTasks.firstKey(); + time = timeoutTasks.firstKey(); } }