Merge branch 'copy_and_paste' into develop

# Conflicts:
#	src-python/config.py
#	src-python/model.py
This commit is contained in:
misyaguziya
2026-01-10 02:19:01 +09:00
12 changed files with 374 additions and 6 deletions

View File

@@ -32,6 +32,7 @@ from models.overlay.overlay import Overlay
from models.overlay.overlay_image import OverlayImage
from models.watchdog.watchdog import Watchdog
from models.websocket.websocket_server import WebSocketServer
from models.clipboard.clipboard import Clipboard
from models.telemetry import Telemetry
from utils import errorLogging, setupLogger
@@ -141,8 +142,7 @@ class Model:
# default no-op callbacks for energy check functions
self.check_mic_energy_fnc: Callable[[float], None] = lambda v: None
self.check_speaker_energy_fnc: Callable[[float], None] = lambda v: None
# Telemetry 初期化Model 内でインスタンスを保持)
self.clipboard = Clipboard()
self.telemetry = Telemetry()
self._inited = True
@@ -1296,6 +1296,29 @@ class Model:
errorLogging()
return False
def setCopyToClipboard(self, text:str) -> bool:
self.ensure_initialized()
try:
if isinstance(self.clipboard, Clipboard):
self.clipboard.copy(text)
return True
else:
return False
except Exception:
errorLogging()
return False
def setPasteFromClipboard(self) -> bool:
self.ensure_initialized()
try:
if isinstance(self.clipboard, Clipboard):
return self.clipboard.paste()
else:
return False
except Exception:
errorLogging()
return False
def telemetryInit(self, enabled: bool, app_version: str):
"""Model 内で Telemetry を初期化"""
self.telemetry.init(enabled=enabled, app_version=app_version)