Initial commit: TS3J TeamSpeak 3 Java client
Swing desktop client (core/desktop/swing Maven modules) built on the ts3j protocol library, included as a submodule. Native Opus voice with voice-activation detection, push-to-talk, and audio pre-processing. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
33
ts3-client/swing/src/main/java/com/ts3client/Main.java
Normal file
33
ts3-client/swing/src/main/java/com/ts3client/Main.java
Normal file
@@ -0,0 +1,33 @@
|
||||
package com.ts3client;
|
||||
|
||||
import com.ts3client.config.Settings;
|
||||
import com.ts3client.ui.MainFrame;
|
||||
|
||||
import javax.swing.SwingUtilities;
|
||||
import javax.swing.UIManager;
|
||||
|
||||
/**
|
||||
* Application entry point. Loads settings, applies the system look-and-feel and
|
||||
* shows the main window on the Swing event dispatch thread.
|
||||
*/
|
||||
public final class Main {
|
||||
|
||||
public static void main(String[] args) {
|
||||
// ts3j is verbose by default; keep the console quiet unless debugging.
|
||||
try {
|
||||
com.github.manevolent.ts3j.util.Ts3Debugging.setEnabled(false);
|
||||
} catch (Throwable ignored) {
|
||||
}
|
||||
|
||||
final Settings settings = Settings.load();
|
||||
|
||||
SwingUtilities.invokeLater(() -> {
|
||||
try {
|
||||
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
|
||||
} catch (Exception ignored) {
|
||||
// fall back to cross-platform L&F
|
||||
}
|
||||
new MainFrame(settings).setVisible(true);
|
||||
});
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user