From: <mar...@us...> - 2009-05-20 13:26:28
|
Revision: 638 http://fenggui.svn.sourceforge.net/fenggui/?rev=638&view=rev Author: marcmenghin Date: 2009-05-20 13:26:20 +0000 (Wed, 20 May 2009) Log Message: ----------- - added security check to system clipboard. FengGUI should start up now but clipboard will not work if no permissions exist. Modified Paths: -------------- src/org/fenggui/binding/clipboard/AWTClipboard.java Modified: src/org/fenggui/binding/clipboard/AWTClipboard.java =================================================================== --- src/org/fenggui/binding/clipboard/AWTClipboard.java 2009-05-08 21:06:01 UTC (rev 637) +++ src/org/fenggui/binding/clipboard/AWTClipboard.java 2009-05-20 13:26:20 UTC (rev 638) @@ -27,6 +27,8 @@ import java.awt.datatransfer.UnsupportedFlavorException; import java.io.IOException; +import org.fenggui.util.Log; + /** * * @author marcmenghin, last edited by $Author$, $Date$ @@ -39,7 +41,21 @@ public AWTClipboard() { - clipboard = Toolkit.getDefaultToolkit().getSystemClipboard(); + SecurityManager security = System.getSecurityManager(); + if (security != null) + { + try + { + security.checkSystemClipboardAccess(); + clipboard = Toolkit.getDefaultToolkit().getSystemClipboard(); + } + catch (SecurityException e) + { + Log.warn("No permissions to access the system clipboard. Clipboard will not work."); + } + } else { + clipboard = Toolkit.getDefaultToolkit().getSystemClipboard(); + } } /* (non-Javadoc) @@ -47,6 +63,9 @@ */ public String getText() { + if (clipboard == null) + return ""; + Transferable contents = clipboard.getContents(null); String result = ""; @@ -74,6 +93,9 @@ */ public void setText(String text) { + if (clipboard == null) + return; + //System.out.println("Clipboard-set: " + text); clipboard.setContents(new StringSelection(text), new ClipboardOwner() { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |