迁移聊天动作选择入口
This commit is contained in:
@@ -67,7 +67,7 @@ export { bindDailySignInControls } from "./chat-room/daily-sign-in.js";
|
||||
export { bindEarnPanelControls, createEarnPanelData } from "./chat-room/earn-panel.js";
|
||||
export { applyFontSize, bindChatFontSizeControl, CHAT_FONT_SIZE_STORAGE_KEY, restoreChatFontSize } from "./chat-room/font-size.js";
|
||||
export { bindChatImageUploadControl } from "./chat-room/image-upload.js";
|
||||
export { bindChatComposerControls } from "./chat-room/composer.js";
|
||||
export { bindChatComposerControls, setChatComposerAction } from "./chat-room/composer.js";
|
||||
export { bindChatToast } from "./chat-room/toast.js";
|
||||
export { bindFriendPanelControls, closeFriendPanel, friendSearch, loadFriends, openFriendPanel, quickFriendAction } from "./chat-room/friend-panel.js";
|
||||
export { bindFriendNotificationControls, setupBannerNotification, setupFriendNotification, showFriendBanner } from "./chat-room/friend-notifications.js";
|
||||
@@ -269,7 +269,7 @@ import { bindDailySignInControls } from "./chat-room/daily-sign-in.js";
|
||||
import { bindEarnPanelControls, createEarnPanelData } from "./chat-room/earn-panel.js";
|
||||
import { applyFontSize, bindChatFontSizeControl, CHAT_FONT_SIZE_STORAGE_KEY, restoreChatFontSize } from "./chat-room/font-size.js";
|
||||
import { bindChatImageUploadControl } from "./chat-room/image-upload.js";
|
||||
import { bindChatComposerControls } from "./chat-room/composer.js";
|
||||
import { bindChatComposerControls, setChatComposerAction } from "./chat-room/composer.js";
|
||||
import { bindChatToast } from "./chat-room/toast.js";
|
||||
import { bindFriendPanelControls, closeFriendPanel, friendSearch, loadFriends, openFriendPanel, quickFriendAction } from "./chat-room/friend-panel.js";
|
||||
import { bindFriendNotificationControls, setupBannerNotification, setupFriendNotification, showFriendBanner } from "./chat-room/friend-notifications.js";
|
||||
@@ -489,6 +489,7 @@ if (typeof window !== "undefined") {
|
||||
bindChatFontSizeControl,
|
||||
bindChatImageUploadControl,
|
||||
bindChatComposerControls,
|
||||
setChatComposerAction,
|
||||
bindChatToast,
|
||||
bindFriendPanelControls,
|
||||
bindFriendNotificationControls,
|
||||
@@ -702,6 +703,7 @@ if (typeof window !== "undefined") {
|
||||
window.isExpiredChatImageMessage = isExpiredChatImageMessage;
|
||||
window.localClearScreen = localClearScreen;
|
||||
window.normalizeSafeChatUrl = normalizeSafeChatUrl;
|
||||
window.setAction = setChatComposerAction;
|
||||
window.syncAutoScrollControls = syncAutoScrollControls;
|
||||
window.openChatImageLightbox = openChatImageLightbox;
|
||||
window.closeFriendPanel = closeFriendPanel;
|
||||
|
||||
@@ -27,3 +27,32 @@ export function bindChatComposerControls() {
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* 设置聊天动作并把焦点带回输入框。
|
||||
* 该入口兼容旧模板可能存在的 `setAction(...)` 调用,切换右侧标签仍交给 Blade 里的 switchTab 处理。
|
||||
*
|
||||
* @param {string} action 动作名称
|
||||
* @param {(tab:string) => void} switchTabHandler 右侧标签切换函数
|
||||
* @returns {void}
|
||||
*/
|
||||
export function setChatComposerAction(
|
||||
action,
|
||||
switchTabHandler = typeof window !== "undefined" ? window.switchTab : null,
|
||||
) {
|
||||
const actionSelect = document.getElementById("action");
|
||||
const contentInput = document.getElementById("content");
|
||||
|
||||
if (actionSelect) {
|
||||
actionSelect.value = action;
|
||||
}
|
||||
|
||||
// 右侧在线名单切换仍在 Blade 主脚本内,模块只通过兼容入口调用。
|
||||
if (typeof switchTabHandler === "function") {
|
||||
switchTabHandler("users");
|
||||
}
|
||||
|
||||
if (contentInput) {
|
||||
contentInput.focus();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1743,18 +1743,6 @@
|
||||
}
|
||||
});
|
||||
|
||||
// ── 动作选择 ──────────────────────────────────────
|
||||
/**
|
||||
* 设置发言动作并聚焦输入框
|
||||
*
|
||||
* @param {string} act 动作名称
|
||||
*/
|
||||
function setAction(act) {
|
||||
document.getElementById('action').value = act;
|
||||
switchTab('users');
|
||||
document.getElementById('content').focus();
|
||||
}
|
||||
|
||||
// ── 自动滚屏 ──────────────────────────────────────
|
||||
const autoScrollEl = document.getElementById('auto_scroll');
|
||||
if (autoScrollEl) {
|
||||
|
||||
Reference in New Issue
Block a user