diff --git a/src/daemon/TreelandConnector.cpp b/src/daemon/TreelandConnector.cpp index 66457f7..ea8e3cb 100644 --- a/src/daemon/TreelandConnector.cpp +++ b/src/daemon/TreelandConnector.cpp @@ -88,6 +88,7 @@ static void renderDisabled([[maybe_unused]] void *data, struct wl_callback *call VirtualTerminal::handleVtSwitches(activeVtFd); close(activeVtFd); + conn->activateSession(); conn->enableRender(); conn->switchToUser(user.isEmpty() ? "dde" : user); } else { diff --git a/src/daemon/VirtualTerminal.cpp b/src/daemon/VirtualTerminal.cpp index b442b43..d605c56 100644 --- a/src/daemon/VirtualTerminal.cpp +++ b/src/daemon/VirtualTerminal.cpp @@ -117,7 +117,8 @@ namespace DDM { daemonApp->signalHandler()->addCustomSignal(RELEASE_DISPLAY_SIGNAL); daemonApp->signalHandler()->addCustomSignal(ACQUIRE_DISPLAY_SIGNAL); - QObject::connect(daemonApp->signalHandler(), &SignalHandler::customSignalReceived, onVtSignal); + QObject::connect(daemonApp->signalHandler(), &SignalHandler::customSignalReceived, + daemonApp->signalHandler(), onVtSignal, Qt::UniqueConnection); return ok; }