Commit Graph

2327 Commits

Author SHA1 Message Date
Flexlolo 9476ad80b8
Implement tray-reversed option (#3182)
* implement tray-reversed option

* update changelog

* Update src/x11/tray_manager.cpp

Co-authored-by: Patrick Ziegler <p.ziegler96@gmail.com>

* Update CHANGELOG.md

---------

Co-authored-by: Patrick Ziegler <p.ziegler96@gmail.com>
2024-10-30 22:13:34 +01:00
jasonjyu f59f509923
Added to string_util tests corner cases for empty strings and numerics (#3180) 2024-10-27 11:33:45 +01:00
Nolan Prochnau 552d81dd56
pulseaudio: Preserve channel balance (#3169)
Instead of preserving the proportions of PulseAudio channels, we now preserve the balance between the channels. This mirrors pulsemixer's approach.
2024-10-19 17:35:33 +02:00
clover 2d00384046
feat(battery): add ramp-charging tag (#3172)
* feat(battery): add ramp-charging tag

* Update battery.cpp

* Update CHANGELOG.md

* Update CHANGELOG.md

* Update CHANGELOG.md
2024-10-19 17:34:47 +02:00
Patrick Ziegler 15ccea6099
doc: Fix changelog entry (#3173)
Git merged the entry into the wrong section
2024-10-13 14:09:03 +02:00
Gregor Best 0eb39c5205
fix: don't restart if zero active screens are reported (#3078)
On laptops and similar devices, RandR sometimes returns zero active
screens, for example when closing a laptop's lid before it suspends.

Don't restart in that case because the new polybar instance will see
zero screens and quit. Instead, just ignore those kind of events.
2024-10-13 13:52:10 +02:00
sysek cf50f75903
doc: change desc for openSUSE (#3166)
Co-authored-by: sysek <sysek@outlook.com>
2024-10-13 13:34:28 +02:00
Valentino Berta a66c5fd91b
fix: check if git top-level directory matches CMake project source (#3156) 2024-09-14 11:13:56 +02:00
ajakk e7cf47de71
fix(build): Add missing cstdint includes (#3159)
In GCC 15, cstdint is less commonly included in stdlib headers so we
need explicit includes: https://gcc.gnu.org/gcc-15/porting_to.html

See-Also: https://bugs.gentoo.org/937526

Signed-off-by: John Helmert III <ajak@gentoo.org>
2024-09-01 14:28:36 +02:00
patrick96 f0f9563ecf Update PKGBUILD for 3.7.2 2024-08-17 13:54:40 +02:00
patrick96 469d0536e8 fix(ci): Release workflow
github.* doesn't exist anymore. Instead everything there is now
available under github.rest.*

Ref: https://github.com/octokit/plugin-rest-endpoint-methods.js/releases/tag/v5.0.0
2024-08-17 13:39:34 +02:00
patrick96 1ba083cdb2
Merge remote-tracking branch 'origin/hotfix/3.7.2' 2024-08-17 13:30:20 +02:00
patrick96 b3af5a3316
Version 3.7.2 2024-08-17 13:19:58 +02:00
patrick96 c0d3d7a3e7 fix(render): Deal with incomplete wallpapers
If the root pixmap does not fully cover the bar window, some
pseudo-transparent areas were filled with unitialized data, causing
pixelation or other rendering artifacts.

Now, ovserved background slices are first filled with black to make sure
this does not happen and they print an error if not the full pixmap can
be filled.

Fixes #3041
2024-08-17 13:13:12 +02:00
classabbyamp 03d01afed6 fix(modules/battery): make rate positive if negative
on the Lenovo X13s, the battery firmware returns a negative value for
power_now, which is interpreted by the battery module as 0 because it
converts the string to unsigned long. This should be read as a long
instead, as the kernel specifies that power_now is an int:
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/tree/include/linux/power_supply.h?h=v6.0.11#n99
2024-08-04 13:55:49 +02:00
patrick96 35638027a8 Update github actions
checkout is bumped from v3 to v4, there shouldn't be any breaking
changes (just bumps the node version)

upload-artifact is bumped from v2 to v4, our use case shouldn't break

github-script is bumped from v3 to v7. I don't see any breaking changes
that should affect us. Again mainly a nodejs version bump
2024-08-04 13:55:04 +02:00
patrick96 6f8db4a3fe ci: Use codecov token
This wasn't required for PRs but for the job that runs on the `master`
branch, the job fails without the token (because it's a protected
branch)
2024-08-04 13:55:04 +02:00
patrick96 0e5760a824 Update github actions
checkout is bumped from v3 to v4, there shouldn't be any breaking
changes (just bumps the node version)

upload-artifact is bumped from v2 to v4, our use case shouldn't break

github-script is bumped from v3 to v7. I don't see any breaking changes
that should affect us. Again mainly a nodejs version bump
2024-08-04 13:54:57 +02:00
patrick96 5aaf49864a ci: Use codecov token
This wasn't required for PRs but for the job that runs on the `master`
branch, the job fails without the token (because it's a protected
branch)
2024-08-04 13:54:57 +02:00
patrick96 52ff00c28d fix(ci): Get Codecov to work again
Mainly updates the plugin
2024-08-01 12:13:30 +02:00
patrick96 df87c7ac21 fix(ci): Get Codecov to work again
Mainly updates the plugin
2024-08-01 12:13:27 +02:00
patrick96 4d1758457b fix(ipc): Clear output until initial hook finishes
Before, it just showed '%output%'

Fixes #3131
2024-08-01 11:15:48 +02:00
patrick96 baed54bc76 doc: Improve tray documentation
Unaware users may be confused by why the tray module is not shown in the
default config and if they add it, they may be confused why only one of
their bars shows the module.
2024-08-01 11:09:46 +02:00
Isak05 81ea16931e
fix(script): Receiving multiple lines rapidly only displays first line (#3119)
Fixes #3117
2024-04-28 21:10:12 +02:00
patrick96 ab583b08cd fix(tray): Clients not being removed properly
The vector::erase call needs to be supplied with the end of the range,
otherwise only a single element is removed.

Fixes #3111
2024-04-15 23:43:25 +02:00
patrick96 c8f7dc1c14 fix(i3): Properly render non-full-width windows
Without override-redirect, i3 will not allow you to have a
non-full-width bar. But polybar simply ignores that request and
continues to render the user-requested width instead of the width i3 has
configured the window to be.

With the 3.7 release, we started setting the window's backing pixmap to
the rendering pixmap. In the case above, the pixmap would only be
allocted for the smaller width and when i3 maps the window, it repeats
the backing pixmap to fill the entire window.

At the point where i3 maps the window, the pixmap contains an initial
render of the bar without module content and that render is then
duplicated.

Reverting back to the old approach of simply copying over the pixmap
after each render does not have that problem and the remainder of the
bar is black (or fully transparent with a compositor).

Ideally, polybar would respect the width i3 configures for it, but that
would break many existing setups that rely on non-full-width bars in i3

Fixes #3060
2024-02-18 19:02:30 +01:00
Patrick Ziegler 020699724f
fix(label): Misbehaving min-length tokens with non-ASCII characters (#3090)
* Changed bit count for label to use UTF8 standard

Fixes #3074

* label: Calculate length only once

The length calculation has to traverse the whole string

---------

Co-authored-by: nklloyd <nicholask.lloyd@gmail.com>
2024-02-10 12:51:34 +01:00
Patrick Ziegler 8e04f15ed6
fix(backlight): %backlight% token appearing on the bar (#3081)
* Fix backlight initial value matching the actual brightness level

The initial value is `0`. If the actual brightness is also `0` you see
`%percentage%` token as text, it’s not being replaced. Since
`m_brightness` is an `int` the initial value could be just `-1` since
the actual brightness is never goes below zero. Thus this bug will never
show up again because actual brightness on first render won’t match
the “old” `m_brightness` value.

See also for more detailed explanation of the bug:
https://github.com/polybar/polybar/discussions/3079#discussioncomment-8169932

* Add docs

---------

Co-authored-by: Viacheslav Lotsmanov <lotsmanov89@gmail.com>
2024-01-20 18:09:12 +01:00
patrick96 0ed669f049
fix(doc): Update vulnerable rtd search extension
Ref: https://github.com/readthedocs/readthedocs-sphinx-search/security/advisories/GHSA-xgfm-fjx6-62mj
2024-01-20 17:53:28 +01:00
Roddy Rappaport 11b522c313 doc: Added unmute-on-scroll to changelog and module descriptions 2024-01-17 18:01:10 +01:00
Roddy Rappaport 82a81ce07c feat(pulseaudio): Add unmute on scroll option (polybar#3067)
This will allow users to specify in their config if they want the mixers
to unmute if they use the scroll wheel on the module.

Closes: #3067
2024-01-17 18:01:10 +01:00
Roddy Rappaport c2dd279bf7 feat(alsa): Add unmute on scroll option (polybar#3067)
This will allow users to specify in their config if they want the mixers
to unmute if they use the scroll wheel on the module.
2024-01-17 18:01:10 +01:00
patrick96 174ce34285 fix(doc): Update vulnerable rtd search extension
Ref: https://github.com/readthedocs/readthedocs-sphinx-search/security/advisories/GHSA-xgfm-fjx6-62mj
2024-01-16 22:37:15 +01:00
patrick96 b4d8be590b Update PKGBUILD for 3.7.1 2023-11-27 17:36:23 +01:00
patrick96 b25d00b159 fix(doc): Wrong header level in changelog 2023-11-27 17:29:31 +01:00
patrick96 367847ec3b
Merge branch 'hotfix/3.7.1' 2023-11-27 17:20:39 +01:00
patrick96 91bd85cf50
Version 3.7.1 2023-11-27 17:15:23 +01:00
patrick96 ade2ee0981 build: Update i3ipcpp
Closes #3042
Includes polybar/i3ipcpp#16
2023-11-27 15:53:30 +01:00
Felix Yan 7ad51bed20 Update Arch Linux package URL in README.md
The old URL returns 404 now.
2023-11-21 14:23:25 +01:00
patrick96 9ea910d706 doc: Fix "Release Workflow" badge
The release workflow never runs on the master branch (it runs on the
release branch), so the badge would always show "no status"
2023-11-18 19:41:13 +01:00
patrick96 c552df3b66 fix: Modules did not validate tags used in formats
The 'value' variable that was used for validation, was empty because it
was used in a move at the beginning of the function.

Fixes #3043
2023-11-16 22:29:00 +01:00
patrick96 432e19df01 build: Add missing headers in common.hpp 2023-11-12 15:18:34 +01:00
patrick96 cbfbba0700 Remove tray_visibility signal
No longer needed since tray visibility is now controlled directly by the
enclosing module
2023-11-11 04:01:26 +01:00
patrick96 8566051336 fix(tray): Allow module to disappear for empty tray
Modules that don't produce any output are hidden by the controller
(don't have margins or separators).
The tray module should also do that for `format = <tray>` when there are
no icons.

This required the visibility handling to be tied to the module
visibility instead of being handled by the renderer.
Otherwise, the renderer would hide the tray (because the %{Pt} tag was
never sent) and the tray would not unhide when new icons appeared; it
can't differentiate between hidden because empty and hidden because the
module is hidden by the user (the latter is the reason the renderer does
hiding at all).

Fixes #3036
2023-11-11 04:01:26 +01:00
patrick96 7d7bf84e16 Update PKGBUILD for 3.7.0 2023-11-06 01:02:48 +01:00
patrick96 a7d9b7d912 doc: The Kelvin unit appears without "degrees" 2023-11-06 01:02:48 +01:00
patrick96 2471f3595c
Version 3.7.0 2023-11-05 23:36:13 +01:00
patrick96 cd57c1252c
Write migration guide for the content in custom/text 2023-11-05 22:53:09 +01:00
patrick96 ea3b47a65e
Improve release workflow documentation 2023-11-05 22:05:43 +01:00
patrick96 70c400d20d
doc: Specify boxes to check in GitHub release tool 2023-11-05 22:05:43 +01:00