Summary: | KDED Module needs to work on a per-account presence basis, not global presence | ||
---|---|---|---|
Product: | [Unmaintained] telepathy | Reporter: | David Edmundson <kde> |
Component: | kded-module | Assignee: | Telepathy Bugs <kde-telepathy-bugs> |
Status: | RESOLVED FIXED | ||
Severity: | wishlist | CC: | ddomenichelli, mklapetek, simonandric5, smithjd15 |
Priority: | NOR | ||
Version: | unspecified | ||
Target Milestone: | Future | ||
Platform: | Unlisted Binaries | ||
OS: | Linux | ||
Latest Commit: | https://commits.kde.org/ktp-kded-module/20f845ce0c2e828700a79efd455f9700deafb1d7 | Version Fixed In: | 18.04 |
Sentry Crash Report: |
Description
David Edmundson
2012-02-06 13:40:52 UTC
Isn't the recent patch of yours to the global presence supposed to solve/help with this? The thing with one busy and one online is wrong assumption to start with; we currently do not support that at all (as in you can't set it from our components unless you manually do so). If we're to refactor kded, we should turn it into a bigger scope refactor/discussion, because either all components have to operate on global presence or all have to work with per-account presences, otherwise everything breaks and explodes and shoots you in the foot. Ok ok it just breaks. We could probably introduce "activity account sets" and then operate on per-activity basis, ie. if you change presence from presence plasmoid or contact list, it modifies only the presence of those accounts that are in the current activity set and leaves the rest untouched. If you do not use activity you'd control all accounts as the set wouldn't be divided in the first place. This behavior is however imho a bit confusing and misleading (all presence controls says "Online" while three of your accounts in other activity are "Away"). "The thing with one busy and one online is wrong assumption to start with; we currently do not support that at all " I know, but at some point in the future we will need to do so. There are 3 things stopping us, the kded (this bug), the global presence bar, and the presence plasmoid. This one is the one we can solve with code so we can do it now, the rest need solving with design. It's not really a bug right now, just trying to plan for future. I'll mark as wishlist to show this. My patch will help fix this notion of accounts not connecting, and them reconnecting, but that doesn't solve this issue of varying presence. (In reply to comment #1) > The thing with one busy and one online is wrong assumption to start with; we > currently do not support that at all (as in you can't set it from our > components unless you manually do so). I just made a simply test, and it is actually possible to have a set of account with one state and a set of accounts "available", even I don't think that any user will ever use it, and probably this behavior is a bug... The trick is just to disable some accounts from kcm, choose from the presence plasmoid the status, and then enable the disabled accounts from kcm. Git commit 20f845ce0c2e828700a79efd455f9700deafb1d7 by James D. Smith. Committed on 22/11/2017 at 01:03. Pushed by smithjd into branch 'master'. Independent account presences. Activities support. Make unit testing compile. Implement status message parser with Now Playing. Status message parser unit testing. REVIEW: 130192 Related: bug 284517, bug 294940, bug 297924, bug 334542 M +5 -3 CMakeLists.txt A +208 -0 account-status-helper.cpp [License: LGPL (v2.1+)] A +115 -0 account-status-helper.h [License: LGPL (v2.1+)] M +31 -41 autoaway.cpp M +4 -8 autoaway.h D +0 -62 autoconnect.cpp D +0 -99 autoconnect.h M +0 -2 config/CMakeLists.txt D +0 -80 config/nowplaying-lineedit.cpp D +0 -43 config/nowplaying-lineedit.h D +0 -107 config/nowplaying-listwidget.cpp D +0 -50 config/nowplaying-listwidget.h M +34 -122 config/telepathy-kded-config.cpp M +0 -4 config/telepathy-kded-config.h M +10 -73 config/telepathy-kded-config.ui M +18 -27 screensaveraway.cpp M +2 -5 screensaveraway.h M +182 -149 status-handler.cpp M +24 -32 status-handler.h A +303 -0 status-message-parser.cpp [License: LGPL (v2.1+)] A +97 -0 status-message-parser.h [License: LGPL (v2.1+)] M +17 -13 telepathy-kded-module-plugin.cpp M +34 -22 telepathy-kded-module-plugin.h M +4 -1 telepathy-module.cpp M +0 -1 telepathy-module.h M +192 -236 telepathy-mpris.cpp M +33 -28 telepathy-mpris.h M +33 -11 tests/CMakeLists.txt M +3 -3 tests/status-handling-main.cpp A +132 -0 tests/status-message-parser.cpp [License: LGPL (v2.1+)] https://commits.kde.org/ktp-kded-module/20f845ce0c2e828700a79efd455f9700deafb1d7 |