1. 15 May, 2021 1 commit
  2. 13 May, 2021 3 commits
  3. 03 May, 2021 3 commits
  4. 29 Apr, 2021 4 commits
  5. 20 Apr, 2021 1 commit
    • Zren (Chris Holland)'s avatar
      Increment volume by percent instead of a constant volumeStep · dedcbccf
      Zren (Chris Holland) authored
      Jumping by a fixed volumeStep has issues as the value is rounded.
      65536/100 = 655.36
      65536/100*5 = 3276.8
      volumeStep = round(3276.8) = 3277
      
      The floor() patch has an easy to test bug when jumping from 100% to
      94% instead of 95% since volumeStep is rounded up.
      Eg: 65536 => 62259 (-3277) 100% => 94%  (-6%)
      
      The original round() logic also has issues when volume is around:
      f(x) = (65536/100) / 2 + (65536/100) * x
      
      amixer sset Master 983 # f(1)=983.04
      Eg: 983 => 4260 (+3277) 1% => 7%  (+6%)
      
      This patch adds changeVolumeByPercent(volumeObject, deltaPercent) to
      increment any sink or source by a %volume. It also moves the common
      code in increaseVolume() and decreaseVolume() into a new function.
      
      BUG: 434769
      BUG: 435522
      FIXED-IN: 5.21.5
      dedcbccf
  6. 16 Apr, 2021 1 commit
  7. 08 Apr, 2021 1 commit
  8. 06 Apr, 2021 6 commits
  9. 22 Mar, 2021 1 commit
    • Nate Graham's avatar
      Round volume to avoid increasing or decreasing by more than stepSize · 52cb6b0e
      Nate Graham authored
      Sometimes when you increase or decrease the volume using the key on your
      keyboard or a global shortcut, it will change by more than the stepSize.
      For example when you're at 40% volume and go up when a stepSize of 5%,
      sometimes it will change to 46% volume, not 45%.
      
      The reason for this is that the Volume number we get from PulseAudio and
      then manipulate is a float. So we have to round it down to avoid
      accumulating errors over time. The percentage display function already
      rounds, so let's do the same thing in the functions to increase and
      decrease the volume.
      
      We should also use Math.floor() rather than Math.round() to ensure
      consistency in the values we're using.
      
      BUG: 434769
      FIXED-IN: 5.21.4
      52cb6b0e
  10. 15 Mar, 2021 1 commit
  11. 06 Mar, 2021 1 commit
  12. 05 Mar, 2021 1 commit
  13. 04 Mar, 2021 1 commit
  14. 01 Mar, 2021 1 commit
  15. 27 Feb, 2021 1 commit
  16. 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
  17. 19 Feb, 2021 1 commit
  18. 08 Feb, 2021 2 commits
    • 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
    • Kai Uwe Broulik's avatar
      Optimized change signal emissions · aa7e7806
      Kai Uwe Broulik authored
      * Don't recrete Ports and Profiles list every time, re-use existing instances
        and add/remove as needed
      * Don't emit propertiesChanged when they didn't change
      * Some other minor checks
      aa7e7806
  19. 05 Feb, 2021 1 commit
  20. 04 Feb, 2021 1 commit
  21. 30 Jan, 2021 1 commit
  22. 26 Jan, 2021 1 commit
  23. 24 Jan, 2021 1 commit
  24. 23 Jan, 2021 2 commits
    • Kai Uwe Broulik's avatar
      Remember last used tab · 912beaaa
      Kai Uwe Broulik authored
      912beaaa
    • Kai Uwe Broulik's avatar
      Forward role() into PulseObjectFilterModel · c6c72109
      Kai Uwe Broulik authored
      The stream list was changed into a `PulseObjectFilterModel` to filter out
      virtual streams but there are some places that relied on the `role()` method
      on the original model.
      
      Just add a `role()` function calling into the source model.
      This fixes the menu on Applications tab not working.
      
      Ideally, we'd just use the enums on the respective model but with the
      dynamic way plasma-pa creates those roles, that's difficult.
      c6c72109
  25. 21 Jan, 2021 2 commits