Alexays / Waybar

Highly customizable Wayland bar for Sway and Wlroots based compositors. :v: :tada:
MIT License
6.74k stars 707 forks source link

Cursor change to indicate module clickability looks broken for `hyprland/workspaces` #3236

Open alexlnkp opened 6 months ago

alexlnkp commented 6 months ago

Sometimes the cursor change, introduced by #3108 doesn't change when it needs to, and sometimes it changes when even if you were to click - nothing would happen (i.e. the cursor either changes when it shouldn't or changes earlier than it should)

On the video the cursor changes to a "clickable" state only at the edges of the workspaces buttons, where they are not clickable. (0:21 in the video, i find the little edge where the mouse indicates that the element is clickable, but clicking does nothing)

https://github.com/Alexays/Waybar/assets/79400603/7057c98c-6264-43d8-9921-b91c9f5341cb

Overall wish there was a way to configure whether to display the "clickability" of the elements, but i couldn't find any.

alexlnkp commented 6 months ago

How are you invoking this in your waybar config?

I just... added the workspaces widget in the config.

{
    "layer": "top",
    "position": "top",
    "mod": "dock",
    "exclusive": true,
    "passthrough": false,
    "gtk-layer-shell": true,
    "height": 11,
    "modules-left": ["custom/pacman", "hyprland/workspaces"],
    "modules-center": ["hyprland/window"],
    "modules-right": ["tray", "pulseaudio", "pulseaudio#microphone", "clock"],

// . . .

    "hyprland/workspaces": {
          "format": "{icon}",
          "on-click": "activate",
          "format-icons": {
              "1": "",
              "2": "",
              "3": "",
              "4": "",
              "5": "󱡭",
              "6": "󰲫",
              "7": "󰲭",
              "8": "󰲯",
              "9": "󰲱",
              "10": "󰿭"
          },
          "sort-by-number": true
    },

// . . .
musjj commented 5 months ago

Experiencing the exact same issue here.

alexlnkp commented 4 months ago

ADDENDUM: I tested a little bit since the initial post, here's what I found: While the cursor's state is "Clickable" and the cursor is not over any actual button on the widget - the waybar tries to run activate command in bash itself.

sh: line 1: activate: command not found

I assume it's because the cursor isn't over an actual workspace-corresponding button, but the widget dictates that on-click a command activate must be ran. Perhaps the widget itself overloads the command that is ran whenever it detects an actual workspace button? I'll take a look at the source code, but this seems to be exactly what is going on