Files
ShortX_ToolHub/ToolHub.js
2026-04-19 23:40:43 +08:00

67 lines
1.9 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
// ToolHub - 入口文件 (加载子模块并执行)
// 将本文件放入 ShortX 任务th_*.js 放入 ShortX 数据根目录/ToolHub/code/ 文件夹
function loadScript(relPath) {
try {
var base = shortx.getShortXDir();
var f = new java.io.File(base + "/ToolHub/code/" + relPath);
if (!f.exists()) {
throw "Not found: " + f.getAbsolutePath();
}
var r = new java.io.BufferedReader(new java.io.InputStreamReader(
new java.io.FileInputStream(f), "UTF-8"));
var sb = new java.lang.StringBuilder();
var line;
while ((line = r.readLine()) != null) {
sb.append(line).append("\n");
}
r.close();
var geval = eval;
geval(String(sb.toString()));
} catch(e) {
throw "loadScript(" + relPath + ") failed: " + e;
}
}
loadScript("th_1_base.js");
loadScript("th_2_core.js");
loadScript("th_3_panels.js");
loadScript("th_4_extra.js");
loadScript("th_5_entry.js");
var __out = (function() {
var entryInfo = getProcessInfo("entry");
var logger = new ToolHubLogger(entryInfo);
installCrashHandler(logger);
var app = new FloatBallAppWM(logger);
var closeRule = String(app.config.ACTION_CLOSE_ALL_RULE || "shortx.wm.floatball.CLOSE");
var startRet = null;
try {
startRet = app.startAsync(entryInfo, closeRule);
} catch (eTop) {
try { logger.fatal("TOP startAsync crash err=" + String(eTop)); } catch (eLog) {}
startRet = { ok: false, err: String(eTop) };
}
function optStr(v) {
return (v === undefined || v === null) ? "" : String(v);
}
var out = {
ok: true,
started: startRet && startRet.ok,
msg: optStr(startRet && startRet.msg),
closeAction: optStr(startRet && startRet.closeAction),
layout: startRet && startRet.layout || null
};
if (!out.started) {
out.err = optStr(startRet && startRet.err);
}
return out;
})();
JSON.stringify(__out);