mirror of
https://github.com/openjdk/jdk.git
synced 2025-09-23 04:24:49 +02:00
6837293: Reapply fix for 6588003 to JDK7
Reviewed-by: alexp
This commit is contained in:
parent
c3de9bf468
commit
d663bac931
1 changed files with 15 additions and 7 deletions
|
@ -25,6 +25,7 @@
|
||||||
package javax.swing.text;
|
package javax.swing.text;
|
||||||
|
|
||||||
import java.util.Vector;
|
import java.util.Vector;
|
||||||
|
import sun.awt.AppContext;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* A queue of text layout tasks.
|
* A queue of text layout tasks.
|
||||||
|
@ -35,10 +36,10 @@ import java.util.Vector;
|
||||||
*/
|
*/
|
||||||
public class LayoutQueue {
|
public class LayoutQueue {
|
||||||
|
|
||||||
Vector<Runnable> tasks;
|
private static final Object DEFAULT_QUEUE = new Object();
|
||||||
Thread worker;
|
|
||||||
|
|
||||||
static LayoutQueue defaultQueue;
|
private Vector<Runnable> tasks;
|
||||||
|
private Thread worker;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Construct a layout queue.
|
* Construct a layout queue.
|
||||||
|
@ -51,11 +52,16 @@ public class LayoutQueue {
|
||||||
* Fetch the default layout queue.
|
* Fetch the default layout queue.
|
||||||
*/
|
*/
|
||||||
public static LayoutQueue getDefaultQueue() {
|
public static LayoutQueue getDefaultQueue() {
|
||||||
|
AppContext ac = AppContext.getAppContext();
|
||||||
|
synchronized (DEFAULT_QUEUE) {
|
||||||
|
LayoutQueue defaultQueue = (LayoutQueue) ac.get(DEFAULT_QUEUE);
|
||||||
if (defaultQueue == null) {
|
if (defaultQueue == null) {
|
||||||
defaultQueue = new LayoutQueue();
|
defaultQueue = new LayoutQueue();
|
||||||
|
ac.put(DEFAULT_QUEUE, defaultQueue);
|
||||||
}
|
}
|
||||||
return defaultQueue;
|
return defaultQueue;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Set the default layout queue.
|
* Set the default layout queue.
|
||||||
|
@ -63,7 +69,9 @@ public class LayoutQueue {
|
||||||
* @param q the new queue.
|
* @param q the new queue.
|
||||||
*/
|
*/
|
||||||
public static void setDefaultQueue(LayoutQueue q) {
|
public static void setDefaultQueue(LayoutQueue q) {
|
||||||
defaultQueue = q;
|
synchronized (DEFAULT_QUEUE) {
|
||||||
|
AppContext.getAppContext().put(DEFAULT_QUEUE, q);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue