@@ -232,11 +232,35 @@ def _recreate_settings_window(self) -> None:
232232
233233 def show_settings_window_about (self ) -> None :
234234 """显示关于窗口"""
235- if self .settings_window is None :
236- self .create_settings_window ()
235+ from app .common .safety .verify_ops import (
236+ should_require_password ,
237+ require_and_run ,
238+ )
237239
238- if self .settings_window is not None :
239- self .settings_window .show_settings_window_about ()
240+ def on_verified () -> None :
241+ """验证通过后,正常打开关于窗口"""
242+ if self .settings_window is None :
243+ self .create_settings_window ()
244+
245+ if self .settings_window is not None :
246+ self .show_settings_window ("aboutInterface" , is_preview = False )
247+
248+ def on_preview () -> None :
249+ """点击预览按钮后,以预览模式打开关于窗口"""
250+ if self .settings_window is None :
251+ self .create_settings_window ()
252+
253+ if self .settings_window is not None :
254+ self .show_settings_window ("aboutInterface" , is_preview = True )
255+
256+ if should_require_password ("open_settings" ):
257+ logger .debug ("打开关于窗口需要验证" )
258+ require_and_run (
259+ "open_settings" , self .main_window , on_verified , on_preview = on_preview
260+ )
261+ else :
262+ logger .debug ("打开关于窗口无需验证" )
263+ on_verified ()
240264
241265 def create_float_window (self ) -> None :
242266 """创建浮窗实例"""
0 commit comments