Bug 171287

Summary: Turn kmix into a plasmoid
Product: [Applications] kmix Reporter: Clovis Gladstone <clovisgladstone>
Component: On Hold / External issueAssignee: Christian Esken <esken>
Status: RESOLVED INTENTIONAL    
Severity: wishlist CC: arthur, denis, diego.ml, fest.in, igor.poboiko, jjm, kde_bugzilla_2, meven29, patrick.auernig
Priority: LO    
Version: unspecified   
Target Milestone: ---   
Platform: openSUSE   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:

Description Clovis Gladstone 2008-09-18 18:08:38 UTC
Version:            (using KDE 4.1.1)
OS:                Linux
Installed from:    SuSE RPMs

I think it would make sense to make a plasmoid out of kmix. Not only would scale better with the panel, but it would just be more flexible. And since the plasma team is so active it would get more love than it is getting now (not that you don't have your hands full already).
Comment 1 Christian Esken 2008-10-27 01:27:59 UTC
There are no Sliders in a Plasmoid (at least this was the case when I last looked, which was in KDE4.0.x or KDE4.1.x). So I cannot do that. Also I have neither time nor too much interest to do that.
Comment 2 Dario Andres 2009-02-13 12:06:11 UTC
*** Bug 184197 has been marked as a duplicate of this bug. ***
Comment 3 Stephan Sokolow 2009-03-07 11:53:23 UTC
Judging by how the Mixeroid dev speaks of "the standard Plasma slider", it looks like your first reason no longer applies.

Could you at least leave this as UNCONFIRMED?
Comment 4 David Heidelberg 2009-03-07 13:41:37 UTC
Yeah, please reassign this bug to someone else who does plasmoid.
Comment 5 Diego 2009-07-19 21:54:28 UTC
It's not exactly a replacement to KMix but vaguely does a similar job:
http://www.kde-look.org/content/show.php/Mixeroid?content=99778
Comment 6 Stephan Sokolow 2009-07-19 23:31:52 UTC
Unfortunately, I've already found Mixeroid and decided that having the adjusters directly in the panel rather using an icon and a pop-up was a "deal-breaker". (I just woke up so my vocabulary is a little thin)
Comment 7 Diego 2009-07-27 21:58:25 UTC
It would be nice to have this bug reopened as I think it's a valid "wish".
Looking at what's shown here:
http://www.notmart.org/index.php/Software/A_system_tray_even_more_Plasma
I think this is now feasible.

I think it would be nice to have a similar thing for KMix, with sliders for volumes like the screen brightness one in the screenshot.

Christian: even if you're not willing to implement it, just leave the bug open so that users can vote, and eventually someone can fix it.

Thanks,
Diego
Comment 8 David Heidelberg 2009-07-30 19:06:18 UTC
*** This bug has been confirmed by popular vote. ***
Comment 9 Christian Esken 2009-08-02 11:13:41 UTC
Reopening, due to comment #7.

It's quite likely that I won't do it personally for various reasons (time, interest). But this is Open Source: Everybody out there with some spare time is invited to do this.
Comment 10 Igor Poboiko 2010-08-03 08:41:19 UTC
I tried to implement a plasmoid which works with kmix via dbus and I ran into some problems with kmix dbus interface.
First of all, there is no way to get mixers count or list (dbus method like mixers(), that will return ['Mixer0', 'Mixer1', 'Mixer2', etc] or something like that)
Secondly, there is no way to get master mixer for kmix (dbus method like masterMixer(), that will return 'Mixer0')
Thirdly, there is no way to get devices list for any mixer (dbus method like /Mixer0 devices(), that will return ['alsa_output.pci-0000_00_1b.0.analog-stereo', etc])
Fourthly, there is no way to get readable device or mixer name (dbus methods like '/Mixer0 readableDeviceName(QString &deviceidx)' and '/Mixer0 readableName()')
Comment 11 Christian Esken 2010-08-05 00:36:10 UTC
Thanks for the feedback. I'll check how complicated the 4 missing methods are (or how to do it otherwise).
Comment 12 Christian Esken 2010-08-05 00:36:36 UTC
Raising Priortiy
Comment 13 Christian Esken 2010-08-23 17:51:54 UTC
*** Bug 248422 has been marked as a duplicate of this bug. ***
Comment 14 Christian Esken 2010-08-23 17:53:59 UTC
I will come back to this after merging branch to trunk (the latter should happen until end of August 2010).
Comment 15 Igor Poboiko 2010-09-17 16:38:11 UTC
What is happening with this bug now?
Comment 17 Igor Poboiko 2011-04-08 14:52:21 UTC
SVN commit 1227396 by poboiko:

Rework KMix DBus API and add mixer plasma dataengine
CCBUG: 171287


 M  +17 -5     CMakeLists.txt  
 M  +16 -3     apps/kmix.cpp  
 M  +11 -0     core/mixdevice.cpp  
 M  +7 -0      core/mixdevice.h  
 M  +11 -188   core/mixer.cpp  
 M  +9 -26     core/mixer.h  
 A             dbus (directory)  
 A             dbus/dbuscontrolwrapper.cpp   [License: LGPL (v2+)]
 A             dbus/dbuscontrolwrapper.h   [License: LGPL (v2+)]
 A             dbus/dbusmixerwrapper.cpp   [License: LGPL (v2+)]
 A             dbus/dbusmixerwrapper.h   [License: LGPL (v2+)]
 A             dbus/dbusmixsetwrapper.cpp   [License: LGPL (v2+)]
 A             dbus/dbusmixsetwrapper.h   [License: LGPL (v2+)]
 A             dbus/org.kde.kmix.control.xml  
 A             dbus/org.kde.kmix.mixer.xml  
 A             dbus/org.kde.kmix.mixset.xml  
 M  +2 -2      gui/kmixdockwidget.cpp  
 D             org.kde.KMix.xml  
 A             plasma (directory)  
 A             plasma/CMakeLists.txt  
 A             plasma/engine (directory)  
 A             plasma/engine/CMakeLists.txt  
 A             plasma/engine/mixer.operations  
 A             plasma/engine/mixerengine.cpp   [License: LGPL (v2+)]
 A             plasma/engine/mixerengine.h   [License: LGPL (v2+)]
 A             plasma/engine/mixerservice.cpp   [License: LGPL (v2+)]
 A             plasma/engine/mixerservice.h   [License: LGPL (v2+)]
 A             plasma/engine/plasma-engine-mixer.desktop  
 M  +3 -1      tests/CMakeLists.txt  


WebSVN link: http://websvn.kde.org/?view=rev&revision=1227396
Comment 18 Christian Esken 2012-03-27 21:38:19 UTC
Moving back to wishlist
Comment 19 Christian Esken 2013-08-15 00:13:52 UTC
Just wondering what is happening with this ticket? DBUS API is there, so there should be no blocker, right? Igor, care to comment?
Comment 20 Igor Poboiko 2013-08-16 20:47:55 UTC
My implementation of plasmoid lies in my scratch repo - http://quickgit.kde.org/?p=scratch%2Fpoboiko%2Fkmix-plasmoid.git
It works, but there were several issues:
1) It's not QML. Plasma guys are rewriting applets on QML now, so I guess it should be rewritten too (and unfortunately I don't know QML)
2) It had weird bug when the applet didn't receive data update from engine (because of it applet thought kmix wasn't running on startup - sometimes). This problem was badly reproducable, and it looked like it was plasma bug (I wrote a mail to plasma-devel, but they didn't answer :( ), so I didn't manage to fix it.
3) It doesn't have MPRIS2 controls.
Comment 21 Méven Car 2013-10-31 22:22:28 UTC
I really wish this will be fixed with the plasma/QT5/QML rewrite.
Volume management is just a common feature in desktop shells, the fact that plasma's is not consistent with the rest of the shell make plasma look bad in comparison with competition.
Comment 22 Christian Esken 2014-01-05 19:59:48 UTC
Moving ticket on hold, as possible work is on Reviewboard. https://git.reviewboard.kde.org/r/112208/
Comment 23 Jonathan Marten 2021-02-06 17:19:37 UTC
There is now a Plasma volume control applet (https://invent.kde.org/plasma/plasma-pa) and also a media controller applet.  Closing for KMix.