2222 import NVDAObjects # noqa: F401, use for typing
2323
2424
25- postSessionLockStateChanged = extensionPoints .Action ()
25+ def __getattr__ (attrName : str ) -> Any :
26+ """Module level `__getattr__` used to preserve backward compatibility.
27+ """
28+ import NVDAState
29+ if not NVDAState ._allowDeprecatedAPI ():
30+ log .debug (f"Deprecated { attrName } imported while _allowDeprecatedAPI is False" )
31+ elif attrName == "isObjectAboveLockScreen" :
32+ log .warning (
33+ "Importing isObjectAboveLockScreen(obj) is deprecated. "
34+ "Instead use obj.isBelowLockScreen. "
35+ )
36+ return _isObjectAboveLockScreen
37+ elif attrName == "postSessionLockStateChanged" :
38+ log .warning ("postSessionLockStateChanged is deprecated, use post_sessionLockStateChanged instead." )
39+ return post_sessionLockStateChanged
40+ raise AttributeError (f"module { repr (__name__ )} has no attribute { repr (attrName )} " )
41+
42+
43+ post_sessionLockStateChanged = extensionPoints .Action ()
2644"""
2745Notifies when a session lock or unlock event occurs.
2846
@@ -34,9 +52,9 @@ def onSessionLockStateChange(isNowLocked: bool):
3452 '''
3553 pass
3654
37- postSessionLockStateChanged .register(onSessionLockStateChange)
38- postSessionLockStateChanged .notify(isNowLocked=False)
39- postSessionLockStateChanged .unregister(onSessionLockStateChange)
55+ post_sessionLockStateChanged .register(onSessionLockStateChange)
56+ post_sessionLockStateChanged .notify(isNowLocked=False)
57+ post_sessionLockStateChanged .unregister(onSessionLockStateChange)
4058```
4159"""
4260
@@ -164,18 +182,6 @@ def objectBelowLockScreenAndWindowsIsLocked(
164182 return False
165183
166184
167- def __getattr__ (attrName : str ) -> Any :
168- import NVDAState
169- """Module level `__getattr__` used to preserve backward compatibility."""
170- if attrName == "isObjectAboveLockScreen" and NVDAState ._allowDeprecatedAPI ():
171- log .warning (
172- "Importing isObjectAboveLockScreen(obj) is deprecated. "
173- "Instead use obj.isBelowLockScreen. "
174- )
175- return _isObjectAboveLockScreen
176- raise AttributeError (f"module { repr (__name__ )} has no attribute { repr (attrName )} " )
177-
178-
179185def _isObjectAboveLockScreen (obj : "NVDAObjects.NVDAObject" ) -> bool :
180186 log .error (
181187 "This function is deprecated. "
0 commit comments