[Update] Main Window: メッセージボックスからフォーカスが外れると、VRChat上ででるチャット入力中をstopするように。

それに伴ってfocus in/outイベントをcontroller.pyで管理。
[Refactor] 関数名を適切な名前へ変更。
This commit is contained in:
Sakamoto Shiina
2023-10-16 12:34:41 +09:00
parent a054f05b1b
commit bd71a96ccb
2 changed files with 18 additions and 8 deletions

View File

@@ -186,6 +186,14 @@ def messageBoxPressKeyAny(e):
else:
model.oscStopSendTyping()
def messageBoxFocusIn(e):
view.foregroundOffIfForegroundEnabled()
def messageBoxFocusOut(e):
view.foregroundOnIfForegroundEnabled()
if config.ENABLE_SEND_MESSAGE_TO_VRC is True:
model.oscStopSendTyping()
# func select languages
def initSetLanguageAndCountry():
select = config.SELECTED_TAB_YOUR_LANGUAGES[config.SELECTED_TAB_NO]
@@ -642,8 +650,10 @@ def createMainWindow():
"values": model.getListLanguageAndCountry(),
"callback_selected_language_preset_tab": callbackSelectedLanguagePresetTab,
"bind_Return": messageBoxPressKeyEnter,
"bind_Any_KeyPress": messageBoxPressKeyAny,
"message_box_bind_Return": messageBoxPressKeyEnter,
"message_box_bind_Any_KeyPress": messageBoxPressKeyAny,
"message_box_bind_FocusIn": messageBoxFocusIn,
"message_box_bind_FocusOut": messageBoxFocusOut,
},
config_window_registers={

12
view.py
View File

@@ -372,12 +372,12 @@ class View():
entry_message_box = getattr(vrct_gui, "entry_message_box")
entry_message_box.bind("<Return>", main_window_registers.get("bind_Return"))
entry_message_box.bind("<Any-KeyPress>", main_window_registers.get("bind_Any_KeyPress"))
entry_message_box.bind("<Return>", main_window_registers.get("message_box_bind_Return"))
entry_message_box.bind("<Any-KeyPress>", main_window_registers.get("message_box_bind_Any_KeyPress"))
entry_message_box.bind("<FocusIn>", self._foregroundOffForcefully)
entry_message_box.bind("<FocusOut>", self._foregroundOnForcefully)
entry_message_box.bind("<FocusIn>", main_window_registers.get("message_box_bind_FocusIn"))
entry_message_box.bind("<FocusOut>", main_window_registers.get("message_box_bind_FocusOut"))
self.updateGuiVariableByPresetTabNo(config.SELECTED_TAB_NO)
@@ -523,11 +523,11 @@ class View():
def _foregroundOnForcefully(self, _e):
def foregroundOnIfForegroundEnabled(self):
if config.ENABLE_FOREGROUND:
self.foregroundOn()
def _foregroundOffForcefully(self, _e):
def foregroundOffIfForegroundEnabled(self):
if config.ENABLE_FOREGROUND:
self.foregroundOff()