summaryrefslogtreecommitdiff
path: root/components/volume.c
AgeCommit message (Collapse)Author
2022-10-28radical re-formatting 0/3: Alphabetic headersdrkhsh
Except stated otherwise in comment. Fixes coding style. Formatting commits suck, incoherent coding style sucks more. https://suckless.org/coding_style/
2022-10-27components/*.c: include slstatus.hNRK
this gives the compiler a chance to check weather the prototype and definiton matches or not, which would catch issues like 3c47701.
2022-10-27Reset sndiod initialization flag on disconnectsIngo Feinerer
If the connection is lost to the sndiod(8) daemon reset the initialization to allow for a graceful restart.
2022-10-27Make volume component work on FreeBSDmichaelbuch12@gmail.com
- Edit compile instructions - Reuse OpenBSD sndio implementation
2020-11-30Use the sioctl_open(3) OpenBSD API to access volIngo Feinerer
Starting with OpenBSD 6.7 regular users cannot access raw audio devices anymore, for improved security. Instead use the sioctl_open(3) API to access and manipulate audio controls exposed by sndiod(8). On the first call a permanent connection is established with the running sndiod daemon, and call-back functions are registered which are triggered when audio controls are changed (e.g., a USB headset is attached) or when the volume is modified. On subsequent calls we poll for changes; if there are no volume changes this costs virtually nothing. Joint work with Alexandre Ratchov
2019-02-13Add native OpenBSD support for mute/volumeIngo Feinerer
Based on functionality in dstat by Joerg Jung.
2018-05-30Clean up header includesAaron Marcher
- Remove <errno.h> because related functions are in util.c now - Remove corresponding <string.h> if not used otherwise
2018-05-21Remove units from numbersAaron Marcher
This is a first step to decouple formatting from information because of two reasons: 1. The components should only gather and return the values by design 2. Fine grained user control should be a focus Scaling will be implemented in a different way in a later commit.
2018-05-19Add the percent sign to *_perc functionsAaron Marcher
Units should be added to the corresponding numbers
2018-05-18Add warn() and die()Laslo Hunhold
Given slstatus is a tool that runs in the background, most likely run from .xinitrc, it's important to prepend the name of the tool to error messages so it becomes clear where the error is coming from. To make this much more consistent, this commit adds warn() and die() utility functions consistent with other suckless projects and adapts all calls to fprintf(stderr, *) to the warn() and die() functions, greatly increasing the readability of the code.
2018-05-17Unify type of `i` in for loopsAaron Marcher
int for normal indexes size_t for usage with the LEN macro
2018-05-07Unify header includesAaron Marcher
- Sort Alphabetically - Same indentation for preprocessor clauses
2018-05-06Fix coding styleAaron Marcher
- Use block for single statement ifs - Keep lines to reasonable length (current debate as to reasonable) - When functions return -1 for error test against 0 not -1 - Do not indent cases another level - Do not test against NULL and 0 explicitly - Use tabs for indentation, use spaces for alignment
2018-05-02volume: Cast SOUND_MIXER_READ_DEVMASK to int to avoid warning.parazyd
2018-04-29Add OpenBSD support in volume.cparazyd
2018-03-28Format error messages properlyAaron Marcher
Make use of strerror(errno) and format all errors equally: function ['parameters']: error message
2018-03-28Get rid of err.h as it is not portableAaron Marcher
Replace warn() and warnx() with fprintf() and add <stdio.h> where necessary.
2018-03-21More robust preprocessor switchesAaron Marcher
Replace #ifdef with #if defined() and #elif with #elif defined() as it should only test if it is defined or not.
2018-03-18Build Linux-only functions only on LinuxAaron Marcher
2017-09-24Move components into dedicated subdirectoryLaslo Hunhold
This brings us a lot more tidiness.