Repository: cayenne Updated Branches: refs/heads/master 0a084ed6b -> dba94b25d
CAY-2462 Clipboard holds old content after application was reloaded Project: http://git-wip-us.apache.org/repos/asf/cayenne/repo Commit: http://git-wip-us.apache.org/repos/asf/cayenne/commit/c20c66c5 Tree: http://git-wip-us.apache.org/repos/asf/cayenne/tree/c20c66c5 Diff: http://git-wip-us.apache.org/repos/asf/cayenne/diff/c20c66c5 Branch: refs/heads/master Commit: c20c66c5f3d22797a5beddc3d990bb8ecb28aeaa Parents: 36faff5 Author: Arseni Bulatski <ancars...@gmail.com> Authored: Wed Aug 22 11:25:27 2018 +0300 Committer: Arseni Bulatski <ancars...@gmail.com> Committed: Tue Aug 28 12:08:11 2018 +0300 ---------------------------------------------------------------------- RELEASE-NOTES.txt | 1 + .../java/org/apache/cayenne/modeler/Main.java | 2 +- .../modeler/action/OpenProjectAction.java | 43 ++++++++++++++------ 3 files changed, 33 insertions(+), 13 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/cayenne/blob/c20c66c5/RELEASE-NOTES.txt ---------------------------------------------------------------------- diff --git a/RELEASE-NOTES.txt b/RELEASE-NOTES.txt index d2e5421..5504b1d 100644 --- a/RELEASE-NOTES.txt +++ b/RELEASE-NOTES.txt @@ -20,6 +20,7 @@ Bug Fixes: CAY-2444 Change URI from http:// to https:// in xsi:schemaLocation CAY-2445 Oracle: Problem with ExpressionFactory.notInExp() +CAY-2462 Clipboard holds old content after application was reloaded ---------------------------------- Release: 4.1.M2 http://git-wip-us.apache.org/repos/asf/cayenne/blob/c20c66c5/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/Main.java ---------------------------------------------------------------------- diff --git a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/Main.java b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/Main.java index 5b2e5d2..e0e3c04 100644 --- a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/Main.java +++ b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/Main.java @@ -32,7 +32,7 @@ import org.apache.cayenne.project.ProjectModule; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import javax.swing.*; +import javax.swing.SwingUtilities; import java.io.File; import java.util.ArrayList; import java.util.Collection; http://git-wip-us.apache.org/repos/asf/cayenne/blob/c20c66c5/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/action/OpenProjectAction.java ---------------------------------------------------------------------- diff --git a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/action/OpenProjectAction.java b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/action/OpenProjectAction.java index c8465d6..4f9271d 100644 --- a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/action/OpenProjectAction.java +++ b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/action/OpenProjectAction.java @@ -19,18 +19,6 @@ package org.apache.cayenne.modeler.action; -import java.awt.Toolkit; -import java.awt.event.ActionEvent; -import java.awt.event.KeyEvent; -import java.io.File; -import java.net.URL; -import java.util.Collections; -import java.util.HashMap; -import java.util.Map; - -import javax.swing.JOptionPane; -import javax.swing.KeyStroke; - import org.apache.cayenne.modeler.Application; import org.apache.cayenne.modeler.CayenneModelerController; import org.apache.cayenne.modeler.dialog.ErrorDebugDialog; @@ -44,6 +32,20 @@ import org.apache.cayenne.swing.control.FileMenuItem; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import javax.swing.JOptionPane; +import javax.swing.KeyStroke; +import java.awt.Toolkit; +import java.awt.datatransfer.DataFlavor; +import java.awt.datatransfer.Transferable; +import java.awt.datatransfer.UnsupportedFlavorException; +import java.awt.event.ActionEvent; +import java.awt.event.KeyEvent; +import java.io.File; +import java.net.URL; +import java.util.Collections; +import java.util.HashMap; +import java.util.Map; + public class OpenProjectAction extends ProjectAction { private static Logger logObj = LoggerFactory.getLogger(OpenProjectAction.class); @@ -70,6 +72,7 @@ public class OpenProjectAction extends ProjectAction { public OpenProjectAction(Application application) { super(getActionName(), application); this.fileChooser = new ProjectOpener(); + resetClipboard(); } @Override @@ -191,4 +194,20 @@ public class OpenProjectAction extends ProjectAction { JOptionPane.YES_NO_OPTION); return returnCode != JOptionPane.NO_OPTION; } + + private void resetClipboard() { + Toolkit.getDefaultToolkit().getSystemClipboard().setContents(new Transferable() { + public DataFlavor[] getTransferDataFlavors() { + return new DataFlavor[0]; + } + + public boolean isDataFlavorSupported(DataFlavor flavor) { + return false; + } + + public Object getTransferData(DataFlavor flavor) throws UnsupportedFlavorException { + throw new UnsupportedFlavorException(flavor); + } + }, null); + } }