| Summary: | on reboot kate opens a lot of empty instances of itself | ||
|---|---|---|---|
| Product: | [Applications] kate | Reporter: | CapsAdmin <eliashogstvedt> |
| Component: | general | Assignee: | KWrite Developers <kwrite-bugs-null> |
| Status: | RESOLVED FIXED | ||
| Severity: | normal | CC: | bugs.kde.org, nate, polarathene-signup, v.vogelhuber |
| Priority: | NOR | ||
| Version First Reported In: | 17.08.2 | ||
| Target Milestone: | --- | ||
| Platform: | Kubuntu | ||
| OS: | Linux | ||
| URL: | https://phabricator.kde.org/D11818 | ||
| Latest Commit: | https://commits.kde.org/kate/0a73e00e6dd78e0ad00c79e7e0a3caf71bf4f549 | Version Fixed/Implemented In: | 18.04 |
| Sentry Crash Report: | |||
|
Description
CapsAdmin
2016-03-04 12:16:33 UTC
Can confirm in the latest Kate in 17.08.x; I've seen this too. Haven't been able to come up with a reproducible test case, though. I can also confirm that with Kubuntu 17.04 (KDE Plasma 5.9.5 KDE Frameworks 5.31.0). Reproducibility is always. Just open some files in Kate (in one instance, multiple tabs), shutdown the computer, restart it and Kate will reopen a lot of empty sessions (Interestingly with a lot of new empty instances instead of one instance with a lot of empty tabs). Confirmed also with 17.08.3 on Gentoo. *** Bug 372979 has been marked as a duplicate of this bug. *** Proposed fix: https://phabricator.kde.org/D11818 Git commit 0a73e00e6dd78e0ad00c79e7e0a3caf71bf4f549 by Алексей Шилин.
Committed on 02/04/2018 at 16:10.
Pushed by aleksejshilin into branch 'Applications/18.04'.
Don't restart the blocking process on session restore
Summary:
All blocking Kate processes were restarted on session restore which
led to launching (possibly) multiple redundant instances.
This change asks the session manager to not restart such processes.
Note: QObject::connect() is used here because the session manager
can't be accessed directly according to the documentation [1]:
In Qt, session management requests for action are handled by
the two signals QGuiApplication::commitDataRequest() and
QGuiApplication::saveStateRequest(). Both provide a reference
to a QSessionManager object as argument. The session manager
can only be accessed in slots invoked by these signals.
[1] http://doc.qt.io/qt-5/qsessionmanager.html#details
FIXED-IN: 18.04
Test Plan:
0. Make sure that Plasma is configured to restore previous session
on startup.
1. Open Dolphin and create 'test1' and 'test2' text files.
2. Open 'test1' in Kate from Dolphin.
3. Open 'test2' in the already running Kate instance from Dolphin.
4. Log out and back in. Check that there are no redundant Kate
instances running.
Reviewers: #kate, dhaumann
Reviewed By: #kate, dhaumann
Subscribers: ngraham, dhaumann
Tags: #kate
Differential Revision: https://phabricator.kde.org/D11818
M +12 -0 kate/main.cpp
https://commits.kde.org/kate/0a73e00e6dd78e0ad00c79e7e0a3caf71bf4f549
|