diff --git a/.github/workflows/gradle.yml b/.github/workflows/gradle.yml
index d2c36a99..621e357a 100644
--- a/.github/workflows/gradle.yml
+++ b/.github/workflows/gradle.yml
@@ -22,19 +22,19 @@ jobs:
uses: actions/setup-java@v2
with:
distribution: temurin
- java-version: 17
- - name: Cache SonarCloud packages
- uses: actions/cache@v1
- with:
- path: ~/.sonar/cache
- key: ${{ runner.os }}-sonar
- restore-keys: ${{ runner.os }}-sonar
- - name: Cache Gradle packages
- uses: actions/cache@v1
- with:
- path: ~/.gradle/caches
- key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle') }}
- restore-keys: ${{ runner.os }}-gradle
+ java-version: 21
+# - name: Cache SonarCloud packages
+# uses: actions/cache@v1
+# with:
+# path: ~/.sonar/cache
+# key: ${{ runner.os }}-sonar
+# restore-keys: ${{ runner.os }}-sonar
+# - name: Cache Gradle packages
+# uses: actions/cache@v1
+# with:
+# path: ~/.gradle/caches
+# key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle') }}
+# restore-keys: ${{ runner.os }}-gradle
- name: Grant execute permission for gradlew
run: chmod +x gradlew
- name: Build with Gradle
@@ -45,4 +45,4 @@ jobs:
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
- run: ./gradlew sonar --info
+ run: ./gradlew sonar
diff --git a/.idea/compiler.xml b/.idea/compiler.xml
index 014f24cc..79bcf482 100644
--- a/.idea/compiler.xml
+++ b/.idea/compiler.xml
@@ -20,6 +20,7 @@
+
@@ -66,6 +67,7 @@
+
@@ -83,7 +85,7 @@
-
+
diff --git a/.idea/gradle.xml b/.idea/gradle.xml
index 97e96eab..f5abebed 100644
--- a/.idea/gradle.xml
+++ b/.idea/gradle.xml
@@ -21,6 +21,7 @@
+
diff --git a/.idea/misc.xml b/.idea/misc.xml
index 5c1fe43a..7c47dd48 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -4,5 +4,5 @@
-
+
\ No newline at end of file
diff --git a/.idea/modules.xml b/.idea/modules.xml
index 2cb4340e..ee8d4215 100644
--- a/.idea/modules.xml
+++ b/.idea/modules.xml
@@ -2,10 +2,9 @@
-
-
+
@@ -39,7 +38,6 @@
-
\ No newline at end of file
diff --git a/.idea/modules/examples/x11.examples.main.iml b/.idea/modules/examples/x11.examples.main.iml
deleted file mode 100644
index 6ead6de8..00000000
--- a/.idea/modules/examples/x11.examples.main.iml
+++ /dev/null
@@ -1,8 +0,0 @@
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/.idea/modules/x11-client/x11.x11-client.test.iml b/.idea/modules/x11-client/x11.x11-client.test.iml
deleted file mode 100644
index b2a1ae0d..00000000
--- a/.idea/modules/x11-client/x11.x11-client.test.iml
+++ /dev/null
@@ -1,8 +0,0 @@
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/.idea/modules/x11-keysym/x11.x11-keysym.main.iml b/.idea/modules/x11-keysym/x11.x11-keysym.main.iml
new file mode 100644
index 00000000..334f8db7
--- /dev/null
+++ b/.idea/modules/x11-keysym/x11.x11-keysym.main.iml
@@ -0,0 +1,8 @@
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/modules/xephyr-runner/x11.xephyr-runner.main.iml b/.idea/modules/xephyr-runner/x11.xephyr-runner.main.iml
deleted file mode 100644
index 5fca8a4d..00000000
--- a/.idea/modules/xephyr-runner/x11.xephyr-runner.main.iml
+++ /dev/null
@@ -1,8 +0,0 @@
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/README.md b/README.md
index 23868b25..593c6ca8 100644
--- a/README.md
+++ b/README.md
@@ -8,7 +8,7 @@ as X11lib by queuing one-way requests before sending them to the server. The
x11-protocol project enables reading and writing the entire protocol and can
be used to help write a x11 server.
-[](https://github.com/moaxcp/x11/actions?query=workflow%3A%22Java+CI+with+Gradle%22)
+[](https://github.com/moaxcp/x11/actions/workflows/gradle.yml)
[](https://search.maven.org/artifact/com.github.moaxcp.x11/x11-client)
[](https://javadoc.io/doc/com.github.moaxcp.x11/x11-client)
[](https://sonarcloud.io/summary/new_code?id=moaxcp_x11-client)
diff --git a/build.gradle b/build.gradle
index d8c0ce23..b9188d63 100644
--- a/build.gradle
+++ b/build.gradle
@@ -1,6 +1,6 @@
plugins {
id 'org.sonarqube' version '4.4.1.3373'
- id 'io.freefair.lombok' version '8.4' apply false
+ id 'io.freefair.lombok' version '8.6' apply false
id 'org.unbroken-dome.test-sets' version '4.1.0' apply false
}
diff --git a/examples/src/main/java/com/github/moaxcp/x11/x11client/KeySym.java b/examples/src/main/java/com/github/moaxcp/x11/examples/KeySym.java
similarity index 85%
rename from examples/src/main/java/com/github/moaxcp/x11/x11client/KeySym.java
rename to examples/src/main/java/com/github/moaxcp/x11/examples/KeySym.java
index 22efef1e..f7e15e72 100644
--- a/examples/src/main/java/com/github/moaxcp/x11/x11client/KeySym.java
+++ b/examples/src/main/java/com/github/moaxcp/x11/examples/KeySym.java
@@ -1,5 +1,6 @@
-package com.github.moaxcp.x11.x11client;
+package com.github.moaxcp.x11.examples;
+import com.github.moaxcp.x11.x11client.X11Client;
import lombok.extern.java.Log;
import java.io.IOException;
diff --git a/examples/src/main/java/com/github/moaxcp/x11/x11client/QueryVersion.java b/examples/src/main/java/com/github/moaxcp/x11/examples/QueryVersion.java
similarity index 86%
rename from examples/src/main/java/com/github/moaxcp/x11/x11client/QueryVersion.java
rename to examples/src/main/java/com/github/moaxcp/x11/examples/QueryVersion.java
index 9b5d9d64..4953cab1 100644
--- a/examples/src/main/java/com/github/moaxcp/x11/x11client/QueryVersion.java
+++ b/examples/src/main/java/com/github/moaxcp/x11/examples/QueryVersion.java
@@ -1,6 +1,7 @@
-package com.github.moaxcp.x11.x11client;
+package com.github.moaxcp.x11.examples;
import com.github.moaxcp.x11.protocol.record.QueryVersionReply;
+import com.github.moaxcp.x11.x11client.X11Client;
import lombok.extern.java.Log;
import java.io.IOException;
diff --git a/examples/src/main/java/com/github/moaxcp/x11/x11client/Record.java b/examples/src/main/java/com/github/moaxcp/x11/examples/Record.java
similarity index 97%
rename from examples/src/main/java/com/github/moaxcp/x11/x11client/Record.java
rename to examples/src/main/java/com/github/moaxcp/x11/examples/Record.java
index 0d96912b..4404a03b 100644
--- a/examples/src/main/java/com/github/moaxcp/x11/x11client/Record.java
+++ b/examples/src/main/java/com/github/moaxcp/x11/examples/Record.java
@@ -1,10 +1,11 @@
-package com.github.moaxcp.x11.x11client;
+package com.github.moaxcp.x11.examples;
import com.github.moaxcp.x11.protocol.KeySym;
import com.github.moaxcp.x11.protocol.XEvent;
import com.github.moaxcp.x11.protocol.record.*;
import com.github.moaxcp.x11.protocol.xproto.KeyPressEvent;
import com.github.moaxcp.x11.protocol.xproto.MotionNotifyEvent;
+import com.github.moaxcp.x11.x11client.X11Client;
import lombok.extern.java.Log;
import java.io.IOException;
diff --git a/examples/src/main/java/com/github/moaxcp/x11/x11client/RecordApi.java b/examples/src/main/java/com/github/moaxcp/x11/examples/RecordApi.java
similarity index 97%
rename from examples/src/main/java/com/github/moaxcp/x11/x11client/RecordApi.java
rename to examples/src/main/java/com/github/moaxcp/x11/examples/RecordApi.java
index e7cb641a..f4fc131a 100644
--- a/examples/src/main/java/com/github/moaxcp/x11/x11client/RecordApi.java
+++ b/examples/src/main/java/com/github/moaxcp/x11/examples/RecordApi.java
@@ -1,9 +1,10 @@
-package com.github.moaxcp.x11.x11client;
+package com.github.moaxcp.x11.examples;
import com.github.moaxcp.x11.protocol.KeySym;
import com.github.moaxcp.x11.protocol.record.*;
import com.github.moaxcp.x11.protocol.xproto.GeGenericEvent;
import com.github.moaxcp.x11.protocol.xproto.KeyPressEvent;
+import com.github.moaxcp.x11.x11client.X11Client;
import com.github.moaxcp.x11.x11client.api.record.RecordData;
import com.github.moaxcp.x11.x11client.api.record.RecordReply;
import lombok.extern.java.Log;
diff --git a/examples/src/main/java/com/github/moaxcp/x11/x11client/RecordApiClientTracker.java b/examples/src/main/java/com/github/moaxcp/x11/examples/RecordApiClientTracker.java
similarity index 97%
rename from examples/src/main/java/com/github/moaxcp/x11/x11client/RecordApiClientTracker.java
rename to examples/src/main/java/com/github/moaxcp/x11/examples/RecordApiClientTracker.java
index d0c8fcfc..4e9c0348 100644
--- a/examples/src/main/java/com/github/moaxcp/x11/x11client/RecordApiClientTracker.java
+++ b/examples/src/main/java/com/github/moaxcp/x11/examples/RecordApiClientTracker.java
@@ -1,4 +1,4 @@
-package com.github.moaxcp.x11.x11client;
+package com.github.moaxcp.x11.examples;
import com.github.moaxcp.x11.protocol.KeySym;
import com.github.moaxcp.x11.protocol.record.*;
@@ -6,6 +6,7 @@
import com.github.moaxcp.x11.protocol.xproto.GeGenericEvent;
import com.github.moaxcp.x11.protocol.xproto.KeyPressEvent;
import com.github.moaxcp.x11.protocol.xproto.NoOperation;
+import com.github.moaxcp.x11.x11client.X11Client;
import com.github.moaxcp.x11.x11client.api.record.RecordData;
import com.github.moaxcp.x11.x11client.api.record.RecordReply;
import lombok.extern.java.Log;
diff --git a/examples/src/main/java/com/github/moaxcp/x11/x11client/SimpleHelloWorld.java b/examples/src/main/java/com/github/moaxcp/x11/examples/SimpleHelloWorld.java
similarity index 96%
rename from examples/src/main/java/com/github/moaxcp/x11/x11client/SimpleHelloWorld.java
rename to examples/src/main/java/com/github/moaxcp/x11/examples/SimpleHelloWorld.java
index 4201fa8a..5946888a 100644
--- a/examples/src/main/java/com/github/moaxcp/x11/x11client/SimpleHelloWorld.java
+++ b/examples/src/main/java/com/github/moaxcp/x11/examples/SimpleHelloWorld.java
@@ -1,8 +1,9 @@
-package com.github.moaxcp.x11.x11client;
+package com.github.moaxcp.x11.examples;
import com.github.moaxcp.x11.protocol.Utilities;
import com.github.moaxcp.x11.protocol.XEvent;
import com.github.moaxcp.x11.protocol.xproto.*;
+import com.github.moaxcp.x11.x11client.X11Client;
import java.io.IOException;
import java.util.ArrayList;
diff --git a/examples/src/main/java/com/github/moaxcp/x11/x11client/SimpleHelloWorld2.java b/examples/src/main/java/com/github/moaxcp/x11/examples/SimpleHelloWorld2.java
similarity index 93%
rename from examples/src/main/java/com/github/moaxcp/x11/x11client/SimpleHelloWorld2.java
rename to examples/src/main/java/com/github/moaxcp/x11/examples/SimpleHelloWorld2.java
index 4a070f63..506f9cfa 100644
--- a/examples/src/main/java/com/github/moaxcp/x11/x11client/SimpleHelloWorld2.java
+++ b/examples/src/main/java/com/github/moaxcp/x11/examples/SimpleHelloWorld2.java
@@ -1,8 +1,9 @@
-package com.github.moaxcp.x11.x11client;
+package com.github.moaxcp.x11.examples;
import com.github.moaxcp.x11.protocol.XEvent;
import com.github.moaxcp.x11.protocol.xproto.*;
+import com.github.moaxcp.x11.x11client.X11Client;
import java.io.IOException;
diff --git a/examples/src/main/java/com/github/moaxcp/x11/x11client/SimpleHelloWorldMouse.java b/examples/src/main/java/com/github/moaxcp/x11/examples/SimpleHelloWorldMouse.java
similarity index 98%
rename from examples/src/main/java/com/github/moaxcp/x11/x11client/SimpleHelloWorldMouse.java
rename to examples/src/main/java/com/github/moaxcp/x11/examples/SimpleHelloWorldMouse.java
index d6795b86..8ca59d19 100644
--- a/examples/src/main/java/com/github/moaxcp/x11/x11client/SimpleHelloWorldMouse.java
+++ b/examples/src/main/java/com/github/moaxcp/x11/examples/SimpleHelloWorldMouse.java
@@ -1,9 +1,10 @@
-package com.github.moaxcp.x11.x11client;
+package com.github.moaxcp.x11.examples;
import com.github.moaxcp.x11.protocol.KeySym;
import com.github.moaxcp.x11.protocol.Utilities;
import com.github.moaxcp.x11.protocol.XEvent;
import com.github.moaxcp.x11.protocol.xproto.*;
+import com.github.moaxcp.x11.x11client.X11Client;
import java.io.IOException;
import java.nio.ByteBuffer;
diff --git a/examples/src/main/java/com/github/moaxcp/x11/x11client/X11Events/X11EventsWindow.java b/examples/src/main/java/com/github/moaxcp/x11/examples/X11Events/X11EventsWindow.java
similarity index 99%
rename from examples/src/main/java/com/github/moaxcp/x11/x11client/X11Events/X11EventsWindow.java
rename to examples/src/main/java/com/github/moaxcp/x11/examples/X11Events/X11EventsWindow.java
index 0df9eb57..f09c1349 100644
--- a/examples/src/main/java/com/github/moaxcp/x11/x11client/X11Events/X11EventsWindow.java
+++ b/examples/src/main/java/com/github/moaxcp/x11/examples/X11Events/X11EventsWindow.java
@@ -1,4 +1,4 @@
-package com.github.moaxcp.x11.x11client.X11Events;
+package com.github.moaxcp.x11.examples.X11Events;
import com.github.moaxcp.x11.protocol.DisplayName;
import com.github.moaxcp.x11.protocol.KeySym;
diff --git a/examples/src/main/java/com/github/moaxcp/x11/x11client/X11Events/X11EventsWindowMain.java b/examples/src/main/java/com/github/moaxcp/x11/examples/X11Events/X11EventsWindowMain.java
similarity index 91%
rename from examples/src/main/java/com/github/moaxcp/x11/x11client/X11Events/X11EventsWindowMain.java
rename to examples/src/main/java/com/github/moaxcp/x11/examples/X11Events/X11EventsWindowMain.java
index 86e579d6..64f001e7 100644
--- a/examples/src/main/java/com/github/moaxcp/x11/x11client/X11Events/X11EventsWindowMain.java
+++ b/examples/src/main/java/com/github/moaxcp/x11/examples/X11Events/X11EventsWindowMain.java
@@ -1,4 +1,4 @@
-package com.github.moaxcp.x11.x11client.X11Events;
+package com.github.moaxcp.x11.examples.X11Events;
import com.github.moaxcp.x11.xephyr.XephyrRunner;
diff --git a/examples/src/main/java/com/github/moaxcp/x11/x11client/basicwm/BasicWMMain.java b/examples/src/main/java/com/github/moaxcp/x11/examples/basicwm/BasicWMMain.java
similarity index 91%
rename from examples/src/main/java/com/github/moaxcp/x11/x11client/basicwm/BasicWMMain.java
rename to examples/src/main/java/com/github/moaxcp/x11/examples/basicwm/BasicWMMain.java
index d2127b44..6817c21c 100644
--- a/examples/src/main/java/com/github/moaxcp/x11/x11client/basicwm/BasicWMMain.java
+++ b/examples/src/main/java/com/github/moaxcp/x11/examples/basicwm/BasicWMMain.java
@@ -1,4 +1,4 @@
-package com.github.moaxcp.x11.x11client.basicwm;
+package com.github.moaxcp.x11.examples.basicwm;
import com.github.moaxcp.x11.xephyr.XephyrRunner;
diff --git a/examples/src/main/java/com/github/moaxcp/x11/x11client/basicwm/BasicWindowManager.java b/examples/src/main/java/com/github/moaxcp/x11/examples/basicwm/BasicWindowManager.java
similarity index 99%
rename from examples/src/main/java/com/github/moaxcp/x11/x11client/basicwm/BasicWindowManager.java
rename to examples/src/main/java/com/github/moaxcp/x11/examples/basicwm/BasicWindowManager.java
index 05aaf7ef..10c49432 100644
--- a/examples/src/main/java/com/github/moaxcp/x11/x11client/basicwm/BasicWindowManager.java
+++ b/examples/src/main/java/com/github/moaxcp/x11/examples/basicwm/BasicWindowManager.java
@@ -1,4 +1,4 @@
-package com.github.moaxcp.x11.x11client.basicwm;
+package com.github.moaxcp.x11.examples.basicwm;
import com.github.moaxcp.x11.protocol.*;
import com.github.moaxcp.x11.protocol.xproto.*;
diff --git a/examples/src/main/java/com/github/moaxcp/x11/x11client/experimental/DisplayHelloWorld.java b/examples/src/main/java/com/github/moaxcp/x11/examples/experimental/DisplayHelloWorld.java
similarity index 96%
rename from examples/src/main/java/com/github/moaxcp/x11/x11client/experimental/DisplayHelloWorld.java
rename to examples/src/main/java/com/github/moaxcp/x11/examples/experimental/DisplayHelloWorld.java
index de9cd850..c6cc9924 100644
--- a/examples/src/main/java/com/github/moaxcp/x11/x11client/experimental/DisplayHelloWorld.java
+++ b/examples/src/main/java/com/github/moaxcp/x11/examples/experimental/DisplayHelloWorld.java
@@ -1,4 +1,4 @@
-package com.github.moaxcp.x11.x11client.experimental;
+package com.github.moaxcp.x11.examples.experimental;
import com.github.moaxcp.x11.protocol.DisplayName;
import com.github.moaxcp.x11.protocol.xproto.Rectangle;
diff --git a/examples/src/main/java/com/github/moaxcp/x11/x11client/tinywm/TinyWMMain.java b/examples/src/main/java/com/github/moaxcp/x11/examples/tinywm/TinyWMMain.java
similarity index 91%
rename from examples/src/main/java/com/github/moaxcp/x11/x11client/tinywm/TinyWMMain.java
rename to examples/src/main/java/com/github/moaxcp/x11/examples/tinywm/TinyWMMain.java
index 610944da..98e70404 100644
--- a/examples/src/main/java/com/github/moaxcp/x11/x11client/tinywm/TinyWMMain.java
+++ b/examples/src/main/java/com/github/moaxcp/x11/examples/tinywm/TinyWMMain.java
@@ -1,4 +1,4 @@
-package com.github.moaxcp.x11.x11client.tinywm;
+package com.github.moaxcp.x11.examples.tinywm;
import com.github.moaxcp.x11.xephyr.XephyrRunner;
diff --git a/examples/src/main/java/com/github/moaxcp/x11/x11client/tinywm/TinyWindowManager.java b/examples/src/main/java/com/github/moaxcp/x11/examples/tinywm/TinyWindowManager.java
similarity index 98%
rename from examples/src/main/java/com/github/moaxcp/x11/x11client/tinywm/TinyWindowManager.java
rename to examples/src/main/java/com/github/moaxcp/x11/examples/tinywm/TinyWindowManager.java
index 4cdb92a9..0397bab2 100644
--- a/examples/src/main/java/com/github/moaxcp/x11/x11client/tinywm/TinyWindowManager.java
+++ b/examples/src/main/java/com/github/moaxcp/x11/examples/tinywm/TinyWindowManager.java
@@ -1,4 +1,4 @@
-package com.github.moaxcp.x11.x11client.tinywm;
+package com.github.moaxcp.x11.examples.tinywm;
import com.github.moaxcp.x11.protocol.DisplayName;
import com.github.moaxcp.x11.protocol.KeySym;
diff --git a/examples/src/main/java/com/github/moaxcp/x11/x11client/X11ConnectionMain.java b/examples/src/main/java/com/github/moaxcp/x11/x11client/X11ConnectionMain.java
deleted file mode 100644
index a26147e1..00000000
--- a/examples/src/main/java/com/github/moaxcp/x11/x11client/X11ConnectionMain.java
+++ /dev/null
@@ -1,43 +0,0 @@
-package com.github.moaxcp.x11.x11client;
-
-import com.github.moaxcp.x11.protocol.DisplayName;
-import com.github.moaxcp.x11.protocol.Utilities;
-import com.github.moaxcp.x11.protocol.X11Input;
-import com.github.moaxcp.x11.protocol.X11Output;
-import com.github.moaxcp.x11.protocol.xproto.QueryExtension;
-import com.github.moaxcp.x11.protocol.xproto.QueryExtensionReply;
-import com.github.moaxcp.x11.xephyr.XephyrRunner;
-
-import java.io.IOException;
-
-public class X11ConnectionMain {
- public static void main(String... args) throws IOException, InterruptedException {
- XephyrRunner runner = XephyrRunner.builder()
- .ac(true)
- .br(true)
- .noreset(true)
- .build();
- runner.start();
- try(X11Connection connection = X11Connection.connect(new DisplayName(runner.getDisplay()))) {
- X11Output out = connection.getX11Output();
- X11Input in = connection.getX11Input();
- QueryExtension extension = QueryExtension.builder()
- .name(Utilities.toByteList("XC-MISC"))
- .build();
- extension.write((byte) 0, out);
- byte status = in.readByte();
- if(status == 0) {
- //error
- } else if(status == 1) {
- //success
- byte field = in.readByte();
- short sequenceNumber = in.readCard16();
- QueryExtensionReply reply = QueryExtensionReply.readQueryExtensionReply(field, sequenceNumber, in);
- System.out.println(reply);
- } else {
- //event
- }
- }
- runner.stop();
- }
-}
diff --git a/examples/src/main/java/module-info.java b/examples/src/main/java/module-info.java
new file mode 100644
index 00000000..0824a104
--- /dev/null
+++ b/examples/src/main/java/module-info.java
@@ -0,0 +1,11 @@
+@SuppressWarnings("module")
+module com.github.moaxcp.x11.examples {
+ exports com.github.moaxcp.x11.examples;
+
+ requires transitive com.github.moaxcp.x11.client;
+ requires transitive com.github.moaxcp.x11.xephyr;
+ requires transitive com.github.moaxcp.x11.toolkit;
+ requires transitive java.logging;
+
+ requires static lombok;
+}
\ No newline at end of file
diff --git a/settings.gradle b/settings.gradle
index 1c8a97b6..fff37373 100644
--- a/settings.gradle
+++ b/settings.gradle
@@ -32,6 +32,7 @@ include 'x11-protocol:x11-protocol-xselinux'
include 'x11-protocol:x11-protocol-xtest'
include 'x11-protocol:x11-protocol-xv'
include 'x11-protocol:x11-protocol-xvmc'
+include 'x11-keysym'
include 'x11-client'
include 'x11-toolkit'
include 'xephyr-runner'
diff --git a/x11-client/build.gradle b/x11-client/build.gradle
index 666bfa85..cb71da4b 100644
--- a/x11-client/build.gradle
+++ b/x11-client/build.gradle
@@ -10,13 +10,14 @@ plugins {
description = 'An x11 client implemented in java'
java {
- sourceCompatibility = JavaVersion.VERSION_1_8
- targetCompatibility = JavaVersion.VERSION_1_8
+ sourceCompatibility = JavaVersion.VERSION_21
+ targetCompatibility = JavaVersion.VERSION_21
withSourcesJar()
withJavadocJar()
}
dependencies {
+ api project(':x11-keysym')
api project(':x11-protocol:x11-protocol-core')
api project(':x11-protocol:x11-protocol-bigreq')
api project(':x11-protocol:x11-protocol-composite')
@@ -50,8 +51,6 @@ dependencies {
api project(':x11-protocol:x11-protocol-xv')
api project(':x11-protocol:x11-protocol-xvmc')
- implementation 'com.kohlschutter.junixsocket:junixsocket-core:2.3.2'
-
testImplementation 'org.assertj:assertj-core:3.16.0'
testImplementation 'org.mockito:mockito-core:3.3.3'
testImplementation 'org.mockito:mockito-junit-jupiter:3.3.3'
diff --git a/x11-client/src/main/java/com/github/moaxcp/x11/x11client/KeyboardService.java b/x11-client/src/main/java/com/github/moaxcp/x11/x11client/KeyboardService.java
index 798c4429..09d76be7 100644
--- a/x11-client/src/main/java/com/github/moaxcp/x11/x11client/KeyboardService.java
+++ b/x11-client/src/main/java/com/github/moaxcp/x11/x11client/KeyboardService.java
@@ -1,13 +1,13 @@
package com.github.moaxcp.x11.x11client;
-import com.github.moaxcp.x11.protocol.KeySym;
+import com.github.moaxcp.x11.keysym.KeySym;
import com.github.moaxcp.x11.protocol.xproto.*;
import java.util.ArrayList;
import java.util.List;
-import static com.github.moaxcp.x11.protocol.KeySym.*;
+import static com.github.moaxcp.x11.keysym.KeySym.*;
public class KeyboardService {
private GetKeyboardMappingReply keyboard;
diff --git a/x11-client/src/main/java/com/github/moaxcp/x11/x11client/X11Client.java b/x11-client/src/main/java/com/github/moaxcp/x11/x11client/X11Client.java
index bf356428..09238196 100644
--- a/x11-client/src/main/java/com/github/moaxcp/x11/x11client/X11Client.java
+++ b/x11-client/src/main/java/com/github/moaxcp/x11/x11client/X11Client.java
@@ -1,5 +1,6 @@
package com.github.moaxcp.x11.x11client;
+import com.github.moaxcp.x11.keysym.KeySym;
import com.github.moaxcp.x11.protocol.*;
import com.github.moaxcp.x11.protocol.xproto.*;
import com.github.moaxcp.x11.x11client.api.record.RecordApi;
diff --git a/x11-client/src/main/java/com/github/moaxcp/x11/x11client/X11Connection.java b/x11-client/src/main/java/com/github/moaxcp/x11/x11client/X11Connection.java
index fd678027..6480f7e7 100644
--- a/x11-client/src/main/java/com/github/moaxcp/x11/x11client/X11Connection.java
+++ b/x11-client/src/main/java/com/github/moaxcp/x11/x11client/X11Connection.java
@@ -5,17 +5,15 @@
import com.github.moaxcp.x11.protocol.xproto.SetupAuthenticate;
import com.github.moaxcp.x11.protocol.xproto.SetupFailed;
import com.github.moaxcp.x11.protocol.xproto.SetupRequest;
+import lombok.Getter;
+import lombok.NonNull;
+
import java.io.BufferedInputStream;
-import java.io.File;
import java.io.IOException;
-import java.net.InetAddress;
-import java.net.Socket;
+import java.net.*;
+import java.nio.channels.SocketChannel;
import java.util.List;
import java.util.Optional;
-import lombok.Getter;
-import lombok.NonNull;
-import org.newsclub.net.unix.AFUNIXSocket;
-import org.newsclub.net.unix.AFUNIXSocketAddress;
public class X11Connection implements AutoCloseable {
@Getter
@@ -25,6 +23,8 @@ public class X11Connection implements AutoCloseable {
@Getter
private final Setup setup;
+ private final SocketChannel socketChannel;
+
private final Socket socket;
private final X11InputStream in;
private final X11OutputStream out;
@@ -38,9 +38,10 @@ public class X11Connection implements AutoCloseable {
* @throws NullPointerException if any parameter is null
* @throws UnsupportedOperationException if the connection code is authenticate or any other result
*/
- X11Connection(@NonNull DisplayName displayName, @NonNull XAuthority xAuthority, @NonNull Socket socket) throws IOException {
+ X11Connection(@NonNull DisplayName displayName, @NonNull XAuthority xAuthority, @NonNull SocketChannel socketChannel, @NonNull Socket socket) throws IOException {
this.displayName = displayName;
this.xAuthority = xAuthority;
+ this.socketChannel = socketChannel;
this.socket = socket;
//using BufferedInputStream to support mark/reset
in = new X11InputStream(new BufferedInputStream(socket.getInputStream(), 128));
@@ -108,16 +109,21 @@ private void sendConnectionSetup() throws IOException {
*/
public static X11Connection connect(@NonNull DisplayName displayName, @NonNull XAuthority xAuthority) throws IOException {
Socket socket;
+ SocketChannel socketChannel;
if (displayName.isForUnixSocket()) {
- AFUNIXSocketAddress address = new AFUNIXSocketAddress(new File(displayName.getSocketFileName()));
- socket = AFUNIXSocket.connectTo(address);
+ var address = UnixDomainSocketAddress.of(displayName.getSocketFileName());
+ socketChannel = SocketChannel.open(StandardProtocolFamily.UNIX);
+ socketChannel.connect(address);
+ socket = socketChannel.socket();
} else {
- InetAddress address = InetAddress.getByName(displayName.getHostName());
- socket = new Socket(address, displayName.getPort());
+ var address = InetSocketAddress.createUnresolved(displayName.getHostName(), displayName.getPort());
+ socketChannel = SocketChannel.open(StandardProtocolFamily.INET);
+ socketChannel.connect(address);
+ socket = socketChannel.socket();
}
- return new X11Connection(displayName, xAuthority, socket);
+ return new X11Connection(displayName, xAuthority, socketChannel, socket);
}
public static X11Connection connect() throws IOException {
@@ -148,6 +154,7 @@ public void close() throws IOException {
in.close();
} finally {
socket.close();
+ socketChannel.close();
}
}
}
diff --git a/x11-client/src/main/java/module-info.java b/x11-client/src/main/java/module-info.java
new file mode 100644
index 00000000..7ab193cb
--- /dev/null
+++ b/x11-client/src/main/java/module-info.java
@@ -0,0 +1,13 @@
+@SuppressWarnings("module")
+module com.github.moaxcp.x11.client {
+ exports com.github.moaxcp.x11.x11client;
+ exports com.github.moaxcp.x11.x11client.api.record;
+
+ requires transitive com.github.moaxcp.x11.keysym;
+ requires transitive com.github.moaxcp.x11.protocol.core;
+ requires transitive com.github.moaxcp.x11.protocol.bigreq;
+ requires transitive com.github.moaxcp.x11.protocol.record;
+ requires transitive com.github.moaxcp.x11.protocol.xproto;
+ requires transitive com.github.moaxcp.x11.protocol.xcmisc;
+ requires static lombok;
+}
\ No newline at end of file
diff --git a/x11-client/src/test/java/com/github/moaxcp/x11/x11client/X11ConnectionTest.java b/x11-client/src/test/java/com/github/moaxcp/x11/x11client/X11ConnectionTest.java
index 9f513211..d976543c 100644
--- a/x11-client/src/test/java/com/github/moaxcp/x11/x11client/X11ConnectionTest.java
+++ b/x11-client/src/test/java/com/github/moaxcp/x11/x11client/X11ConnectionTest.java
@@ -1,21 +1,24 @@
package com.github.moaxcp.x11.x11client;
+import com.github.moaxcp.x11.protocol.DisplayName;
import com.github.moaxcp.x11.protocol.Utilities;
import com.github.moaxcp.x11.protocol.XAuthority;
import com.github.moaxcp.x11.protocol.XAuthority.Family;
-import com.github.moaxcp.x11.protocol.DisplayName;
-import java.net.Socket;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.extension.ExtendWith;
import org.mockito.Mock;
import org.mockito.junit.jupiter.MockitoExtension;
-import static com.github.moaxcp.x11.x11client.X11Connection.connect;
+import java.net.Socket;
+import java.nio.channels.SocketChannel;
+
import static org.assertj.core.api.Assertions.assertThat;
import static org.junit.jupiter.api.Assertions.assertThrows;
@ExtendWith(MockitoExtension.class)
public class X11ConnectionTest {
+ @Mock
+ private SocketChannel socketChannel;
@Mock
private Socket socket;
@@ -23,19 +26,25 @@ public class X11ConnectionTest {
@Test
void constructor_fails_on_null_displayName() {
- NullPointerException exception = assertThrows(NullPointerException.class, () -> new X11Connection(null, xAuthority, socket));
+ NullPointerException exception = assertThrows(NullPointerException.class, () -> new X11Connection(null, xAuthority, socketChannel, socket));
assertThat(exception).hasMessage("displayName is marked non-null but is null");
}
@Test
void constructor_fails_on_null_xAuthority() {
- NullPointerException exception = assertThrows(NullPointerException.class, () -> new X11Connection(new DisplayName(":0"), null, socket));
+ NullPointerException exception = assertThrows(NullPointerException.class, () -> new X11Connection(new DisplayName(":0"), null, socketChannel, socket));
assertThat(exception).hasMessage("xAuthority is marked non-null but is null");
}
+ @Test
+ void constructor_fails_on_null_socketChannel() {
+ NullPointerException exception = assertThrows(NullPointerException.class, () -> new X11Connection(new DisplayName(":0"), xAuthority, null, socket));
+ assertThat(exception).hasMessage("socketChannel is marked non-null but is null");
+ }
+
@Test
void constructor_fails_on_null_socket() {
- NullPointerException exception = assertThrows(NullPointerException.class, () -> new X11Connection(new DisplayName(":0"), xAuthority, null));
+ NullPointerException exception = assertThrows(NullPointerException.class, () -> new X11Connection(new DisplayName(":0"), xAuthority, null, socket));
assertThat(exception).hasMessage("socket is marked non-null but is null");
}
diff --git a/x11-keysym/build.gradle b/x11-keysym/build.gradle
new file mode 100644
index 00000000..95112bf8
--- /dev/null
+++ b/x11-keysym/build.gradle
@@ -0,0 +1,104 @@
+plugins {
+ id 'java-library'
+ id 'io.freefair.lombok'
+ id 'com.github.moaxcp.x11protocol'
+ id 'maven-publish'
+ id 'signing'
+ id 'jacoco'
+}
+
+description = 'x11 keysym converted from various C sources to java'
+
+java {
+ sourceCompatibility = JavaVersion.VERSION_21
+ targetCompatibility = JavaVersion.VERSION_21
+ withSourcesJar()
+ withJavadocJar()
+}
+
+dependencies {
+ api project(':x11-protocol:x11-protocol-core')
+ testImplementation 'org.junit.jupiter:junit-jupiter-api:5.6.0'
+ testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.6.0'
+}
+
+test {
+ useJUnitPlatform()
+}
+
+jacocoTestReport {
+ reports {
+ xml.required = true
+ }
+}
+
+x11Protocol {
+ outputSrc = file('src/main/java')
+ outputResources = file('src/main/resources')
+ keysymHeaders = file('src/main/keysym')
+}
+
+publishing {
+ publications {
+ mavenJava(MavenPublication) {
+
+ artifactId = project.name
+ from components.java
+ versionMapping {
+ usage('java-api') {
+ fromResolutionOf('runtimeClasspath')
+ }
+ usage('java-runtime') {
+ fromResolutionResult()
+ }
+ }
+ pom {
+ name = project.name
+ description = project.description
+ url = 'https://github.com/moaxcp/x11'
+ licenses {
+ license {
+ name = 'The MIT License (MIT)'
+ url = 'http://opensource.org/licenses/MIT'
+ }
+ }
+ developers {
+ developer {
+ id = 'moaxcp'
+ name = 'John Mercier'
+ email = 'moaxcp@gmail.com'
+ }
+ }
+ scm {
+ connection = 'scm:git:git://github.com/moaxcp/x11.git'
+ developerConnection = 'scm:git:git@github.com:moaxcp/x11.git'
+ url = 'https://github.com/moaxcp/x11'
+ }
+ }
+ repositories {
+ maven {
+ name = "OSS"
+ def releasesRepoUrl = 'https://oss.sonatype.org/service/local/staging/deploy/maven2'
+ def snapshotsRepoUrl = 'https://oss.sonatype.org/content/repositories/snapshots'
+ url = version.endsWith('SNAPSHOT') ? snapshotsRepoUrl : releasesRepoUrl
+ credentials {
+ username = project.findProperty('nexus.username')
+ password = project.findProperty('nexus.password')
+ }
+ }
+ maven {
+ name = "GitHubPackages"
+ url = uri("https://maven.pkg.github.com/moaxcp/x11")
+ credentials {
+ username = project.findProperty('github.user')
+ password = project.findProperty('github.key')
+ }
+ }
+ }
+ }
+ }
+}
+
+signing {
+ sign publishing.publications.mavenJava
+}
\ No newline at end of file
diff --git a/x11-protocol/x11-protocol-xproto/src/main/java/com/github/moaxcp/x11/protocol/KeySym.java b/x11-keysym/src/main/java/com/github/moaxcp/x11/keysym/KeySym.java
similarity index 99%
rename from x11-protocol/x11-protocol-xproto/src/main/java/com/github/moaxcp/x11/protocol/KeySym.java
rename to x11-keysym/src/main/java/com/github/moaxcp/x11/keysym/KeySym.java
index f53234a7..138ebd12 100644
--- a/x11-protocol/x11-protocol-xproto/src/main/java/com/github/moaxcp/x11/protocol/KeySym.java
+++ b/x11-keysym/src/main/java/com/github/moaxcp/x11/keysym/KeySym.java
@@ -1,5 +1,6 @@
-package com.github.moaxcp.x11.protocol;
+package com.github.moaxcp.x11.keysym;
+import com.github.moaxcp.x11.protocol.IntValue;
import java.util.HashMap;
import java.util.Map;
diff --git a/x11-keysym/src/main/java/module-info.java b/x11-keysym/src/main/java/module-info.java
new file mode 100644
index 00000000..bfebec18
--- /dev/null
+++ b/x11-keysym/src/main/java/module-info.java
@@ -0,0 +1,6 @@
+@SuppressWarnings("module")
+module com.github.moaxcp.x11.keysym {
+ exports com.github.moaxcp.x11.keysym;
+
+ requires transitive com.github.moaxcp.x11.protocol.core;
+}
\ No newline at end of file
diff --git a/x11-protocol/x11-protocol-xproto/src/main/keysym/DECkeysym.h b/x11-keysym/src/main/keysym/DECkeysym.h
similarity index 100%
rename from x11-protocol/x11-protocol-xproto/src/main/keysym/DECkeysym.h
rename to x11-keysym/src/main/keysym/DECkeysym.h
diff --git a/x11-protocol/x11-protocol-xproto/src/main/keysym/HPkeysym.h b/x11-keysym/src/main/keysym/HPkeysym.h
similarity index 100%
rename from x11-protocol/x11-protocol-xproto/src/main/keysym/HPkeysym.h
rename to x11-keysym/src/main/keysym/HPkeysym.h
diff --git a/x11-protocol/x11-protocol-xproto/src/main/keysym/Sunkeysym.h b/x11-keysym/src/main/keysym/Sunkeysym.h
similarity index 100%
rename from x11-protocol/x11-protocol-xproto/src/main/keysym/Sunkeysym.h
rename to x11-keysym/src/main/keysym/Sunkeysym.h
diff --git a/x11-protocol/x11-protocol-xproto/src/main/keysym/XF86keysym.h b/x11-keysym/src/main/keysym/XF86keysym.h
similarity index 100%
rename from x11-protocol/x11-protocol-xproto/src/main/keysym/XF86keysym.h
rename to x11-keysym/src/main/keysym/XF86keysym.h
diff --git a/x11-protocol/x11-protocol-xproto/src/main/keysym/keysymdef.h b/x11-keysym/src/main/keysym/keysymdef.h
similarity index 100%
rename from x11-protocol/x11-protocol-xproto/src/main/keysym/keysymdef.h
rename to x11-keysym/src/main/keysym/keysymdef.h
diff --git a/x11-protocol-gradle-plugin/build.gradle b/x11-protocol-gradle-plugin/build.gradle
index d154d79a..78cd4816 100644
--- a/x11-protocol-gradle-plugin/build.gradle
+++ b/x11-protocol-gradle-plugin/build.gradle
@@ -14,8 +14,8 @@ gradlePlugin {
}
java {
- sourceCompatibility = JavaVersion.VERSION_1_8
- targetCompatibility = JavaVersion.VERSION_1_8
+ sourceCompatibility = JavaVersion.VERSION_21
+ targetCompatibility = JavaVersion.VERSION_21
withSourcesJar()
withJavadocJar()
}
diff --git a/x11-protocol-gradle-plugin/src/main/groovy/com/github/moaxcp/x11protocol/GenerateX11ProtocolTask.groovy b/x11-protocol-gradle-plugin/src/main/groovy/com/github/moaxcp/x11protocol/GenerateX11ProtocolTask.groovy
index 86779f4b..2858a4e5 100644
--- a/x11-protocol-gradle-plugin/src/main/groovy/com/github/moaxcp/x11protocol/GenerateX11ProtocolTask.groovy
+++ b/x11-protocol-gradle-plugin/src/main/groovy/com/github/moaxcp/x11protocol/GenerateX11ProtocolTask.groovy
@@ -10,6 +10,7 @@ import org.gradle.api.tasks.*
class GenerateX11ProtocolTask extends DefaultTask {
@InputDirectory
+ @Optional
final DirectoryProperty xcbXmls = project.objects.directoryProperty()
@Input
@@ -28,7 +29,8 @@ class GenerateX11ProtocolTask extends DefaultTask {
@TaskAction
def writeSource() {
Set excludeNames = exclude.get()
- xcbXmls.get().asFileTree
+ if (xcbXmls.isPresent()) {
+ xcbXmls.get().asFileTree
.findAll {
it.name.endsWith('xml') && !excludeNames.contains(Files.getNameWithoutExtension(it.toString()))
}
@@ -41,8 +43,9 @@ class GenerateX11ProtocolTask extends DefaultTask {
throw e
}
}
+ }
if (keysymHeaders.isPresent()) {
- new KeySymGenerator(headerSrc: keysymHeaders.get().asFile, outputSrc: outputSrc.get().asFile, basePackage: 'com.github.moaxcp.x11.protocol').generate()
+ new KeySymGenerator(headerSrc: keysymHeaders.get().asFile, outputSrc: outputSrc.get().asFile, corePackage: 'com.github.moaxcp.x11.protocol', keysymPackage: 'com.github.moaxcp.x11.keysym').generate()
}
}
}
diff --git a/x11-protocol-gradle-plugin/src/main/groovy/com/github/moaxcp/x11protocol/generator/KeySymGenerator.groovy b/x11-protocol-gradle-plugin/src/main/groovy/com/github/moaxcp/x11protocol/generator/KeySymGenerator.groovy
index f3cd51d3..ef5938e0 100644
--- a/x11-protocol-gradle-plugin/src/main/groovy/com/github/moaxcp/x11protocol/generator/KeySymGenerator.groovy
+++ b/x11-protocol-gradle-plugin/src/main/groovy/com/github/moaxcp/x11protocol/generator/KeySymGenerator.groovy
@@ -6,16 +6,17 @@ import com.squareup.javapoet.JavaFile
class KeySymGenerator {
File headerSrc
File outputSrc
- String basePackage
+ String corePackage
+ String keysymPackage
void generate() {
- KeySymParser parser = new KeySymParser(basePackage)
+ KeySymParser parser = new KeySymParser(corePackage, keysymPackage)
headerSrc.listFiles().collect {file ->
file.withReader { reader ->
parser.merge(reader)
}
}
- JavaFile javaFile = JavaFile.builder(basePackage, parser.typeSpec).skipJavaLangImports(true).build()
+ JavaFile javaFile = JavaFile.builder(keysymPackage, parser.typeSpec).skipJavaLangImports(true).build()
javaFile.writeTo(outputSrc)
}
}
diff --git a/x11-protocol-gradle-plugin/src/main/groovy/com/github/moaxcp/x11protocol/generator/KeySymParser.groovy b/x11-protocol-gradle-plugin/src/main/groovy/com/github/moaxcp/x11protocol/generator/KeySymParser.groovy
index 416e45f0..3a64f11a 100644
--- a/x11-protocol-gradle-plugin/src/main/groovy/com/github/moaxcp/x11protocol/generator/KeySymParser.groovy
+++ b/x11-protocol-gradle-plugin/src/main/groovy/com/github/moaxcp/x11protocol/generator/KeySymParser.groovy
@@ -1,15 +1,17 @@
package com.github.moaxcp.x11protocol.generator
-import com.github.moaxcp.x11protocol.generator.KeySymResult
+
import com.squareup.javapoet.*
import javax.lang.model.element.Modifier
class KeySymParser {
KeySymResult result
+ String corePackage
- KeySymParser(String basePackage) {
- result = new KeySymResult(basePackage: basePackage)
+ KeySymParser(String corePackage, String keysymPackage) {
+ this.corePackage = corePackage
+ result = new KeySymResult(keysymPackage: keysymPackage)
}
KeySymResult merge(BufferedReader input) {
@@ -56,7 +58,7 @@ class KeySymParser {
return TypeSpec.enumBuilder(result.className)
.addAnnotation(AnnotationSpec.builder(SuppressWarnings).addMember('value', '"java:S115"').build())
.addModifiers(Modifier.PUBLIC)
- .addSuperinterface(ClassName.get(result.basePackage, 'IntValue'))
+ .addSuperinterface(ClassName.get(corePackage, 'IntValue'))
.addField(FieldSpec.builder(TypeName.INT, 'value', Modifier.PRIVATE).build())
.addMethod(MethodSpec.constructorBuilder()
.addParameter(TypeName.INT, 'value')
diff --git a/x11-protocol-gradle-plugin/src/main/groovy/com/github/moaxcp/x11protocol/generator/KeySymResult.groovy b/x11-protocol-gradle-plugin/src/main/groovy/com/github/moaxcp/x11protocol/generator/KeySymResult.groovy
index c58b5a7e..5a0b4e39 100644
--- a/x11-protocol-gradle-plugin/src/main/groovy/com/github/moaxcp/x11protocol/generator/KeySymResult.groovy
+++ b/x11-protocol-gradle-plugin/src/main/groovy/com/github/moaxcp/x11protocol/generator/KeySymResult.groovy
@@ -3,10 +3,10 @@ package com.github.moaxcp.x11protocol.generator
import com.squareup.javapoet.ClassName
class KeySymResult {
- String basePackage
+ String keysymPackage
Map keysyms = [:]
ClassName getClassName() {
- ClassName.get(basePackage, "KeySym")
+ ClassName.get(keysymPackage, "KeySym")
}
}
diff --git a/x11-protocol-gradle-plugin/src/main/groovy/com/github/moaxcp/x11protocol/generator/ProtocolGenerator.groovy b/x11-protocol-gradle-plugin/src/main/groovy/com/github/moaxcp/x11protocol/generator/ProtocolGenerator.groovy
index 620c7fc1..d4e5d406 100644
--- a/x11-protocol-gradle-plugin/src/main/groovy/com/github/moaxcp/x11protocol/generator/ProtocolGenerator.groovy
+++ b/x11-protocol-gradle-plugin/src/main/groovy/com/github/moaxcp/x11protocol/generator/ProtocolGenerator.groovy
@@ -32,7 +32,7 @@ class ProtocolGenerator {
File services = new File(outputResources, "META-INF/services/${basePackage}.XProtocolPlugin")
services.parentFile.mkdirs()
- services.append("$pluginClass\n")
+ services.write("$pluginClass\n")
}
private void writeToFile(String javaPackage, Collection units) {
diff --git a/x11-protocol/x11-protocol-bigreq/build.gradle b/x11-protocol/x11-protocol-bigreq/build.gradle
index a1e71dc8..9e2e6895 100644
--- a/x11-protocol/x11-protocol-bigreq/build.gradle
+++ b/x11-protocol/x11-protocol-bigreq/build.gradle
@@ -10,8 +10,8 @@ plugins {
description = 'An implementation of the x11 bigreq protocol in java'
java {
- sourceCompatibility = JavaVersion.VERSION_1_8
- targetCompatibility = JavaVersion.VERSION_1_8
+ sourceCompatibility = JavaVersion.VERSION_21
+ targetCompatibility = JavaVersion.VERSION_21
withSourcesJar()
withJavadocJar()
}
diff --git a/x11-protocol/x11-protocol-bigreq/src/main/java/module-info.java b/x11-protocol/x11-protocol-bigreq/src/main/java/module-info.java
new file mode 100644
index 00000000..ae6c9fd9
--- /dev/null
+++ b/x11-protocol/x11-protocol-bigreq/src/main/java/module-info.java
@@ -0,0 +1,11 @@
+import com.github.moaxcp.x11.protocol.XProtocolPlugin;
+import com.github.moaxcp.x11.protocol.bigreq.BigreqPlugin;
+
+@SuppressWarnings("module")
+module com.github.moaxcp.x11.protocol.bigreq {
+ exports com.github.moaxcp.x11.protocol.bigreq;
+
+ requires static lombok;
+ requires com.github.moaxcp.x11.protocol.core;
+ provides XProtocolPlugin with BigreqPlugin;
+}
\ No newline at end of file
diff --git a/x11-protocol/x11-protocol-composite/build.gradle b/x11-protocol/x11-protocol-composite/build.gradle
index 180eb658..04943422 100644
--- a/x11-protocol/x11-protocol-composite/build.gradle
+++ b/x11-protocol/x11-protocol-composite/build.gradle
@@ -10,8 +10,8 @@ plugins {
description = 'An implementation of the x11 composite protocol in java'
java {
- sourceCompatibility = JavaVersion.VERSION_1_8
- targetCompatibility = JavaVersion.VERSION_1_8
+ sourceCompatibility = JavaVersion.VERSION_21
+ targetCompatibility = JavaVersion.VERSION_21
withSourcesJar()
withJavadocJar()
}
diff --git a/x11-protocol/x11-protocol-composite/src/main/java/module-info.java b/x11-protocol/x11-protocol-composite/src/main/java/module-info.java
new file mode 100644
index 00000000..4bb2fd90
--- /dev/null
+++ b/x11-protocol/x11-protocol-composite/src/main/java/module-info.java
@@ -0,0 +1,11 @@
+import com.github.moaxcp.x11.protocol.XProtocolPlugin;
+import com.github.moaxcp.x11.protocol.composite.CompositePlugin;
+
+@SuppressWarnings("module")
+module com.github.moaxcp.x11.protocol.composite {
+ exports com.github.moaxcp.x11.protocol.composite;
+
+ requires static lombok;
+ requires com.github.moaxcp.x11.protocol.core;
+ provides XProtocolPlugin with CompositePlugin;
+}
\ No newline at end of file
diff --git a/x11-protocol/x11-protocol-core/build.gradle b/x11-protocol/x11-protocol-core/build.gradle
index b6cec1bf..22585f95 100644
--- a/x11-protocol/x11-protocol-core/build.gradle
+++ b/x11-protocol/x11-protocol-core/build.gradle
@@ -9,8 +9,8 @@ plugins {
description = 'Core classes for implementing the x11 protocol in java'
java {
- sourceCompatibility = JavaVersion.VERSION_1_8
- targetCompatibility = JavaVersion.VERSION_1_8
+ sourceCompatibility = JavaVersion.VERSION_21
+ targetCompatibility = JavaVersion.VERSION_21
withSourcesJar()
withJavadocJar()
}
diff --git a/x11-protocol/x11-protocol-core/src/main/java/module-info.java b/x11-protocol/x11-protocol-core/src/main/java/module-info.java
new file mode 100644
index 00000000..9cdfa929
--- /dev/null
+++ b/x11-protocol/x11-protocol-core/src/main/java/module-info.java
@@ -0,0 +1,6 @@
+@SuppressWarnings("module")
+module com.github.moaxcp.x11.protocol.core {
+ exports com.github.moaxcp.x11.protocol;
+
+ requires static lombok;
+}
\ No newline at end of file
diff --git a/x11-protocol/x11-protocol-damage/build.gradle b/x11-protocol/x11-protocol-damage/build.gradle
index 28667d8a..555243a8 100644
--- a/x11-protocol/x11-protocol-damage/build.gradle
+++ b/x11-protocol/x11-protocol-damage/build.gradle
@@ -10,8 +10,8 @@ plugins {
description = 'An implementation of the x11 damage protocol in java'
java {
- sourceCompatibility = JavaVersion.VERSION_1_8
- targetCompatibility = JavaVersion.VERSION_1_8
+ sourceCompatibility = JavaVersion.VERSION_21
+ targetCompatibility = JavaVersion.VERSION_21
withSourcesJar()
withJavadocJar()
}
diff --git a/x11-protocol/x11-protocol-damage/src/main/java/module-info.java b/x11-protocol/x11-protocol-damage/src/main/java/module-info.java
new file mode 100644
index 00000000..6de32392
--- /dev/null
+++ b/x11-protocol/x11-protocol-damage/src/main/java/module-info.java
@@ -0,0 +1,12 @@
+import com.github.moaxcp.x11.protocol.XProtocolPlugin;
+import com.github.moaxcp.x11.protocol.damage.DamagePlugin;
+
+@SuppressWarnings("module")
+module com.github.moaxcp.x11.protocol.damage {
+ exports com.github.moaxcp.x11.protocol.damage;
+
+ requires static lombok;
+ requires transitive com.github.moaxcp.x11.protocol.core;
+ requires transitive com.github.moaxcp.x11.protocol.xproto;
+ provides XProtocolPlugin with DamagePlugin;
+}
\ No newline at end of file
diff --git a/x11-protocol/x11-protocol-dpms/build.gradle b/x11-protocol/x11-protocol-dpms/build.gradle
index ef3fe258..fe30921e 100644
--- a/x11-protocol/x11-protocol-dpms/build.gradle
+++ b/x11-protocol/x11-protocol-dpms/build.gradle
@@ -10,8 +10,8 @@ plugins {
description = 'An implementation of the x11 dpms protocol in java'
java {
- sourceCompatibility = JavaVersion.VERSION_1_8
- targetCompatibility = JavaVersion.VERSION_1_8
+ sourceCompatibility = JavaVersion.VERSION_21
+ targetCompatibility = JavaVersion.VERSION_21
withSourcesJar()
withJavadocJar()
}
diff --git a/x11-protocol/x11-protocol-dpms/src/main/java/module-info.java b/x11-protocol/x11-protocol-dpms/src/main/java/module-info.java
new file mode 100644
index 00000000..bf22527d
--- /dev/null
+++ b/x11-protocol/x11-protocol-dpms/src/main/java/module-info.java
@@ -0,0 +1,11 @@
+import com.github.moaxcp.x11.protocol.XProtocolPlugin;
+import com.github.moaxcp.x11.protocol.dpms.DpmsPlugin;
+
+@SuppressWarnings("module")
+module com.github.moaxcp.x11.protocol.dpms {
+ exports com.github.moaxcp.x11.protocol.dpms;
+
+ requires static lombok;
+ requires com.github.moaxcp.x11.protocol.core;
+ provides XProtocolPlugin with DpmsPlugin;
+}
\ No newline at end of file
diff --git a/x11-protocol/x11-protocol-dri2/build.gradle b/x11-protocol/x11-protocol-dri2/build.gradle
index 81763359..b0434336 100644
--- a/x11-protocol/x11-protocol-dri2/build.gradle
+++ b/x11-protocol/x11-protocol-dri2/build.gradle
@@ -10,8 +10,8 @@ plugins {
description = 'An implementation of the x11 dri2 protocol in java'
java {
- sourceCompatibility = JavaVersion.VERSION_1_8
- targetCompatibility = JavaVersion.VERSION_1_8
+ sourceCompatibility = JavaVersion.VERSION_21
+ targetCompatibility = JavaVersion.VERSION_21
withSourcesJar()
withJavadocJar()
}
diff --git a/x11-protocol/x11-protocol-dri2/src/main/java/module-info.java b/x11-protocol/x11-protocol-dri2/src/main/java/module-info.java
new file mode 100644
index 00000000..aef2a768
--- /dev/null
+++ b/x11-protocol/x11-protocol-dri2/src/main/java/module-info.java
@@ -0,0 +1,11 @@
+import com.github.moaxcp.x11.protocol.XProtocolPlugin;
+import com.github.moaxcp.x11.protocol.dri2.Dri2Plugin;
+
+@SuppressWarnings("module")
+module com.github.moaxcp.x11.protocol.dri2 {
+ exports com.github.moaxcp.x11.protocol.dri2;
+
+ requires static lombok;
+ requires com.github.moaxcp.x11.protocol.core;
+ provides XProtocolPlugin with Dri2Plugin;
+}
\ No newline at end of file
diff --git a/x11-protocol/x11-protocol-dri3/build.gradle b/x11-protocol/x11-protocol-dri3/build.gradle
index 65413ed7..20afb7f2 100644
--- a/x11-protocol/x11-protocol-dri3/build.gradle
+++ b/x11-protocol/x11-protocol-dri3/build.gradle
@@ -10,8 +10,8 @@ plugins {
description = 'An implementation of the x11 dri3 protocol in java'
java {
- sourceCompatibility = JavaVersion.VERSION_1_8
- targetCompatibility = JavaVersion.VERSION_1_8
+ sourceCompatibility = JavaVersion.VERSION_21
+ targetCompatibility = JavaVersion.VERSION_21
withSourcesJar()
withJavadocJar()
}
diff --git a/x11-protocol/x11-protocol-dri3/src/main/java/module-info.java b/x11-protocol/x11-protocol-dri3/src/main/java/module-info.java
new file mode 100644
index 00000000..c576c42e
--- /dev/null
+++ b/x11-protocol/x11-protocol-dri3/src/main/java/module-info.java
@@ -0,0 +1,11 @@
+import com.github.moaxcp.x11.protocol.XProtocolPlugin;
+import com.github.moaxcp.x11.protocol.dri3.Dri3Plugin;
+
+@SuppressWarnings("module")
+module com.github.moaxcp.x11.protocol.dri3 {
+ exports com.github.moaxcp.x11.protocol.dri3;
+
+ requires static lombok;
+ requires com.github.moaxcp.x11.protocol.core;
+ provides XProtocolPlugin with Dri3Plugin;
+}
\ No newline at end of file
diff --git a/x11-protocol/x11-protocol-ge/build.gradle b/x11-protocol/x11-protocol-ge/build.gradle
index e250133e..0a852c67 100644
--- a/x11-protocol/x11-protocol-ge/build.gradle
+++ b/x11-protocol/x11-protocol-ge/build.gradle
@@ -10,8 +10,8 @@ plugins {
description = 'An implementation of the x11 ge protocol in java'
java {
- sourceCompatibility = JavaVersion.VERSION_1_8
- targetCompatibility = JavaVersion.VERSION_1_8
+ sourceCompatibility = JavaVersion.VERSION_21
+ targetCompatibility = JavaVersion.VERSION_21
withSourcesJar()
withJavadocJar()
}
diff --git a/x11-protocol/x11-protocol-ge/src/main/java/module-info.java b/x11-protocol/x11-protocol-ge/src/main/java/module-info.java
new file mode 100644
index 00000000..28050ead
--- /dev/null
+++ b/x11-protocol/x11-protocol-ge/src/main/java/module-info.java
@@ -0,0 +1,11 @@
+import com.github.moaxcp.x11.protocol.XProtocolPlugin;
+import com.github.moaxcp.x11.protocol.ge.GePlugin;
+
+@SuppressWarnings("module")
+module com.github.moaxcp.x11.protocol.ge {
+ exports com.github.moaxcp.x11.protocol.ge;
+
+ requires static lombok;
+ requires com.github.moaxcp.x11.protocol.core;
+ provides XProtocolPlugin with GePlugin;
+}
\ No newline at end of file
diff --git a/x11-protocol/x11-protocol-glx/build.gradle b/x11-protocol/x11-protocol-glx/build.gradle
index c4f07dd7..0855ba9a 100644
--- a/x11-protocol/x11-protocol-glx/build.gradle
+++ b/x11-protocol/x11-protocol-glx/build.gradle
@@ -10,8 +10,8 @@ plugins {
description = 'An implementation of the x11 glx protocol in java'
java {
- sourceCompatibility = JavaVersion.VERSION_1_8
- targetCompatibility = JavaVersion.VERSION_1_8
+ sourceCompatibility = JavaVersion.VERSION_21
+ targetCompatibility = JavaVersion.VERSION_21
withSourcesJar()
withJavadocJar()
}
diff --git a/x11-protocol/x11-protocol-glx/src/main/java/module-info.java b/x11-protocol/x11-protocol-glx/src/main/java/module-info.java
new file mode 100644
index 00000000..8fceed1c
--- /dev/null
+++ b/x11-protocol/x11-protocol-glx/src/main/java/module-info.java
@@ -0,0 +1,11 @@
+import com.github.moaxcp.x11.protocol.XProtocolPlugin;
+import com.github.moaxcp.x11.protocol.glx.GlxPlugin;
+
+@SuppressWarnings("module")
+module com.github.moaxcp.x11.protocol.glx {
+ exports com.github.moaxcp.x11.protocol.glx;
+
+ requires static lombok;
+ requires com.github.moaxcp.x11.protocol.core;
+ provides XProtocolPlugin with GlxPlugin;
+}
\ No newline at end of file
diff --git a/x11-protocol/x11-protocol-present/build.gradle b/x11-protocol/x11-protocol-present/build.gradle
index 08c11f75..c7556f31 100644
--- a/x11-protocol/x11-protocol-present/build.gradle
+++ b/x11-protocol/x11-protocol-present/build.gradle
@@ -10,8 +10,8 @@ plugins {
description = 'An implementation of the x11 present protocol in java'
java {
- sourceCompatibility = JavaVersion.VERSION_1_8
- targetCompatibility = JavaVersion.VERSION_1_8
+ sourceCompatibility = JavaVersion.VERSION_21
+ targetCompatibility = JavaVersion.VERSION_21
withSourcesJar()
withJavadocJar()
}
diff --git a/x11-protocol/x11-protocol-present/src/main/java/module-info.java b/x11-protocol/x11-protocol-present/src/main/java/module-info.java
new file mode 100644
index 00000000..07eda9b2
--- /dev/null
+++ b/x11-protocol/x11-protocol-present/src/main/java/module-info.java
@@ -0,0 +1,12 @@
+import com.github.moaxcp.x11.protocol.XProtocolPlugin;
+import com.github.moaxcp.x11.protocol.present.PresentPlugin;
+
+@SuppressWarnings("module")
+module com.github.moaxcp.x11.protocol.present {
+ exports com.github.moaxcp.x11.protocol.present;
+
+ requires static lombok;
+ requires com.github.moaxcp.x11.protocol.core;
+ requires com.github.moaxcp.x11.protocol.xproto;
+ provides XProtocolPlugin with PresentPlugin;
+}
\ No newline at end of file
diff --git a/x11-protocol/x11-protocol-randr/build.gradle b/x11-protocol/x11-protocol-randr/build.gradle
index df46f659..b24bc92a 100644
--- a/x11-protocol/x11-protocol-randr/build.gradle
+++ b/x11-protocol/x11-protocol-randr/build.gradle
@@ -10,8 +10,8 @@ plugins {
description = 'An implementation of the x11 randr protocol in java'
java {
- sourceCompatibility = JavaVersion.VERSION_1_8
- targetCompatibility = JavaVersion.VERSION_1_8
+ sourceCompatibility = JavaVersion.VERSION_21
+ targetCompatibility = JavaVersion.VERSION_21
withSourcesJar()
withJavadocJar()
}
diff --git a/x11-protocol/x11-protocol-randr/src/main/java/module-info.java b/x11-protocol/x11-protocol-randr/src/main/java/module-info.java
new file mode 100644
index 00000000..ab5cca5d
--- /dev/null
+++ b/x11-protocol/x11-protocol-randr/src/main/java/module-info.java
@@ -0,0 +1,13 @@
+import com.github.moaxcp.x11.protocol.XProtocolPlugin;
+import com.github.moaxcp.x11.protocol.randr.RandrPlugin;
+
+@SuppressWarnings("module")
+module com.github.moaxcp.x11.protocol.randr {
+ exports com.github.moaxcp.x11.protocol.randr;
+
+ requires static lombok;
+ requires com.github.moaxcp.x11.protocol.core;
+ requires com.github.moaxcp.x11.protocol.xproto;
+ requires com.github.moaxcp.x11.protocol.render;
+ provides XProtocolPlugin with RandrPlugin;
+}
\ No newline at end of file
diff --git a/x11-protocol/x11-protocol-record/build.gradle b/x11-protocol/x11-protocol-record/build.gradle
index 59558687..3d65acf7 100644
--- a/x11-protocol/x11-protocol-record/build.gradle
+++ b/x11-protocol/x11-protocol-record/build.gradle
@@ -10,8 +10,8 @@ plugins {
description = 'An implementation of the x11 record protocol in java'
java {
- sourceCompatibility = JavaVersion.VERSION_1_8
- targetCompatibility = JavaVersion.VERSION_1_8
+ sourceCompatibility = JavaVersion.VERSION_21
+ targetCompatibility = JavaVersion.VERSION_21
withSourcesJar()
withJavadocJar()
}
diff --git a/x11-protocol/x11-protocol-record/src/main/java/module-info.java b/x11-protocol/x11-protocol-record/src/main/java/module-info.java
new file mode 100644
index 00000000..4e92344d
--- /dev/null
+++ b/x11-protocol/x11-protocol-record/src/main/java/module-info.java
@@ -0,0 +1,11 @@
+import com.github.moaxcp.x11.protocol.XProtocolPlugin;
+import com.github.moaxcp.x11.protocol.record.RecordPlugin;
+
+@SuppressWarnings("module")
+module com.github.moaxcp.x11.protocol.record {
+ exports com.github.moaxcp.x11.protocol.record;
+
+ requires static lombok;
+ requires com.github.moaxcp.x11.protocol.core;
+ provides XProtocolPlugin with RecordPlugin;
+}
\ No newline at end of file
diff --git a/x11-protocol/x11-protocol-render/build.gradle b/x11-protocol/x11-protocol-render/build.gradle
index 3f5da7bb..5be5d272 100644
--- a/x11-protocol/x11-protocol-render/build.gradle
+++ b/x11-protocol/x11-protocol-render/build.gradle
@@ -10,8 +10,8 @@ plugins {
description = 'An implementation of the x11 render protocol in java'
java {
- sourceCompatibility = JavaVersion.VERSION_1_8
- targetCompatibility = JavaVersion.VERSION_1_8
+ sourceCompatibility = JavaVersion.VERSION_21
+ targetCompatibility = JavaVersion.VERSION_21
withSourcesJar()
withJavadocJar()
}
diff --git a/x11-protocol/x11-protocol-render/src/main/java/module-info.java b/x11-protocol/x11-protocol-render/src/main/java/module-info.java
new file mode 100644
index 00000000..f4b91112
--- /dev/null
+++ b/x11-protocol/x11-protocol-render/src/main/java/module-info.java
@@ -0,0 +1,12 @@
+import com.github.moaxcp.x11.protocol.XProtocolPlugin;
+import com.github.moaxcp.x11.protocol.render.RenderPlugin;
+
+@SuppressWarnings("module")
+module com.github.moaxcp.x11.protocol.render {
+ exports com.github.moaxcp.x11.protocol.render;
+
+ requires static lombok;
+ requires com.github.moaxcp.x11.protocol.core;
+ requires com.github.moaxcp.x11.protocol.xproto;
+ provides XProtocolPlugin with RenderPlugin;
+}
\ No newline at end of file
diff --git a/x11-protocol/x11-protocol-res/build.gradle b/x11-protocol/x11-protocol-res/build.gradle
index 7c63a577..93b2c1d8 100644
--- a/x11-protocol/x11-protocol-res/build.gradle
+++ b/x11-protocol/x11-protocol-res/build.gradle
@@ -10,8 +10,8 @@ plugins {
description = 'An implementation of the x11 res protocol in java'
java {
- sourceCompatibility = JavaVersion.VERSION_1_8
- targetCompatibility = JavaVersion.VERSION_1_8
+ sourceCompatibility = JavaVersion.VERSION_21
+ targetCompatibility = JavaVersion.VERSION_21
withSourcesJar()
withJavadocJar()
}
diff --git a/x11-protocol/x11-protocol-res/src/main/java/module-info.java b/x11-protocol/x11-protocol-res/src/main/java/module-info.java
new file mode 100644
index 00000000..a3066e0b
--- /dev/null
+++ b/x11-protocol/x11-protocol-res/src/main/java/module-info.java
@@ -0,0 +1,11 @@
+import com.github.moaxcp.x11.protocol.XProtocolPlugin;
+import com.github.moaxcp.x11.protocol.res.ResPlugin;
+
+@SuppressWarnings("module")
+module com.github.moaxcp.x11.protocol.res {
+ exports com.github.moaxcp.x11.protocol.res;
+
+ requires static lombok;
+ requires com.github.moaxcp.x11.protocol.core;
+ provides XProtocolPlugin with ResPlugin;
+}
\ No newline at end of file
diff --git a/x11-protocol/x11-protocol-screensaver/build.gradle b/x11-protocol/x11-protocol-screensaver/build.gradle
index b0da7059..5cec69fe 100644
--- a/x11-protocol/x11-protocol-screensaver/build.gradle
+++ b/x11-protocol/x11-protocol-screensaver/build.gradle
@@ -10,8 +10,8 @@ plugins {
description = 'An implementation of the x11 screensaver protocol in java'
java {
- sourceCompatibility = JavaVersion.VERSION_1_8
- targetCompatibility = JavaVersion.VERSION_1_8
+ sourceCompatibility = JavaVersion.VERSION_21
+ targetCompatibility = JavaVersion.VERSION_21
withSourcesJar()
withJavadocJar()
}
diff --git a/x11-protocol/x11-protocol-screensaver/src/main/java/module-info.java b/x11-protocol/x11-protocol-screensaver/src/main/java/module-info.java
new file mode 100644
index 00000000..6d085585
--- /dev/null
+++ b/x11-protocol/x11-protocol-screensaver/src/main/java/module-info.java
@@ -0,0 +1,12 @@
+import com.github.moaxcp.x11.protocol.XProtocolPlugin;
+import com.github.moaxcp.x11.protocol.screensaver.ScreensaverPlugin;
+
+@SuppressWarnings("module")
+module com.github.moaxcp.x11.protocol.screensaver {
+ exports com.github.moaxcp.x11.protocol.screensaver;
+
+ requires static lombok;
+ requires com.github.moaxcp.x11.protocol.core;
+ requires com.github.moaxcp.x11.protocol.xproto;
+ provides XProtocolPlugin with ScreensaverPlugin;
+}
\ No newline at end of file
diff --git a/x11-protocol/x11-protocol-shape/build.gradle b/x11-protocol/x11-protocol-shape/build.gradle
index b9850966..6fa58b9d 100644
--- a/x11-protocol/x11-protocol-shape/build.gradle
+++ b/x11-protocol/x11-protocol-shape/build.gradle
@@ -10,8 +10,8 @@ plugins {
description = 'An implementation of the x11 shape protocol in java'
java {
- sourceCompatibility = JavaVersion.VERSION_1_8
- targetCompatibility = JavaVersion.VERSION_1_8
+ sourceCompatibility = JavaVersion.VERSION_21
+ targetCompatibility = JavaVersion.VERSION_21
withSourcesJar()
withJavadocJar()
}
diff --git a/x11-protocol/x11-protocol-shape/src/main/java/module-info.java b/x11-protocol/x11-protocol-shape/src/main/java/module-info.java
new file mode 100644
index 00000000..2fb26923
--- /dev/null
+++ b/x11-protocol/x11-protocol-shape/src/main/java/module-info.java
@@ -0,0 +1,12 @@
+import com.github.moaxcp.x11.protocol.XProtocolPlugin;
+import com.github.moaxcp.x11.protocol.shape.ShapePlugin;
+
+@SuppressWarnings("module")
+module com.github.moaxcp.x11.protocol.shape {
+ exports com.github.moaxcp.x11.protocol.shape;
+
+ requires static lombok;
+ requires com.github.moaxcp.x11.protocol.core;
+ requires com.github.moaxcp.x11.protocol.xproto;
+ provides XProtocolPlugin with ShapePlugin;
+}
\ No newline at end of file
diff --git a/x11-protocol/x11-protocol-shm/build.gradle b/x11-protocol/x11-protocol-shm/build.gradle
index ae5e6d70..80dd3934 100644
--- a/x11-protocol/x11-protocol-shm/build.gradle
+++ b/x11-protocol/x11-protocol-shm/build.gradle
@@ -10,8 +10,8 @@ plugins {
description = 'An implementation of the x11 shm protocol in java'
java {
- sourceCompatibility = JavaVersion.VERSION_1_8
- targetCompatibility = JavaVersion.VERSION_1_8
+ sourceCompatibility = JavaVersion.VERSION_21
+ targetCompatibility = JavaVersion.VERSION_21
withSourcesJar()
withJavadocJar()
}
diff --git a/x11-protocol/x11-protocol-shm/src/main/java/module-info.java b/x11-protocol/x11-protocol-shm/src/main/java/module-info.java
new file mode 100644
index 00000000..a3488ef4
--- /dev/null
+++ b/x11-protocol/x11-protocol-shm/src/main/java/module-info.java
@@ -0,0 +1,11 @@
+import com.github.moaxcp.x11.protocol.XProtocolPlugin;
+import com.github.moaxcp.x11.protocol.shm.ShmPlugin;
+
+@SuppressWarnings("module")
+module com.github.moaxcp.x11.protocol.shm {
+ exports com.github.moaxcp.x11.protocol.shm;
+
+ requires static lombok;
+ requires com.github.moaxcp.x11.protocol.core;
+ provides XProtocolPlugin with ShmPlugin;
+}
\ No newline at end of file
diff --git a/x11-protocol/x11-protocol-sync/build.gradle b/x11-protocol/x11-protocol-sync/build.gradle
index 571bc4e5..f430ac4a 100644
--- a/x11-protocol/x11-protocol-sync/build.gradle
+++ b/x11-protocol/x11-protocol-sync/build.gradle
@@ -10,8 +10,8 @@ plugins {
description = 'An implementation of the x11 sync protocol in java'
java {
- sourceCompatibility = JavaVersion.VERSION_1_8
- targetCompatibility = JavaVersion.VERSION_1_8
+ sourceCompatibility = JavaVersion.VERSION_21
+ targetCompatibility = JavaVersion.VERSION_21
withSourcesJar()
withJavadocJar()
}
diff --git a/x11-protocol/x11-protocol-sync/src/main/java/module-info.java b/x11-protocol/x11-protocol-sync/src/main/java/module-info.java
new file mode 100644
index 00000000..3064ba79
--- /dev/null
+++ b/x11-protocol/x11-protocol-sync/src/main/java/module-info.java
@@ -0,0 +1,11 @@
+import com.github.moaxcp.x11.protocol.XProtocolPlugin;
+import com.github.moaxcp.x11.protocol.sync.SyncPlugin;
+
+@SuppressWarnings("module")
+module com.github.moaxcp.x11.protocol.sync {
+ exports com.github.moaxcp.x11.protocol.sync;
+
+ requires static lombok;
+ requires com.github.moaxcp.x11.protocol.core;
+ provides XProtocolPlugin with SyncPlugin;
+}
\ No newline at end of file
diff --git a/x11-protocol/x11-protocol-xcmisc/build.gradle b/x11-protocol/x11-protocol-xcmisc/build.gradle
index 74eb6851..f03f58ca 100644
--- a/x11-protocol/x11-protocol-xcmisc/build.gradle
+++ b/x11-protocol/x11-protocol-xcmisc/build.gradle
@@ -10,8 +10,8 @@ plugins {
description = 'An implementation of the x11 xcmisc protocol in java'
java {
- sourceCompatibility = JavaVersion.VERSION_1_8
- targetCompatibility = JavaVersion.VERSION_1_8
+ sourceCompatibility = JavaVersion.VERSION_21
+ targetCompatibility = JavaVersion.VERSION_21
withSourcesJar()
withJavadocJar()
}
diff --git a/x11-protocol/x11-protocol-xcmisc/src/main/java/module-info.java b/x11-protocol/x11-protocol-xcmisc/src/main/java/module-info.java
new file mode 100644
index 00000000..775796bd
--- /dev/null
+++ b/x11-protocol/x11-protocol-xcmisc/src/main/java/module-info.java
@@ -0,0 +1,11 @@
+import com.github.moaxcp.x11.protocol.XProtocolPlugin;
+import com.github.moaxcp.x11.protocol.xc_misc.XcMiscplugin;
+
+@SuppressWarnings("module")
+module com.github.moaxcp.x11.protocol.xcmisc {
+ exports com.github.moaxcp.x11.protocol.xc_misc;
+
+ requires static lombok;
+ requires com.github.moaxcp.x11.protocol.core;
+ provides XProtocolPlugin with XcMiscplugin;
+}
\ No newline at end of file
diff --git a/x11-protocol/x11-protocol-xevie/build.gradle b/x11-protocol/x11-protocol-xevie/build.gradle
index af9dada1..50e0f272 100644
--- a/x11-protocol/x11-protocol-xevie/build.gradle
+++ b/x11-protocol/x11-protocol-xevie/build.gradle
@@ -10,8 +10,8 @@ plugins {
description = 'An implementation of the x11 xevie protocol in java'
java {
- sourceCompatibility = JavaVersion.VERSION_1_8
- targetCompatibility = JavaVersion.VERSION_1_8
+ sourceCompatibility = JavaVersion.VERSION_21
+ targetCompatibility = JavaVersion.VERSION_21
withSourcesJar()
withJavadocJar()
}
diff --git a/x11-protocol/x11-protocol-xevie/src/main/java/module-info.java b/x11-protocol/x11-protocol-xevie/src/main/java/module-info.java
new file mode 100644
index 00000000..748fc9d4
--- /dev/null
+++ b/x11-protocol/x11-protocol-xevie/src/main/java/module-info.java
@@ -0,0 +1,11 @@
+import com.github.moaxcp.x11.protocol.XProtocolPlugin;
+import com.github.moaxcp.x11.protocol.xevie.XeviePlugin;
+
+@SuppressWarnings("module")
+module com.github.moaxcp.x11.protocol.xeive {
+ exports com.github.moaxcp.x11.protocol.xevie;
+
+ requires static lombok;
+ requires com.github.moaxcp.x11.protocol.core;
+ provides XProtocolPlugin with XeviePlugin;
+}
\ No newline at end of file
diff --git a/x11-protocol/x11-protocol-xf86dri/build.gradle b/x11-protocol/x11-protocol-xf86dri/build.gradle
index 01a9b1d7..203361a5 100644
--- a/x11-protocol/x11-protocol-xf86dri/build.gradle
+++ b/x11-protocol/x11-protocol-xf86dri/build.gradle
@@ -10,8 +10,8 @@ plugins {
description = 'An implementation of the x11 xf86dri protocol in java'
java {
- sourceCompatibility = JavaVersion.VERSION_1_8
- targetCompatibility = JavaVersion.VERSION_1_8
+ sourceCompatibility = JavaVersion.VERSION_21
+ targetCompatibility = JavaVersion.VERSION_21
withSourcesJar()
withJavadocJar()
}
diff --git a/x11-protocol/x11-protocol-xf86dri/src/main/java/module-info.java b/x11-protocol/x11-protocol-xf86dri/src/main/java/module-info.java
new file mode 100644
index 00000000..21bebefd
--- /dev/null
+++ b/x11-protocol/x11-protocol-xf86dri/src/main/java/module-info.java
@@ -0,0 +1,11 @@
+import com.github.moaxcp.x11.protocol.XProtocolPlugin;
+import com.github.moaxcp.x11.protocol.xf86dri.Xf86driPlugin;
+
+@SuppressWarnings("module")
+module com.github.moaxcp.x11.protocol.xf86dri {
+ exports com.github.moaxcp.x11.protocol.xf86dri;
+
+ requires static lombok;
+ requires com.github.moaxcp.x11.protocol.core;
+ provides XProtocolPlugin with Xf86driPlugin;
+}
\ No newline at end of file
diff --git a/x11-protocol/x11-protocol-xf86vidmode/build.gradle b/x11-protocol/x11-protocol-xf86vidmode/build.gradle
index 050d0266..305a819b 100644
--- a/x11-protocol/x11-protocol-xf86vidmode/build.gradle
+++ b/x11-protocol/x11-protocol-xf86vidmode/build.gradle
@@ -10,8 +10,8 @@ plugins {
description = 'An implementation of the x11 xf86vidmode protocol in java'
java {
- sourceCompatibility = JavaVersion.VERSION_1_8
- targetCompatibility = JavaVersion.VERSION_1_8
+ sourceCompatibility = JavaVersion.VERSION_21
+ targetCompatibility = JavaVersion.VERSION_21
withSourcesJar()
withJavadocJar()
}
diff --git a/x11-protocol/x11-protocol-xf86vidmode/src/main/java/module-info.java b/x11-protocol/x11-protocol-xf86vidmode/src/main/java/module-info.java
new file mode 100644
index 00000000..0ea6d746
--- /dev/null
+++ b/x11-protocol/x11-protocol-xf86vidmode/src/main/java/module-info.java
@@ -0,0 +1,11 @@
+import com.github.moaxcp.x11.protocol.XProtocolPlugin;
+import com.github.moaxcp.x11.protocol.xf86vidmode.Xf86vidmodePlugin;
+
+@SuppressWarnings("module")
+module com.github.moaxcp.x11.protocol.xf86vidmode {
+ exports com.github.moaxcp.x11.protocol.xf86vidmode;
+
+ requires static lombok;
+ requires com.github.moaxcp.x11.protocol.core;
+ provides XProtocolPlugin with Xf86vidmodePlugin;
+}
\ No newline at end of file
diff --git a/x11-protocol/x11-protocol-xfixes/build.gradle b/x11-protocol/x11-protocol-xfixes/build.gradle
index 1e5d188b..4dbe3b55 100644
--- a/x11-protocol/x11-protocol-xfixes/build.gradle
+++ b/x11-protocol/x11-protocol-xfixes/build.gradle
@@ -10,8 +10,8 @@ plugins {
description = 'An implementation of the x11 xfixes protocol in java'
java {
- sourceCompatibility = JavaVersion.VERSION_1_8
- targetCompatibility = JavaVersion.VERSION_1_8
+ sourceCompatibility = JavaVersion.VERSION_21
+ targetCompatibility = JavaVersion.VERSION_21
withSourcesJar()
withJavadocJar()
}
diff --git a/x11-protocol/x11-protocol-xfixes/src/main/java/module-info.java b/x11-protocol/x11-protocol-xfixes/src/main/java/module-info.java
new file mode 100644
index 00000000..899db88e
--- /dev/null
+++ b/x11-protocol/x11-protocol-xfixes/src/main/java/module-info.java
@@ -0,0 +1,13 @@
+import com.github.moaxcp.x11.protocol.XProtocolPlugin;
+import com.github.moaxcp.x11.protocol.xfixes.XfixesPlugin;
+
+@SuppressWarnings("module")
+module com.github.moaxcp.x11.protocol.xfixes {
+ exports com.github.moaxcp.x11.protocol.xfixes;
+
+ requires static lombok;
+ requires com.github.moaxcp.x11.protocol.core;
+ requires com.github.moaxcp.x11.protocol.xproto;
+ requires com.github.moaxcp.x11.protocol.shape;
+ provides XProtocolPlugin with XfixesPlugin;
+}
\ No newline at end of file
diff --git a/x11-protocol/x11-protocol-xinerama/build.gradle b/x11-protocol/x11-protocol-xinerama/build.gradle
index 0d75f6c3..448c3d75 100644
--- a/x11-protocol/x11-protocol-xinerama/build.gradle
+++ b/x11-protocol/x11-protocol-xinerama/build.gradle
@@ -10,8 +10,8 @@ plugins {
description = 'An implementation of the x11 xinerama protocol in java'
java {
- sourceCompatibility = JavaVersion.VERSION_1_8
- targetCompatibility = JavaVersion.VERSION_1_8
+ sourceCompatibility = JavaVersion.VERSION_21
+ targetCompatibility = JavaVersion.VERSION_21
withSourcesJar()
withJavadocJar()
}
diff --git a/x11-protocol/x11-protocol-xinerama/src/main/java/module-info.java b/x11-protocol/x11-protocol-xinerama/src/main/java/module-info.java
new file mode 100644
index 00000000..0a1218e9
--- /dev/null
+++ b/x11-protocol/x11-protocol-xinerama/src/main/java/module-info.java
@@ -0,0 +1,11 @@
+import com.github.moaxcp.x11.protocol.XProtocolPlugin;
+import com.github.moaxcp.x11.protocol.xinerama.XineramaPlugin;
+
+@SuppressWarnings("module")
+module com.github.moaxcp.x11.protocol.xinerama {
+ exports com.github.moaxcp.x11.protocol.xinerama;
+
+ requires static lombok;
+ requires com.github.moaxcp.x11.protocol.core;
+ provides XProtocolPlugin with XineramaPlugin;
+}
\ No newline at end of file
diff --git a/x11-protocol/x11-protocol-xinput/build.gradle b/x11-protocol/x11-protocol-xinput/build.gradle
index a0eef960..6b8623e1 100644
--- a/x11-protocol/x11-protocol-xinput/build.gradle
+++ b/x11-protocol/x11-protocol-xinput/build.gradle
@@ -10,8 +10,8 @@ plugins {
description = 'An implementation of the x11 xinput protocol in java'
java {
- sourceCompatibility = JavaVersion.VERSION_1_8
- targetCompatibility = JavaVersion.VERSION_1_8
+ sourceCompatibility = JavaVersion.VERSION_21
+ targetCompatibility = JavaVersion.VERSION_21
withSourcesJar()
withJavadocJar()
}
diff --git a/x11-protocol/x11-protocol-xinput/src/main/java/module-info.java b/x11-protocol/x11-protocol-xinput/src/main/java/module-info.java
new file mode 100644
index 00000000..d524c074
--- /dev/null
+++ b/x11-protocol/x11-protocol-xinput/src/main/java/module-info.java
@@ -0,0 +1,12 @@
+import com.github.moaxcp.x11.protocol.XProtocolPlugin;
+import com.github.moaxcp.x11.protocol.xinput.XinputPlugin;
+
+@SuppressWarnings("module")
+module com.github.moaxcp.x11.protocol.xinput {
+ exports com.github.moaxcp.x11.protocol.xinput;
+
+ requires static lombok;
+ requires com.github.moaxcp.x11.protocol.core;
+ requires com.github.moaxcp.x11.protocol.xproto;
+ provides XProtocolPlugin with XinputPlugin;
+}
\ No newline at end of file
diff --git a/x11-protocol/x11-protocol-xkb/build.gradle b/x11-protocol/x11-protocol-xkb/build.gradle
index cdfbcff2..46eff154 100644
--- a/x11-protocol/x11-protocol-xkb/build.gradle
+++ b/x11-protocol/x11-protocol-xkb/build.gradle
@@ -10,8 +10,8 @@ plugins {
description = 'An implementation of the x11 xkb protocol in java'
java {
- sourceCompatibility = JavaVersion.VERSION_1_8
- targetCompatibility = JavaVersion.VERSION_1_8
+ sourceCompatibility = JavaVersion.VERSION_21
+ targetCompatibility = JavaVersion.VERSION_21
withSourcesJar()
withJavadocJar()
}
diff --git a/x11-protocol/x11-protocol-xkb/src/main/java/module-info.java b/x11-protocol/x11-protocol-xkb/src/main/java/module-info.java
new file mode 100644
index 00000000..a1bc9c84
--- /dev/null
+++ b/x11-protocol/x11-protocol-xkb/src/main/java/module-info.java
@@ -0,0 +1,12 @@
+import com.github.moaxcp.x11.protocol.XProtocolPlugin;
+import com.github.moaxcp.x11.protocol.xkb.XkbPlugin;
+
+@SuppressWarnings("module")
+module com.github.moaxcp.x11.protocol.xkb {
+ exports com.github.moaxcp.x11.protocol.xkb;
+
+ requires static lombok;
+ requires com.github.moaxcp.x11.protocol.core;
+ requires com.github.moaxcp.x11.protocol.xproto;
+ provides XProtocolPlugin with XkbPlugin;
+}
\ No newline at end of file
diff --git a/x11-protocol/x11-protocol-xprint/build.gradle b/x11-protocol/x11-protocol-xprint/build.gradle
index b209b806..5dab0294 100644
--- a/x11-protocol/x11-protocol-xprint/build.gradle
+++ b/x11-protocol/x11-protocol-xprint/build.gradle
@@ -10,8 +10,8 @@ plugins {
description = 'An implementation of the x11 xprint protocol in java'
java {
- sourceCompatibility = JavaVersion.VERSION_1_8
- targetCompatibility = JavaVersion.VERSION_1_8
+ sourceCompatibility = JavaVersion.VERSION_21
+ targetCompatibility = JavaVersion.VERSION_21
withSourcesJar()
withJavadocJar()
}
diff --git a/x11-protocol/x11-protocol-xprint/src/main/java/module-info.java b/x11-protocol/x11-protocol-xprint/src/main/java/module-info.java
new file mode 100644
index 00000000..b3540a3a
--- /dev/null
+++ b/x11-protocol/x11-protocol-xprint/src/main/java/module-info.java
@@ -0,0 +1,11 @@
+import com.github.moaxcp.x11.protocol.XProtocolPlugin;
+import com.github.moaxcp.x11.protocol.xprint.XprintPlugin;
+
+@SuppressWarnings("module")
+module com.github.moaxcp.x11.protocol.xprint {
+ exports com.github.moaxcp.x11.protocol.xprint;
+
+ requires static lombok;
+ requires com.github.moaxcp.x11.protocol.core;
+ provides XProtocolPlugin with XprintPlugin;
+}
\ No newline at end of file
diff --git a/x11-protocol/x11-protocol-xproto/build.gradle b/x11-protocol/x11-protocol-xproto/build.gradle
index f8ae0092..08a306c0 100644
--- a/x11-protocol/x11-protocol-xproto/build.gradle
+++ b/x11-protocol/x11-protocol-xproto/build.gradle
@@ -10,8 +10,8 @@ plugins {
description = 'An implementation of the x11 xproto protocol in java'
java {
- sourceCompatibility = JavaVersion.VERSION_1_8
- targetCompatibility = JavaVersion.VERSION_1_8
+ sourceCompatibility = JavaVersion.VERSION_21
+ targetCompatibility = JavaVersion.VERSION_21
withSourcesJar()
withJavadocJar()
}
@@ -36,7 +36,6 @@ x11Protocol {
outputSrc = file('src/main/java')
outputResources = file('src/main/resources')
xcbXmls = file('src/main/protocol')
- keysymHeaders = file('src/main/keysym')
}
publishing {
diff --git a/x11-protocol/x11-protocol-xproto/src/main/java/module-info.java b/x11-protocol/x11-protocol-xproto/src/main/java/module-info.java
new file mode 100644
index 00000000..906c0f96
--- /dev/null
+++ b/x11-protocol/x11-protocol-xproto/src/main/java/module-info.java
@@ -0,0 +1,11 @@
+import com.github.moaxcp.x11.protocol.XProtocolPlugin;
+import com.github.moaxcp.x11.protocol.xproto.XprotoPlugin;
+
+@SuppressWarnings("module")
+module com.github.moaxcp.x11.protocol.xproto {
+ exports com.github.moaxcp.x11.protocol.xproto;
+
+ requires com.github.moaxcp.x11.protocol.core;
+ requires static lombok;
+ provides XProtocolPlugin with XprotoPlugin;
+}
\ No newline at end of file
diff --git a/x11-protocol/x11-protocol-xselinux/build.gradle b/x11-protocol/x11-protocol-xselinux/build.gradle
index 51421c82..49b8fcec 100644
--- a/x11-protocol/x11-protocol-xselinux/build.gradle
+++ b/x11-protocol/x11-protocol-xselinux/build.gradle
@@ -10,8 +10,8 @@ plugins {
description = 'An implementation of the x11 xslinux protocol in java'
java {
- sourceCompatibility = JavaVersion.VERSION_1_8
- targetCompatibility = JavaVersion.VERSION_1_8
+ sourceCompatibility = JavaVersion.VERSION_21
+ targetCompatibility = JavaVersion.VERSION_21
withSourcesJar()
withJavadocJar()
}
diff --git a/x11-protocol/x11-protocol-xselinux/src/main/java/module-info.java b/x11-protocol/x11-protocol-xselinux/src/main/java/module-info.java
new file mode 100644
index 00000000..b24f20a2
--- /dev/null
+++ b/x11-protocol/x11-protocol-xselinux/src/main/java/module-info.java
@@ -0,0 +1,11 @@
+import com.github.moaxcp.x11.protocol.XProtocolPlugin;
+import com.github.moaxcp.x11.protocol.xselinux.XselinuxPlugin;
+
+@SuppressWarnings("module")
+module com.github.moaxcp.x11.protocol.xselinux {
+ exports com.github.moaxcp.x11.protocol.xselinux;
+
+ requires com.github.moaxcp.x11.protocol.core;
+ requires static lombok;
+ provides XProtocolPlugin with XselinuxPlugin;
+}
\ No newline at end of file
diff --git a/x11-protocol/x11-protocol-xtest/build.gradle b/x11-protocol/x11-protocol-xtest/build.gradle
index c77d0537..a44b6461 100644
--- a/x11-protocol/x11-protocol-xtest/build.gradle
+++ b/x11-protocol/x11-protocol-xtest/build.gradle
@@ -10,8 +10,8 @@ plugins {
description = 'An implementation of the x11 xtest protocol in java'
java {
- sourceCompatibility = JavaVersion.VERSION_1_8
- targetCompatibility = JavaVersion.VERSION_1_8
+ sourceCompatibility = JavaVersion.VERSION_21
+ targetCompatibility = JavaVersion.VERSION_21
withSourcesJar()
withJavadocJar()
}
diff --git a/x11-protocol/x11-protocol-xtest/src/main/java/module-info.java b/x11-protocol/x11-protocol-xtest/src/main/java/module-info.java
new file mode 100644
index 00000000..9aaf8361
--- /dev/null
+++ b/x11-protocol/x11-protocol-xtest/src/main/java/module-info.java
@@ -0,0 +1,11 @@
+import com.github.moaxcp.x11.protocol.XProtocolPlugin;
+import com.github.moaxcp.x11.protocol.xtest.XtestPlugin;
+
+@SuppressWarnings("module")
+module com.github.moaxcp.x11.protocol.xtest {
+ exports com.github.moaxcp.x11.protocol.xtest;
+
+ requires com.github.moaxcp.x11.protocol.core;
+ requires static lombok;
+ provides XProtocolPlugin with XtestPlugin;
+}
\ No newline at end of file
diff --git a/x11-protocol/x11-protocol-xv/build.gradle b/x11-protocol/x11-protocol-xv/build.gradle
index 37ee98c3..4c61b775 100644
--- a/x11-protocol/x11-protocol-xv/build.gradle
+++ b/x11-protocol/x11-protocol-xv/build.gradle
@@ -10,8 +10,8 @@ plugins {
description = 'An implementation of the x11 xv protocol in java'
java {
- sourceCompatibility = JavaVersion.VERSION_1_8
- targetCompatibility = JavaVersion.VERSION_1_8
+ sourceCompatibility = JavaVersion.VERSION_21
+ targetCompatibility = JavaVersion.VERSION_21
withSourcesJar()
withJavadocJar()
}
diff --git a/x11-protocol/x11-protocol-xv/src/main/java/module-info.java b/x11-protocol/x11-protocol-xv/src/main/java/module-info.java
new file mode 100644
index 00000000..d6d4a866
--- /dev/null
+++ b/x11-protocol/x11-protocol-xv/src/main/java/module-info.java
@@ -0,0 +1,12 @@
+import com.github.moaxcp.x11.protocol.XProtocolPlugin;
+import com.github.moaxcp.x11.protocol.xv.XvPlugin;
+
+@SuppressWarnings("module")
+module com.github.moaxcp.x11.protocol.xv {
+ exports com.github.moaxcp.x11.protocol.xv;
+
+ requires com.github.moaxcp.x11.protocol.core;
+ requires com.github.moaxcp.x11.protocol.xproto;
+ requires static lombok;
+ provides XProtocolPlugin with XvPlugin;
+}
\ No newline at end of file
diff --git a/x11-protocol/x11-protocol-xvmc/build.gradle b/x11-protocol/x11-protocol-xvmc/build.gradle
index dd2035f2..c0d8094d 100644
--- a/x11-protocol/x11-protocol-xvmc/build.gradle
+++ b/x11-protocol/x11-protocol-xvmc/build.gradle
@@ -10,8 +10,8 @@ plugins {
description = 'An implementation of the x11 xvmc protocol in java'
java {
- sourceCompatibility = JavaVersion.VERSION_1_8
- targetCompatibility = JavaVersion.VERSION_1_8
+ sourceCompatibility = JavaVersion.VERSION_21
+ targetCompatibility = JavaVersion.VERSION_21
withSourcesJar()
withJavadocJar()
}
diff --git a/x11-protocol/x11-protocol-xvmc/src/main/java/module-info.java b/x11-protocol/x11-protocol-xvmc/src/main/java/module-info.java
new file mode 100644
index 00000000..25fd376d
--- /dev/null
+++ b/x11-protocol/x11-protocol-xvmc/src/main/java/module-info.java
@@ -0,0 +1,12 @@
+import com.github.moaxcp.x11.protocol.XProtocolPlugin;
+import com.github.moaxcp.x11.protocol.xvmc.XvmcPlugin;
+
+@SuppressWarnings("module")
+module com.github.moaxcp.x11.protocol.xvmc {
+ exports com.github.moaxcp.x11.protocol.xvmc;
+
+ requires com.github.moaxcp.x11.protocol.core;
+ requires com.github.moaxcp.x11.protocol.xv;
+ requires static lombok;
+ provides XProtocolPlugin with XvmcPlugin;
+}
\ No newline at end of file
diff --git a/x11-toolkit/build.gradle b/x11-toolkit/build.gradle
index 1e496f89..e0debe4a 100644
--- a/x11-toolkit/build.gradle
+++ b/x11-toolkit/build.gradle
@@ -9,8 +9,8 @@ plugins {
description = 'An x11 toolkit in java'
java {
- sourceCompatibility = JavaVersion.VERSION_1_8
- targetCompatibility = JavaVersion.VERSION_1_8
+ sourceCompatibility = JavaVersion.VERSION_21
+ targetCompatibility = JavaVersion.VERSION_21
withSourcesJar()
withJavadocJar()
}
diff --git a/x11-toolkit/src/main/java/module-info.java b/x11-toolkit/src/main/java/module-info.java
new file mode 100644
index 00000000..86630136
--- /dev/null
+++ b/x11-toolkit/src/main/java/module-info.java
@@ -0,0 +1,7 @@
+@SuppressWarnings("module")
+module com.github.moaxcp.x11.toolkit {
+ exports com.github.moaxcp.x11.toolkit;
+
+ requires transitive com.github.moaxcp.x11.client;
+ requires static lombok;
+}
\ No newline at end of file
diff --git a/xephyr-runner/build.gradle b/xephyr-runner/build.gradle
index 1238aff4..b03410b0 100644
--- a/xephyr-runner/build.gradle
+++ b/xephyr-runner/build.gradle
@@ -18,8 +18,8 @@ dependencies {
}
java {
- sourceCompatibility = JavaVersion.VERSION_1_8
- targetCompatibility = JavaVersion.VERSION_1_8
+ sourceCompatibility = JavaVersion.VERSION_21
+ targetCompatibility = JavaVersion.VERSION_21
withSourcesJar()
withJavadocJar()
}
diff --git a/xephyr-runner/src/main/java/module-info.java b/xephyr-runner/src/main/java/module-info.java
new file mode 100644
index 00000000..af43dafe
--- /dev/null
+++ b/xephyr-runner/src/main/java/module-info.java
@@ -0,0 +1,6 @@
+@SuppressWarnings("module")
+module com.github.moaxcp.x11.xephyr {
+ exports com.github.moaxcp.x11.xephyr;
+
+ requires static lombok;
+}
\ No newline at end of file