Commit graph

46 commits

Author SHA1 Message Date
Ivailo Monev
384e594cd5 plasma: ensure spacers are not painted
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-17 21:41:42 +03:00
Ivailo Monev
ef3b17cf74 plasma: disable some debug messages for performance reasons
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-09 07:59:31 +03:00
Ivailo Monev
f892ae91d1 plasma: disable and enable mixer applet configuration widgets based on visualizer option
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-05 20:56:41 +03:00
Ivailo Monev
97c2f9d282 plasma: adjust to Plasma::SignalPlotter changes
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-05 10:58:09 +03:00
Ivailo Monev
d13f1ac781 plasma: handle theme change in system-monitor and mixer applets
also not saving the colors to the config when the colors are the default
colors

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-02 14:01:17 +03:00
Ivailo Monev
8cb2c3f556 plasma: enable configuration interface icon for mixer and weather applets in their handle
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-03-14 06:05:15 +02:00
Ivailo Monev
b020c49657 plasma: do not set tooltip for the mixer applet icons
the element name is shown as frame text

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-10-23 14:09:32 +03:00
Ivailo Monev
d917321a5d generic: use zero as minimum space for spacers
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-29 16:10:41 +03:00
Ivailo Monev
9f99de198e plasma: default to 2 for the mixer applet visualizer horizontal scale
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-27 20:20:46 +03:00
Ivailo Monev
2f9c3988db plasma: tweak the mixer applet icon
less static, looks more lively (deffinetly more lively than the old mixer
applet)

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-27 01:58:13 +03:00
Ivailo Monev
f3028cea20 plasma: remove unused applet keys
along with everything related to them

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-24 22:39:41 +03:00
Ivailo Monev
d067677097 plasma: rename constant in MixerPlotter::paint() to match its meaning
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-24 16:55:04 +03:00
Ivailo Monev
30104134f2 plasma: implement feature to paint icon from the visualizer
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-24 16:12:31 +03:00
Ivailo Monev
a9bbf25dc9 plasma: mixer applet optimization
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-24 15:22:07 +03:00
Ivailo Monev
bc6a4621e9 plasma: remove TODO related to mixer applet
see the following commit in kdelibs repo:
4f56e99b9a0c33153f4a3de49d50236ba80500ee

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-24 12:20:34 +03:00
Ivailo Monev
d832fc81bd plasma: set the minimum size and size policy of the mixer applet information label
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-23 23:34:52 +03:00
Ivailo Monev
ce7856ec1f plasma: set the mixer applet tab widgets contents margins to zero
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-23 21:55:13 +03:00
Ivailo Monev
f9fec5f9a5 plasma: add spacer to the mixer applet when visualizer is disabled
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-22 23:39:07 +03:00
Ivailo Monev
ddcecb8778 plasma: update mixer applet sliders only on value change event
again - the callback is only for external events so performance of the code
in it is not high priority!

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-22 21:30:51 +03:00
Ivailo Monev
6fa28ca68a plasma: optimize mixer applet visualizer by allocating the buffer once, as a member
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-22 21:18:48 +03:00
Ivailo Monev
4474f71085 plasma: stretch the visualizer to the available space of the mixer applet
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-22 21:06:41 +03:00
Ivailo Monev
5cf83358f2 plasma: don't overuse "visualizer" in the mixer applet configuration
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-22 20:27:38 +03:00
Ivailo Monev
7a8c729aea plasma: add note about the mixer applet callback
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-22 20:05:24 +03:00
Ivailo Monev
33d92a748f plasma: implement scale-factor option for the mixer applet visualizer
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-22 20:03:16 +03:00
Ivailo Monev
28fcfa37cb plasma: the mixer visualizer is no longer experimental
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-22 16:06:38 +03:00
Ivailo Monev
0035a4a0c3 plasma: expand applet widgets from the minimum
that does it

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-22 15:51:10 +03:00
Ivailo Monev
bf78db444a plasma: pass the samples to the plotter in chunks in mixer applet
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-22 15:06:04 +03:00
Ivailo Monev
c852abbcaa plasma: frame the mixer applet visualizer
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-22 14:51:59 +03:00
Ivailo Monev
a69da0b9d8 plasma: use theme-agnostic color for the mixer applet visualization by default
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-22 14:26:59 +03:00
Ivailo Monev
13ab85cf70 plasma: tweak the mixer applet poll interval for visualization
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-22 14:20:11 +03:00
Ivailo Monev
006654ddcb plasma: implement options for the mixer applet visualizer
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-22 14:05:56 +03:00
Ivailo Monev
562eb8e793 plasma: tweak mixer applet visualization
to show realtime data all the data from the PCM has to be drained (read
until there is no more), there is also the no real data quirck - when no
sound goes trough the PCM the samples are all 0.0 but sometimes when there
is data the samples are negative so as a special case a second list is
used to handle that

the nearly complete mixer applet now looks like this:
https://ibb.co/RyTbnzH

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-22 04:42:40 +03:00
Ivailo Monev
05362ba3dc plasma: experimental PCM visualization for mixer applet
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-22 03:45:03 +03:00
Ivailo Monev
29b8b04286 plasma: add dummy tab in mixer applet when there are no sound cards
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-21 23:09:23 +03:00
Ivailo Monev
0c886e9309 plasma: do not set mixer applet as "failed to launch" when there are no sound cards
setting it as "failed to launch" deletes child items and bad stuff happens

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-21 22:30:56 +03:00
Ivailo Monev
318d5c8d36 plasma: setup tooltip for the mixer applet
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-21 21:21:40 +03:00
Ivailo Monev
9a6a749412 plasma: better Plasma::TabBar hack for mixer applet
one that does not break applet size restoration

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-21 20:37:53 +03:00
Ivailo Monev
7e5c75a51c plasma: compare the element name too when changing volume in mixer applet
just in case, sliders carry channel info anyway

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-21 19:28:31 +03:00
Ivailo Monev
0d7aaf491f plasma: k_alsa_element_callback() function optimization
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-21 17:21:19 +03:00
Ivailo Monev
a7474986b2 plasma: setup events callback for mixer applet
to update sliders when the volume is changed by means other than changing
the slider values (e.g. via `alsamixer`)

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-21 17:11:16 +03:00
Ivailo Monev
f259e5654a plasma: set icons for the mixer applet tabs
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-21 15:50:40 +03:00
Ivailo Monev
d655235b86 plasma: set mixer applet popup icon before creating its widget
because MixerWidget may override the popup icon

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-21 15:43:30 +03:00
Ivailo Monev
e2a5d815a2 plasma: minor mixer applet optimization
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-21 15:28:53 +03:00
Ivailo Monev
4ca4e20ab3 plasma: filter duplicate mixers in mixer applet
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-21 15:25:36 +03:00
Ivailo Monev
e545ff8662 plasma: map more element names to icons in mixer applet
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-21 14:56:46 +03:00
Ivailo Monev
6743086952 plasma: new mixer applet
kmix replacement, most importantly - multi-channel!

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-21 04:03:29 +03:00