On Mon, 25 Nov 2024 06:53:43 GMT, Phil Race <[email protected]> wrote:
> This removes the SecurityManager related checks for clipboard access and
> methods which exist solely to support that.
>
> One interesting thing is that there are two places where a method
> "canAccessSystemClipboard()" was not only about the SM.
> In SwingUtilities and InputEvent it would return false in headless mode,
> regardless of whether there is an SM.
> This means I have left the methods in place, behaving the same as before in
> headless mode.
> We may be able to further simplify this later but it will be clearer with
> the SM-only logic removed and out of scope for this fix.
few tests use this permission indirectly:
./test/jdk/java/awt/datatransfer/Independence/IndependenceSwingTest.java:94:
sm.checkPermission(new AWTPermission("accessClipboard"));
./test/jdk/java/awt/datatransfer/Independence/IndependenceAWTTest.java:87:
sm.checkPermission(new AWTPermission("accessClipboard"));
./test/jdk/java/awt/datatransfer/SystemSelection/SystemSelectionSwingTest.java:87:
sm.checkPermission(new AWTPermission("accessClipboard"));
./test/jdk/java/awt/datatransfer/SystemSelection/SystemSelectionAWTTest.java:86:
sm.checkPermission(new AWTPermission("accessClipboard"));
src/java.desktop/share/classes/java/awt/event/InputEvent.java line 395:
> 393: if (sm != null) {
> 394: try {
> 395:
> sm.checkPermission(AWTPermissions.ACCESS_CLIPBOARD_PERMISSION);
`import sun.awt.AWTPermissions;` can be removed
src/java.desktop/unix/classes/sun/awt/X11/XToolkit.java line 1239:
> 1237: SecurityManager security = System.getSecurityManager();
> 1238: if (security != null) {
> 1239:
> security.checkPermission(AWTPermissions.ACCESS_CLIPBOARD_PERMISSION);
`import java.util.Hashtable;`
`import sun.awt.AWTPermissions;`
can be removed
src/java.desktop/windows/classes/sun/awt/windows/WToolkit.java line 684:
> 682: SecurityManager security = System.getSecurityManager();
> 683: if (security != null) {
> 684:
> security.checkPermission(AWTPermissions.ACCESS_CLIPBOARD_PERMISSION);
unneeded `import sun.awt.AWTPermissions;`
-------------
PR Review: https://git.openjdk.org/jdk/pull/22356#pullrequestreview-2458363303
PR Review Comment: https://git.openjdk.org/jdk/pull/22356#discussion_r1856571037
PR Review Comment: https://git.openjdk.org/jdk/pull/22356#discussion_r1856795935
PR Review Comment: https://git.openjdk.org/jdk/pull/22356#discussion_r1856798108