1. 05 Mar, 2021 1 commit
  2. 01 Mar, 2021 1 commit
  3. 25 Feb, 2021 1 commit
    • Nate Graham's avatar
      [applet] When only showing friendly name, add full name on hover · 9b8a0218
      Nate Graham authored
      The applet has a special mode where it only shows a user-friendly name
      (e.g. "Speakers" and "Microphone") when there is only one device, on the
      logic that the full name is not needed when there is only one device
      because the user knows what it is, and also depending on the audio
      drivers in use, it can be a rather unsightly text string.
      
      However there may be times when the user actually wants to know the full
      name; perhaps they have forgotten which device of many they regularly
      use is currently connected, for example. For this case, we now display
      the full name on hover, so it's not getting in the way and possibly
      looking ugly until it's actually needed.
      
      BUG: 433476
      FIXED-IN: 5.22
      9b8a0218
  4. 08 Feb, 2021 1 commit
    • Kai Uwe Broulik's avatar
      Rewrite ListItem context menu and add card profile selection · 48037d71
      Kai Uwe Broulik authored
      This moves the menu logic into C++ to make `ListItemBase` less messy.
      More importantly, it adds card profile selection so that you can, for instance,
      quickly switch Bluetooth devices between A2DP and HFP profiles.
      It also now uses radio buttons to denote mutually excusive options.
      
      BUG: 372562
      FIXED-IN: 5.22.0
      48037d71
  5. 05 Jan, 2021 1 commit
    • David Redondo's avatar
      Show current Volume in Plasmoid sliders · 3e80ee13
      David Redondo authored
      We draw the background of slider now manually. The length of the highlight
      shows the current volume. Minimum is the minimal width of the element,
      maximum is highlight up to the handle position and when nothing is playing
      no highlight is shown. An animation makes the transitions a bit smoother.
      BUG:411563
      BUG:428968
      3e80ee13
  6. 27 Oct, 2020 1 commit
  7. 26 Oct, 2020 1 commit
  8. 16 Oct, 2020 1 commit
    • David Redondo's avatar
      Correctly look up data in the model · 9e002e01
      David Redondo authored
      Commit fbd66cdc exposed this preexisting bug.
      Before sModel was always a PlasmaCore.SortFilterModel but now that we can hit the
      !showHiddenDevices.visible condition in main.qml:546/573 it can also just be
      a normal SourceModel or SinkModel that do not have a get() method like the
      SortFilterModel. So we have to access the data properly.
      BUG:427687
      FIXED-IN:5.20.1
      9e002e01
  9. 19 Jul, 2020 1 commit
    • Nate Graham's avatar
      [applet] Port towards PlasmaComponents3 · 081b11b7
      Nate Graham authored
      Most things can be ported, but tab bar and context menu need to stay
      using PC2 for now because:
      - PC3 TabBar/TabButton needs a bit of work first
      - There's no native PC3 context menu functionality
      081b11b7
  10. 04 Jul, 2020 1 commit
    • Nate Graham's avatar
      Colorize volume percentage text when over 100% · 0cb8d246
      Nate Graham authored
      We've now made it easier to increase the maximum volume to 150% for
      those who need it due to quiet speakers. However since this could
      potentially lead to excessive volume or damage to loud speakers with
      long-term use, let's colorize the text to subtly indicate that this is
      not a normal state.
      0cb8d246
  11. 20 May, 2020 1 commit
  12. 26 Feb, 2020 1 commit
    • George Vogiatzis's avatar
      [Applet]Improvements for unavailable port. · ada3385d
      George Vogiatzis authored
      Summary:
      Restore capability of unavailable ports to be active, which was prevented
      with 10ab204a.
      Enable port selection in case an unavailable port is active.
      
      Test Plan:
      Before: Choosing an unavailable port from pavucontrol was impossible.
      After: Activating an unavailable port is possible. Can test with D27422.
      
      Reviewers: #plasma, drosca, ngraham
      
      Reviewed By: ngraham
      
      Subscribers: pino, plasma-devel
      
      Tags: #plasma
      
      Differential Revision: https://phabricator.kde.org/D27420
      ada3385d
  13. 18 Feb, 2020 1 commit
  14. 04 Feb, 2020 1 commit
    • George Vogiatzis's avatar
      [Applet]Fix device label problems · bd7c146a
      George Vogiatzis authored and Nate Graham's avatar Nate Graham committed
      Summary:
      Limit label maximum width, to avoid breaking UI.
      Change label to use plasma components 3, for theme color compatibility.
      Use of implicit sizes, to avoid binding loops.
      
      BUG: 417074
      BUG: 417106
      
      Test Plan:
      Use applet outside of systemtray and limit it's width.
      If device description is not long enough, enable in the configuration
      "Add virtual output device for simultaneous output on all local sound cars".
      Before: Hamburger menu moves to the right, and there is no eliding.
      After: Proper display.
      {F8080583}
      
      Reviewers: #plasma, #vdg, drosca, ngraham, davidedmundson
      
      Reviewed By: #vdg, ngraham
      
      Subscribers: cfeck, plasma-devel
      
      Tags: #plasma
      
      Differential Revision: https://phabricator.kde.org/D27117
      bd7c146a
  15. 31 Jan, 2020 3 commits
    • George Vogiatzis's avatar
      [Applet]Hide hamburger menu when empty · 10ab204a
      George Vogiatzis authored and Nate Graham's avatar Nate Graham committed
      Summary:
      Don't show devices/applications hamburger menu when there are no options.
      Hide "Record/Play all audio via this device" if there is only 1 device.
      Prevent unavailable ports be active.
      
      Last is a workaround to prevent locking a device to an unavailable port.
      This can happen cause of the lack of a call from pulseaudio for a port
      availability change.
      
      Depends on D26418
      
      Test Plan:
      Lock can happen when an unused and available port becomes unavailable.
      Until data refresh, a user can select the unavailable port. After the
      switch if there is only 1 available port, UI will hide port selection,
      locking user to an unavailable port.
      
      2 vs 1 output devices
      {F7876434}
      
      {F7876435}
      
      Reviewers: #vdg, #plasma, drosca, ngraham
      
      Reviewed By: #vdg, ngraham
      
      Subscribers: ngraham, plasma-devel
      
      Tags: #plasma
      
      Differential Revision: https://phabricator.kde.org/D26574
      10ab204a
    • George Vogiatzis's avatar
      [Applet] Make 'raise maximum volume' global · d0c753c1
      George Vogiatzis authored and Nate Graham's avatar Nate Graham committed
      Summary:
      Remove maximum volume control from configuration.
      Remove individual maximum volume.
      Add a checkbox in applet to enable raise maximum volume for all devices. (not applications)
      
      Depends on D26271
      
      Test Plan:
      Before:
      2 options exist to raise maximum volume.
      One options controls the default output device(by setting the limit).
      And a second one controls individual devices/applications.
      After:
      A checkbox in the applet will raise the max volume for all devices to 150%.
      
      Reviewers: ngraham, #vdg, #plasma, drosca
      
      Reviewed By: ngraham, #vdg
      
      Subscribers: drosca, plasma-devel
      
      Tags: #plasma
      
      Differential Revision: https://phabricator.kde.org/D26256
      d0c753c1
    • George Vogiatzis's avatar
      [Applet]Update layout based on T10470 · 8ada15ad
      George Vogiatzis authored and Nate Graham's avatar Nate Graham committed
      Summary:
      Change layout according to T10470 mockups.
      Remove port combobox and put port selection back the hamburger menu.
      Compact representation tooltip shows only port description, if available.
      Display only port description, if there is no other device with same
      description sub-string.
      
      Visual Issues:
      Unable to extent the bottom line to touch the edges of the window,
      that are part of the system tray.
      Line svg has spacing on the sides.
      
      1st part of patches D26271, D26256, D26418, D26574.
      Not included in these patches: 100% volume mark, Color style.
      
      Reviewers: #vdg, #plasma, manueljlin, drosca, ngraham
      
      Reviewed By: #vdg, manueljlin, ngraham
      
      Subscribers: cfeck, ndavis, filipf, ngraham, plasma-devel
      
      Tags: #plasma
      
      Maniphest Tasks: T10470
      
      Differential Revision: https://phabricator.kde.org/D26271
      8ada15ad
  16. 14 Oct, 2019 1 commit
    • Nate Graham's avatar
      Use a lighter star color for non-default devices · e2965af7
      Nate Graham authored
      Summary:
      Since announcing the relevant feature, user feedback has indicated that people prefer
      for the star icon of the non-default device to be lighter so that it doesn't command
      as much visual attention. To do this, we need to use a different set of icons that are
      designed to be be used together in this way.
      
      Master only since it requires icon changes (see below) that we can't guarantee people
      using Plasma 5.17 will have.
      
      Depends on D24612
      
      Test Plan: {F7587422}
      
      Reviewers: #vdg, ndavis
      
      Reviewed By: #vdg, ndavis
      
      Subscribers: plasma-devel
      
      Tags: #plasma
      
      Differential Revision: https://phabricator.kde.org/D24613
      e2965af7
  17. 10 Oct, 2019 1 commit
    • Nate Graham's avatar
      Increase UI commonality between KCM and applet · fb563192
      Nate Graham authored
      Summary:
      This patch beings the user interface of the applet and the KCM closer together. To
      accomplish this, the following changes are made:
      - Move the "Default Device" button onto the first row in the applet and make it a ToolButton to reduce its visual weight
      - In both the applet and the KCM, show the port chooser UI in combobox form only when multiple ports are available; otherwise show only a text label. This is allowed by the HIG because it is a case of hardware availability (https://hig.kde.org/plattform/settings.html?highlight=inapplicable#behavior)
      - Remove the port choosing functionality from the applet's hamburger menu since it's now available in the main UI when applicable
      
      Depends on D24402
      
      Test Plan:
      Simple case: {F7509998}
      More complex case: {F7509997}
      
      Reviewers: #vdg, #plasma, drosca, broulik, sitter, sefaeyeoglu
      
      Reviewed By: sefaeyeoglu
      
      Subscribers: nicolasfella, ndavis, GB_2, mmustac, plasma-devel
      
      Tags: #plasma
      
      Differential Revision: https://phabricator.kde.org/D24407
      fb563192
  18. 27 Sep, 2019 1 commit
    • Sefa Eyeoglu's avatar
      Make KCM look more like applet · 608e9e6f
      Sefa Eyeoglu authored and Nate Graham's avatar Nate Graham committed
      Summary: I was looking through changes in plasma-pa and noticed, that the KCM looks very different in contrast to the applet.
      
      Test Plan:
      Checked for mute button function on all occasions (sinks, sources, applications playing, applications recording). Checked if volume slider works as expected.
      
      {F7446909}
      
      Reviewers: #plasma, #vdg, ngraham, GB_2
      
      Reviewed By: #vdg, ngraham, GB_2
      
      Subscribers: drosca, ngraham, davidedmundson, GB_2, #plasma, plasma-devel, #vdg
      
      Tags: #plasma, #vdg
      
      Differential Revision: https://phabricator.kde.org/D24161
      608e9e6f
  19. 16 Sep, 2019 1 commit
    • Nate Graham's avatar
      Use visible buttons to switch the default device · 4a13cbf3
      Nate Graham authored
      Summary:
      We get numerous complaints that it's hard to figure out how to make an audio device the
      default for playback or output. Despite the multiple methods (drag-and-drop, hamburger
      menu item, radio button in the KCM), it still seems un-discoverable for many users.
      
      This patch attempts to address the issue by standardizing on a single consistent method:
      {nav Make default} buttons right there on the list items for the devices, for both the applet
      and the KCM.The buttons are only shown when there is more than one device that could
      be the default.
      
      Various other elements of the UI are slightly adjusted or adapted to accommodate this change.
      
      FEATURE: 411065
      BUG: 408490
      FIXED-IN: 5.17.0
      
      Test Plan:
      Connected my Bluetooth speaker and toggled between it and the internal speakers using
      the new button.
      
      Applet: {F7341848}
      KCM: {F7341852}
      
      My wife was impressed by how easy it was and how the audio instantly switched.
      
      Reviewers: drosca, #plasma, #vdg, ndavis
      
      Reviewed By: #vdg, ndavis
      
      Subscribers: broulik, GB_2, alexde, ndavis, anthonyfieroni, plasma-devel
      
      Tags: #plasma
      
      Differential Revision: https://phabricator.kde.org/D23389
      4a13cbf3
  20. 11 Sep, 2019 1 commit
    • Kishore Gopalakrishnan's avatar
      Set maximum volume of streams properly even if the user has configured a... · f20b6b15
      Kishore Gopalakrishnan authored and Nate Graham's avatar Nate Graham committed
      Set maximum volume of streams properly even if the user has configured a maximum volume <100% in the applet.
      
      Summary:
      Recently, I submitted this patch (https://phabricator.kde.org/D23082) which had a side-effect which I hadn't noticed at the time: If the user-configured maximum volume for the applet was less than 100%, it would also use this as the maximum value on the sliders for all streams.
      
      **Before this patch:**
      Devices tab: {F7326896}
      Applications tab: {F7326898}
      I have set the maximum volume in the applet settings to be 15%, and this setting is applied to all the sliders. Even the sliders which are intially at 100% get their maximum reset to 15% as soon as I interact with them. Note, for example, how even the microphone volume is capped at 15%.
      
      **After this patch:**
      Devices tab: {F7326904}
      Applications tab: {F7326905}
      The maximum volume is still set to 15% in the applet settings, but this is does not affect the maximum values of the sliders for the device or application streams.
      
      Test Plan:
      # Right-click on applet > 'Configure audio
      # Try to set maximum volume < 100% and click 'OK'.
      # Scroll on the systray icon to change maximum volume. Check if it is limited to the configured maximum.
      # Open the applet and check that all the streams are not limited to the value to the value the user configured in the applet.
      
      Reviewers: ngraham, romangg, #plasma, davidedmundson
      
      Reviewed By: #plasma, davidedmundson
      
      Subscribers: plasma-devel
      
      Tags: #plasma
      
      Differential Revision: https://phabricator.kde.org/D23768
      f20b6b15
  21. 08 Aug, 2019 1 commit
    • Kezi Olio's avatar
      Avoid garbling the sound if the volume slider is moved fast · a420dd6b
      Kezi Olio authored and Nate Graham's avatar Nate Graham committed
      Summary:
      The audio should not be garbled if you move fast the audio slider  (it distorts because it stops and plays the feedback sound every few milliseconds)
      
      An alternative approach is to `return`; if the `ca_context_playing` says that the sound is still playing, but that gives less "resolution"
      
      BUG: 409525
      BUG: 410716
      FIXED-IN: 5.17.0
      
      Reviewers: #plasma, drosca, davidedmundson, ngraham
      
      Reviewed By: #plasma, davidedmundson, ngraham
      
      Subscribers: anthonyfieroni, filipf, ngraham, davidedmundson, plasma-devel, kezik
      
      Tags: #plasma
      
      Differential Revision: https://phabricator.kde.org/D22316
      a420dd6b
  22. 01 May, 2019 1 commit
  23. 25 Apr, 2018 1 commit
  24. 14 Mar, 2018 1 commit
    • Nate Graham's avatar
      Simplify display when there's only a single input device and a single output device · 86038b5b
      Nate Graham authored
      Summary: The Audio Volume plasmoid has always seemed a bit too heavy and complicated for the common use case of a single input device and a single output device, or apps playing audio but not also recording audio. This patch presents a simplified UI for those use cases.
      
      Test Plan:
      Before, Devices tab, single devices:
      {F5746567}
      
      After, Devices tab, single devices:
      {F5746568}
      
      After, Applications tab, only playback streams:
      {F5752982}
      
      As I lack the hardware to test the multi-device use case, testing by others would be appreciated.
      
      Reviewers: #plasma, drosca, #vdg
      
      Reviewed By: drosca
      
      Subscribers: mart, Zren, plasma-devel
      
      Tags: #plasma
      
      Differential Revision: https://phabricator.kde.org/D11166
      86038b5b
  25. 28 Feb, 2018 1 commit
    • Christian (Fuchs)'s avatar
      Add "move to device" functionality to hamburger menu · 359ec78c
      Christian (Fuchs) authored and David Rosca's avatar David Rosca committed
      This patch adds the possibility to choose a device for a playback / recording stream in the hamburger menu.
      As per the discussion with the developers, the drag & drop functionality stays untouched and is still available.
      
      This is added to be a bit more consistent with the kcm and to make the functionality easier to discover.
      
      The menu is only shown when there are more than one possibilities to choose from in order to not confuse users.
      
      FEATURE: 384292
      
      Differential Revision: https://phabricator.kde.org/D10901
      359ec78c
  26. 25 Jan, 2018 2 commits
  27. 19 Sep, 2017 1 commit
  28. 07 Sep, 2017 1 commit
  29. 06 May, 2017 1 commit
    • David Rosca's avatar
      Applet: Automatically raise maximum volume when over defined maximum volume · d7868925
      David Rosca authored
      When volume is above the maximum volume set in applet, moving the volume
      slider will only lower it to the maximum applet volume.
      This change automatically raises maximum volume when over defined
      maximum volume (eg. when the volume is set by other volume control app
      or when set by the applications itself like VLC), so it is possible to
      control volume over the defined maximum value without first raising maximum volume.
      
      Differential Revision: https://phabricator.kde.org/D5695
      d7868925
  30. 02 May, 2017 3 commits
  31. 08 Apr, 2017 1 commit
  32. 16 Mar, 2017 1 commit
  33. 09 Mar, 2017 1 commit
  34. 02 Mar, 2017 2 commits