Introduce ScreenLockDetectorBase and move platform logic into
ScreenLockDetectorLinux and ScreenLockDetectorMacOS. Rename mac files to
*_macos, add new base/linux source files, and update CMakeLists to
include them. Convert ScreenLockDetector into a factory/facade that
creates and forwards signals to the platform detector. Add refactoring
docs and a migration guide.
Replace m_loginInterface/m_loginConnected with
m_ukuiInterface/m_ukuiConnected, update connection/teardown logic and
log messages, and query lock state via UKUI's GetLockState method
instead of the previous login manager property call.
Replace QDBusConnection::systemBus() with QDBusConnection::sessionBus()
when creating the org.ukui.ScreenSaver interface and connecting
Lock/Unlock signals so notifications are tied to the user session
Record lock time, duration and count in CustomWidget and show a
lock-info overlay. setPaintingEnabled now logs lock/unlock times and
increments lock count. Emit screenLocked/screenUnlocked signals in
ScreenLockDetector. Minor UI and whitespace cleanup.