From 8d9ede0b826ec7e58ddbd452bd27666ee29ffe82 Mon Sep 17 00:00:00 2001 From: yelochick Date: Wed, 24 Sep 2025 14:56:49 +0800 Subject: [PATCH] feat: smart input pro v2.3.11 --- activation.conf.example | 2 ++ .../java/com/yelochick/ActivationPlugin.java | 23 +++++++++++++++---- .../OsLanguageManagerProxyTransformer.java | 8 ++++++- 3 files changed, 28 insertions(+), 5 deletions(-) create mode 100644 activation.conf.example diff --git a/activation.conf.example b/activation.conf.example new file mode 100644 index 0000000..1de7a6e --- /dev/null +++ b/activation.conf.example @@ -0,0 +1,2 @@ +[SmartInput] +EQUAL,O00oOOO0 diff --git a/src/main/java/com/yelochick/ActivationPlugin.java b/src/main/java/com/yelochick/ActivationPlugin.java index 65d4c28..3c0e1c5 100644 --- a/src/main/java/com/yelochick/ActivationPlugin.java +++ b/src/main/java/com/yelochick/ActivationPlugin.java @@ -1,14 +1,27 @@ package com.yelochick; +import com.janetfilter.core.Environment; +import com.janetfilter.core.models.FilterRule; import com.janetfilter.core.plugin.MyTransformer; +import com.janetfilter.core.plugin.PluginConfig; import com.janetfilter.core.plugin.PluginEntry; import com.yelochick.coolrequest.VipApiTransformer; import com.yelochick.smartinput.OsLanguageManagerProxyTransformer; +import java.util.ArrayList; import java.util.Arrays; +import java.util.Collections; import java.util.List; public class ActivationPlugin implements PluginEntry { + + private List smartInputRules; + + @Override + public void init(Environment environment, PluginConfig config) { + smartInputRules = Collections.unmodifiableList(config.getBySection("SmartInput")); + } + @Override public String getName() { return "ACTIVATION"; @@ -21,9 +34,11 @@ public class ActivationPlugin implements PluginEntry { @Override public List getTransformers() { - return Arrays.asList( - new VipApiTransformer(), - new OsLanguageManagerProxyTransformer() - ); + List transformers = new ArrayList<>(); + transformers.add(new VipApiTransformer()); + for (FilterRule rule : smartInputRules) { + transformers.add(new OsLanguageManagerProxyTransformer(rule.getRule())); + } + return transformers; } } diff --git a/src/main/java/com/yelochick/smartinput/OsLanguageManagerProxyTransformer.java b/src/main/java/com/yelochick/smartinput/OsLanguageManagerProxyTransformer.java index 813a606..7465027 100644 --- a/src/main/java/com/yelochick/smartinput/OsLanguageManagerProxyTransformer.java +++ b/src/main/java/com/yelochick/smartinput/OsLanguageManagerProxyTransformer.java @@ -14,9 +14,15 @@ import static jdk.internal.org.objectweb.asm.Opcodes.*; */ public class OsLanguageManagerProxyTransformer implements MyTransformer { + private final String hookClassName; + + public OsLanguageManagerProxyTransformer(String hookClassName) { + this.hookClassName = hookClassName; + } + @Override public String getHookClassName() { - return "O00oOo"; + return hookClassName; } @Override