<html>
<body>
<div style="font-family: Verdana, Arial, Helvetica, Sans-Serif;">
<table bgcolor="#f9f3c9" width="100%" cellpadding="8" style="border: 1px #c9c399 solid;">
<tr>
<td>
This is an automatically generated e-mail. To reply, visit:
<a href="http://svn.reviewboard.kde.org/r/6928/">http://svn.reviewboard.kde.org/r/6928/</a>
</td>
</tr>
</table>
<br />
<blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
<p style="margin-top: 0;">On March 28th, 2012, 6:06 p.m., <b>Marco Martin</b> wrote:</p>
<blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
<pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">to me the blocker is mostly having to have kmix running...
since actual kmix would be (sill ;) needed for the actual complete ui... what about this?
a modification in the systray applet, that queries sycoca for offers of plasmoids that can manage a determined statusnotifier item, so it would ask for something providing KMix (better if the ksni id is renamed in org.kde.kmix) then will be the systray itself that either instantiates the kmix applet, or just doesn't show the kmix icon if the applet was explicitly created by the user.
idea is still a bit nebulous, did i explain myself enough? ;)</pre>
</blockquote>
<p>On March 28th, 2012, 7:42 p.m., <b>Diego Casella</b> wrote:</p>
<blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
<pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">From a quick look of the code, there's the chance to build the daemon too.. If so, there's no need to do all that work :)
About the need of the complete UI, we need it only for one purpose: select which channel will be the Master channel. I can't list all the available channels inside the standard config page (the one which appears when you click on the wrench icon in the applet handle), because of scripted plasmoid limitiations. But, thanks to the awesome progress made with plasmacomponents, I could use your fancy Dialog item to show all the channels available, and allow the user to choose which one will be the Master channel :)
In this way, we could drop the KMix windowed app, keep only the daemon, and talk to it with one (or more) kmix applet. What do you think? </pre>
</blockquote>
</blockquote>
<pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">I think the windowed app will still be needed, since we ain't going to show all the sliders in the applet (it will be a complete mess). There may be few sliders users don't want to see in applet but still want to control sometimes (as for me, for example, capture sliders). Daemonizing is a good idea, but we should think how windowed app should work with it.
Also, have you seen my implementation of applet ( http://quickgit.kde.org/index.php?p=scratch%2Fpoboiko%2Fkmix-plasmoid.git&a=tree )? It isn't declarative, but it has more features (since it hasn't limitations scripted plasmoids have).</pre>
<br />
<p>- Igor</p>
<br />
<p>On March 28th, 2012, 6:49 p.m., Diego Casella wrote:</p>
<table bgcolor="#fefadf" width="100%" cellspacing="0" cellpadding="8" style="background-image: url('http://svn.reviewboard.kde.org/media/rb/images/review_request_box_top_bg.png'); background-position: left top; background-repeat: repeat-x; border: 1px black solid;">
<tr>
<td>
<div>Review request for Plasma, Aaron Seigo, Marco Martin, and Christian Esken.</div>
<div>By Diego Casella.</div>
<p style="color: grey;"><i>Updated March 28, 2012, 6:49 p.m.</i></p>
<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Description </h1>
<table width="100%" bgcolor="#ffffff" cellspacing="0" cellpadding="10" style="border: 1px solid #b8b5a0">
<tr>
<td>
<pre style="margin: 0; padding: 0; white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">First attempt of making a declarative kmix applet for plasma.
What the apple does right now:
* modifies the volume level and the mute/unmute status of the master channel;
* reacts to changes of the volume level/status (i.e. made with multimedia keys);
* disables the slider if the channel gets muted, and enables it back as soon as the channel gets unmuted;
* collapses gracefully in a popup icon when placed inside the panel.</pre>
</td>
</tr>
</table>
<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Testing </h1>
<table width="100%" bgcolor="#ffffff" cellspacing="0" cellpadding="10" style="border: 1px solid #b8b5a0">
<tr>
<td>
<pre style="margin: 0; padding: 0; white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">Tested against r1287510. For basic audio management it works great imho.
However, there is a lot of room for improvements, but this is gonna need some extra work outside the kmix applet scope:
* first of all, the applet need kmix executable to run in order to perform the dbus calls. You can of course disable KMix tray icon feature but, at every login, KMix mainwindow will be shown and the user must closeby hand. This is a kind of ugly behavior that should be avoided;
* it will be great to great to add an action to allow the user to select the master channel (by reusing KMix "Select Master Channel" widget), but this will require tweaking KMix dbus interface;
* as you noticed in the screenshots, the applet in the panel and in the desktop have different size even if it __is__ actually the same: something is going wrong when plasma shows the PopupApplet. This behavior was even worse when I started implementing a "flip" action to change the layout from horizontal to vertical and vice-versa, and for this reason I gave up and simply stick with the vertical layout.
Could this applet be shipped in the current status, or should we wait for all the aforementioned improvements?
Comments/ideas/suggestions?
Cheers :)</pre>
</td>
</tr>
</table>
<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Diffs</b> </h1>
<ul style="margin-left: 3em; padding-left: 0;">
<li>trunk/KDE/kdemultimedia/kmix/plasma/CMakeLists.txt <span style="color: grey">(1287513)</span></li>
<li>trunk/KDE/kdemultimedia/kmix/plasma/kmix-applet/contents/code/VerticalControl.qml <span style="color: grey">(PRE-CREATION)</span></li>
<li>trunk/KDE/kdemultimedia/kmix/plasma/kmix-applet/contents/code/kmixapplet.qml <span style="color: grey">(PRE-CREATION)</span></li>
<li>trunk/KDE/kdemultimedia/kmix/plasma/kmix-applet/metadata.desktop <span style="color: grey">(PRE-CREATION)</span></li>
</ul>
<p><a href="http://svn.reviewboard.kde.org/r/6928/diff/" style="margin-left: 3em;">View Diff</a></p>
<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Screenshots </h1>
<div>
<a href="http://svn.reviewboard.kde.org/r/6928/s/627/"><img src="http://svn.reviewboard.kde.org/media/uploaded/images/2012/03/28/kmixapplet_400x100.png" style="border: 1px black solid;" alt="Applet look in panel and desktop" /></a>
<a href="http://svn.reviewboard.kde.org/r/6928/s/628/"><img src="http://svn.reviewboard.kde.org/media/uploaded/images/2012/03/28/kmixapplet_muted_400x100.png" style="border: 1px black solid;" alt="Applet look in panel and desktop - audio muted" /></a>
</div>
</td>
</tr>
</table>
</div>
</body>
</html>