迁移聊天动作选择入口
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 { bindEarnPanelControls, createEarnPanelData } from "./chat-room/earn-panel.js";
|
||||||
export { applyFontSize, bindChatFontSizeControl, CHAT_FONT_SIZE_STORAGE_KEY, restoreChatFontSize } from "./chat-room/font-size.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 { 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 { bindChatToast } from "./chat-room/toast.js";
|
||||||
export { bindFriendPanelControls, closeFriendPanel, friendSearch, loadFriends, openFriendPanel, quickFriendAction } from "./chat-room/friend-panel.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";
|
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 { bindEarnPanelControls, createEarnPanelData } from "./chat-room/earn-panel.js";
|
||||||
import { applyFontSize, bindChatFontSizeControl, CHAT_FONT_SIZE_STORAGE_KEY, restoreChatFontSize } from "./chat-room/font-size.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 { 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 { bindChatToast } from "./chat-room/toast.js";
|
||||||
import { bindFriendPanelControls, closeFriendPanel, friendSearch, loadFriends, openFriendPanel, quickFriendAction } from "./chat-room/friend-panel.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";
|
import { bindFriendNotificationControls, setupBannerNotification, setupFriendNotification, showFriendBanner } from "./chat-room/friend-notifications.js";
|
||||||
@@ -489,6 +489,7 @@ if (typeof window !== "undefined") {
|
|||||||
bindChatFontSizeControl,
|
bindChatFontSizeControl,
|
||||||
bindChatImageUploadControl,
|
bindChatImageUploadControl,
|
||||||
bindChatComposerControls,
|
bindChatComposerControls,
|
||||||
|
setChatComposerAction,
|
||||||
bindChatToast,
|
bindChatToast,
|
||||||
bindFriendPanelControls,
|
bindFriendPanelControls,
|
||||||
bindFriendNotificationControls,
|
bindFriendNotificationControls,
|
||||||
@@ -702,6 +703,7 @@ if (typeof window !== "undefined") {
|
|||||||
window.isExpiredChatImageMessage = isExpiredChatImageMessage;
|
window.isExpiredChatImageMessage = isExpiredChatImageMessage;
|
||||||
window.localClearScreen = localClearScreen;
|
window.localClearScreen = localClearScreen;
|
||||||
window.normalizeSafeChatUrl = normalizeSafeChatUrl;
|
window.normalizeSafeChatUrl = normalizeSafeChatUrl;
|
||||||
|
window.setAction = setChatComposerAction;
|
||||||
window.syncAutoScrollControls = syncAutoScrollControls;
|
window.syncAutoScrollControls = syncAutoScrollControls;
|
||||||
window.openChatImageLightbox = openChatImageLightbox;
|
window.openChatImageLightbox = openChatImageLightbox;
|
||||||
window.closeFriendPanel = closeFriendPanel;
|
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');
|
const autoScrollEl = document.getElementById('auto_scroll');
|
||||||
if (autoScrollEl) {
|
if (autoScrollEl) {
|
||||||
|
|||||||
Reference in New Issue
Block a user