src/share/classes/java/awt/datatransfer/Clipboard.java
Print this page
*** 23,33 ****
* questions.
*/
package java.awt.datatransfer;
! import java.awt.EventQueue;
import java.util.Objects;
import java.util.Set;
import java.util.HashSet;
import java.util.Arrays;
--- 23,33 ----
* questions.
*/
package java.awt.datatransfer;
! import sun.datatransfer.DataFlavorUtil;
import java.util.Objects;
import java.util.Set;
import java.util.HashSet;
import java.util.Arrays;
*** 128,138 ****
this.owner = owner;
this.contents = contents;
if (oldOwner != null && oldOwner != owner) {
! EventQueue.invokeLater(() -> oldOwner.lostOwnership(Clipboard.this, oldContents));
}
fireFlavorsChanged();
}
/**
--- 128,139 ----
this.owner = owner;
this.contents = contents;
if (oldOwner != null && oldOwner != owner) {
! DataFlavorUtil.getDesktopService().invokeOnEventThread(() ->
! oldOwner.lostOwnership(Clipboard.this, oldContents));
}
fireFlavorsChanged();
}
/**
*** 322,332 ****
currentDataFlavors = getAvailableDataFlavorSet();
if (Objects.equals(prevDataFlavors, currentDataFlavors)) {
return;
}
flavorListeners.forEach(listener ->
! EventQueue.invokeLater(() ->
listener.flavorsChanged(new FlavorEvent(Clipboard.this))));
}
/**
* Returns a set of <code>DataFlavor</code>s currently available
--- 323,333 ----
currentDataFlavors = getAvailableDataFlavorSet();
if (Objects.equals(prevDataFlavors, currentDataFlavors)) {
return;
}
flavorListeners.forEach(listener ->
! DataFlavorUtil.getDesktopService().invokeOnEventThread(() ->
listener.flavorsChanged(new FlavorEvent(Clipboard.this))));
}
/**
* Returns a set of <code>DataFlavor</code>s currently available