Bug when running bar in on dual monitors in vertical orientation

Create issue
Issue #9 resolved
Jon Sagotsky created an issue

Hi there! I’m trying to set up dk on a secondary monitor. This is actually the second time I’m writing up this bug - the first draft assumed it was something more major but a little debugging along the way showed me that it was more of a corner case. I’m sending the bug report anyway because it’s already written up and may reveal some other geometry bugs, but I totally get it if you opt not to prioritize this one.

--

When I run dk with two monitors in a vertical orientation, with the lower monitor set to primary, and I launch a bar, it wrecks up window rendering on the lower monitor. I didn’t think of swapping to use the top monitor as primary until I was about to submit this bug report. If the top monitor is primary, everything works great.

Before shot - I’ve got two 1080p screens in vertical orientation.

After - With a bar added in, the secondary monitor looks good, but the primary monitor’s windows are squished down to ~50px or so. (It may not be obvious from the thumbnail, but the firefox instance in the first shot is present in the second, it’s just really short)

I’m using yambar in these pics, but the behavior is the same with polybar. I’ve also tried bumping the height of my yambar - I figured maybe this was a miscalculated offset somewhere. Yambar gets bigger but the window stays at roughly the same height.

My dkrc is here: https://github.com/sagotsky/.dotfiles/blob/master/config/dk/dkrc
I’m using the latest master: b24d181ba0cc41a00ba658ea8ef0d9798ceebd5b

Comments (22)

  1. Nate Maia repo owner

    I'll look into it tonight after work.

    In the meantime would you be able to post some command output.

    xrandr
    dkcmd status type=full num=1
    
  2. Nate Maia repo owner

    On a separate note after reading your dkrc I see a few things (zoom window title matching not working) that may have been fixed with the latest commit. Namely window titles being fucked or containing jibberish.

  3. Jon Sagotsky reporter

    Here ya go!

    # globals - key: value ...
    numws: 10
    smart_border: 1
    smart_gap: 1
    focus_urgent: 1
    focus_mouse: 0
    focus_open: 1
    tile_hints: 0
    tile_tohead: 0
    win_minxy: 10
    win_minwh: 50
    
    # width outer_width focus urgent unfocus outer_focus outer_urgent outer_unfocus
    border: 2 1 0xff000000 0xffff5500 0xff222222 0xffcccccc 0xffff5500 0xff222222
    
    # number:name:layout ...
    workspaces: *1:1:tile 2:2:tile 3:3:tile 4:4:tile 5:5:tile 6:6:tile 7:7:tile 8:8:tile 9:9:tile 10:10:tile
        # number:name active_window nmaster nstack msplit ssplit gappx padl padr padt padb
        1:1 0x05600002 1 3 0.50 0.50 10 0 0 0 0
        2:2 0x01200002 1 3 0.50 0.50 10 0 0 0 0
        3:3 0x03c00002 1 3 0.50 0.50 10 0 0 0 0
        4:4 0x00a00002 1 3 0.50 0.50 10 0 0 0 0
        5:5 0x02200002 1 3 0.50 0.50 10 0 0 0 0
        6:6 0x00000000 1 3 0.50 0.50 10 0 0 0 0
        7:7 0x00000000 1 3 0.50 0.50 10 0 0 0 0
        8:8 0x00000000 1 3 0.50 0.50 10 0 0 0 0
        9:9 0x07600002 1 3 0.50 0.50 10 0 0 0 0
        10:10 0x06800002 1 3 0.50 0.50 10 0 0 0 0
    
    # number:name:workspace ...
    monitors: *1:eDP-1:1 0:DP-1-1.1:4
        # number:name active_window x y width height wx wy wwidth wheight
        1:eDP-1 0x05600002 0 1080 1920 1080 0 1080 1920 1080
        0:DP-1-1.1 0x00a00002 0 0 1920 1080 0 0 1920 1080
    
    # id:workspace ...
    windows: 0x0580002c:1 0x03400002:1 *0x05600002:1 0x01200002:2 0x03c00002:3 0x00a00002:4 0x02200002:5 0x07600002:9 0x06800002:10 0x03600002:10 0x03200109:10
        # id title class instance ws x y width height bw hoff float full fakefull fixed stick urgent callback trans_id
        0x0580002c "Inbox (1) - jon.sagotsky@ezcater.com - ezCater Mail — Mozilla Firefox" "firefox" "Navigator" 1 10 1090 941 1056 2 0 0 0 0 0 0 0 none 0x00000000
        0x03400002 "v .config/sxhkd" "Alacritty" "Alacritty" 1 965 1090 941 521 2 0 0 0 0 0 0 0 none 0x00000000
        0x05600002 "dkcmd status type=full num=1" "Alacritty" "Alacritty" 1 965 1625 941 521 2 0 0 0 0 0 0 0 none 0x00000000
        0x01200002 "Spotify" "broken" "broken" 2 0 23 1920 1057 2 0 0 0 0 0 0 0 none 0x00000000
        0x03c00002 "Alacritty" "Alacritty" "Alacritty" 3 0 1080 1920 1080 2 0 0 0 0 0 0 0 none 0x00000000
        0x00a00002 "sashimi zsh" "Alacritty" "Alacritty" 4 0 0 1920 1080 2 0 0 0 0 0 0 0 none 0x00000000
        0x02200002 "Slack | * pb-s-menu-platform | ezCater" "Slack" "slack" 5 0 1080 1920 1080 2 0 0 0 0 0 0 0 none 0x00000000
        0x07600002 "v scripts/workspaces.rb" "Alacritty" "Alacritty" 9 0 23 1920 1057 2 0 0 0 0 0 0 0 none 0x00000000
        0x06800002 "v .config/dunst/dunstrc" "Alacritty" "Alacritty" 10 10 1090 941 1056 2 0 0 0 0 0 0 0 none 0x00000000
        0x03600002 "Documentation · Dunst - Google Chrome" "Google-chrome" "google-chrome" 10 965 1090 941 521 2 0 0 0 0 0 0 0 none 0x00000000
        0x03200109 "Zoom - Free Account" "zoom" "zoom" 10 965 1625 941 521 2 0 0 0 0 0 0 0 none 0x00000000
    
    # title class instance workspace monitor float stick focus callback x y width height xgrav ygrav
    rule: "^zoom1$" "(null)" "(null)" 10 (null) 1 0 0  -1 -1 -1 -1 none none
    rule: "^zooml$" "(null)" "(null)" 10 (null) 1 0 0  -1 -1 -1 -1 none none
    rule: "^zoom$" "(null)" "(null)" 10 (null) 0 0 0  -1 -1 -1 -1 none none
    rule: "^Zoom Cloud Meetings" "(null)" "(null)" 10 (null) 0 0 0  -1 -1 -1 -1 none none
    rule: "^Zoom Meetingx$" "(null)" "(null)" 10 (null) 0 0 0  -1 -1 -1 -1 none none
    rule: "^Zoom Meeting$" "(null)" "(null)" 10 (null) 0 0 0  -1 -1 -1 -1 none none
    rule: "^Zoom - Free Account$" "(null)" "(null)" 10 (null) 0 0 0  -1 -1 -1 -1 none none
    rule: "(null)" "^Slack$" "(null)" 5 (null) 0 0 0  -1 -1 -1 -1 none none
    rule: "(null)" "^Broken$" "(null)" 2 (null) 0 0 0  -1 -1 -1 -1 none none
    rule: "(null)" "^Firefox$" "(null)" 1 (null) 0 0 0  -1 -1 -1 -1 none none
    

    TY for taking a peek at that btw. I’ll give zoom another try. That apps been awful to configure.

  4. Nate Maia repo owner

    Don't sweat it, of there's a serious issue I'd like to get it fixed.

    Can I see the same but when a bar is opened and the issue occurs. Im looking to check padding values and monitor locations.

    The height of your bar in px would also be helpful.

  5. Jon Sagotsky reporter

    Without bar

    # globals - key: value ...
    numws: 10
    smart_border: 1
    smart_gap: 1
    focus_urgent: 1
    focus_mouse: 0
    focus_open: 1
    tile_hints: 0
    tile_tohead: 0
    win_minxy: 10
    win_minwh: 50
    
    # width outer_width focus urgent unfocus outer_focus outer_urgent outer_unfocus
    border: 2 1 0xff000000 0xffff5500 0xff222222 0xffcccccc 0xffff5500 0xff222222
    
    # number:name:layout ...
    workspaces: 1:1:tile 2:2:tile *3:3:tile 4:4:tile 5:5:tile 6:6:tile 7:7:tile 8:8:tile 9:9:tile 10:10:tile
        # number:name active_window nmaster nstack msplit ssplit gappx padl padr padt padb
        1:1 0x00e0002c 1 3 0.50 0.50 10 0 0 0 0
        2:2 0x00c00001 1 3 0.50 0.50 10 0 0 0 0
        3:3 0x03200002 1 3 0.50 0.50 10 0 0 0 0
        4:4 0x00400002 1 3 0.50 0.50 10 0 0 0 0
        5:5 0x02200001 1 3 0.50 0.50 10 0 0 0 0
        6:6 0x00000000 1 3 0.50 0.50 10 0 0 0 0
        7:7 0x00000000 1 3 0.50 0.50 10 0 0 0 0
        8:8 0x00000000 1 3 0.50 0.50 10 0 0 0 0
        9:9 0x00000000 1 3 0.50 0.50 10 0 0 0 0
        10:10 0x05e00002 1 3 0.50 0.50 10 0 0 0 0
    
    # number:name:workspace ...
    monitors: 1:eDP-1:2 *1:DP-1-1.1:3
        # number:name active_window x y width height wx wy wwidth wheight
        1:eDP-1 0x00c00001 0 1080 1920 1080 0 1080 1920 1080
        1:DP-1-1.1 0x03200002 0 0 1920 1080 0 0 1920 1080
    
    # id:workspace ...
    windows: 0x00e0002c:1 0x00c00001:2 0x07000002:3 *0x03200002:3 0x03600002:3 0x00400002:4 0x02200001:5 0x05e00002:10
        # id title class instance ws x y width height bw hoff float full fakefull fixed stick urgent callback trans_id
        0x00e0002c "Js/menu 1578/brand categories move service by sagotsky · Pull Request #23858 · ezcater/ez-rails — Mozilla Firefox" "firefox" "Navigator" 1 -3844 23 1920 1057 2 0 0 0 0 0 0 0 none 0x00000000
        0x00c00001 "Spotify" "Spotify" "spotify" 2 0 1080 1920 1080 2 0 0 0 0 0 0 0 none 0x00000000
        0x07000002 "arandr" "Alacritty" "Alacritty" 3 10 10 941 1056 2 0 0 0 0 0 0 0 none 0x00000000
        0x03200002 "Alacritty" "Alacritty" "Alacritty" 3 965 10 941 521 2 0 0 0 0 0 0 0 none 0x00000000
        0x03600002 "Alacritty" "Alacritty" "Alacritty" 3 965 545 941 521 2 0 0 0 0 0 0 0 none 0x00000000
        0x00400002 "sashimi nvim" "Alacritty" "Alacritty" 4 0 0 1920 1080 2 0 0 0 0 0 0 0 none 0x00000000
        0x02200001 "Slack | pb-ask-it-basket | ezCater" "Slack" "slack" 5 0 1080 1920 1080 2 0 0 0 0 0 0 0 none 0x00000000
        0x05e00002 "vw" "Alacritty" "Alacritty" 10 -3844 23 1920 1057 2 0 0 0 0 0 0 0 none 0x00000000
    
    # title class instance workspace monitor float stick focus callback x y width height xgrav ygrav
    rule: "^zoom1$" "(null)" "(null)" 10 (null) 1 0 0  -1 -1 -1 -1 none none
    rule: "^zooml$" "(null)" "(null)" 10 (null) 1 0 0  -1 -1 -1 -1 none none
    rule: "^zoom$" "(null)" "(null)" 10 (null) 0 0 0  -1 -1 -1 -1 none none
    rule: "^Zoom Cloud Meetings" "(null)" "(null)" 10 (null) 0 0 0  -1 -1 -1 -1 none none
    rule: "^Zoom Meetingx$" "(null)" "(null)" 10 (null) 0 0 0  -1 -1 -1 -1 none none
    rule: "^Zoom Meeting$" "(null)" "(null)" 10 (null) 0 0 0  -1 -1 -1 -1 none none
    rule: "^Zoom - Free Account$" "(null)" "(null)" 10 (null) 0 0 0  -1 -1 -1 -1 none none
    rule: "(null)" "^Slack$" "(null)" 5 (null) 0 0 0  -1 -1 -1 -1 none none
    rule: "(null)" "^Broken$" "(null)" 2 (null) 0 0 0  -1 -1 -1 -1 none none
    rule: "(null)" "^Firefox$" "(null)" 1 (null) 0 0 0  -1 -1 -1 -1 none none
    

    With bar

    # globals - key: value ...
    numws: 10
    smart_border: 1
    smart_gap: 1
    focus_urgent: 1
    focus_mouse: 0
    focus_open: 1
    tile_hints: 0
    tile_tohead: 0
    win_minxy: 10
    win_minwh: 50
    
    # width outer_width focus urgent unfocus outer_focus outer_urgent outer_unfocus
    border: 2 1 0xff000000 0xffff5500 0xff222222 0xffcccccc 0xffff5500 0xff222222
    
    # number:name:layout ...
    workspaces: 1:1:tile 2:2:tile *3:3:tile 4:4:tile 5:5:tile 6:6:tile 7:7:tile 8:8:tile 9:9:tile 10:10:tile
        # number:name active_window nmaster nstack msplit ssplit gappx padl padr padt padb
        1:1 0x00e0002c 1 3 0.50 0.50 10 0 0 0 0
        2:2 0x00c00001 1 3 0.50 0.50 10 0 0 0 0
        3:3 0x03200002 1 3 0.50 0.50 10 0 0 0 0
        4:4 0x00400002 1 3 0.50 0.50 10 0 0 0 0
        5:5 0x02200001 1 3 0.50 0.50 10 0 0 0 0
        6:6 0x00000000 1 3 0.50 0.50 10 0 0 0 0
        7:7 0x00000000 1 3 0.50 0.50 10 0 0 0 0
        8:8 0x00000000 1 3 0.50 0.50 10 0 0 0 0
        9:9 0x00000000 1 3 0.50 0.50 10 0 0 0 0
        10:10 0x05e00002 1 3 0.50 0.50 10 0 0 0 0
    
    # number:name:workspace ...
    monitors: 1:eDP-1:2 *1:DP-1-1.1:3
        # number:name active_window x y width height wx wy wwidth wheight
        1:eDP-1 0x00c00001 0 1080 1920 1080 0 1103 1920 -23
        1:DP-1-1.1 0x03200002 0 0 1920 1080 0 0 1920 1080
    
    # id:workspace ...
    windows: 0x00e0002c:1 0x00c00001:2 0x07000002:3 *0x03200002:3 0x03600002:3 0x00400002:4 0x02200001:5 0x05e00002:10
        # id title class instance ws x y width height bw hoff float full fakefull fixed stick urgent callback trans_id
        0x00e0002c "Js/menu 1578/brand categories move service by sagotsky · Pull Request #23858 · ezcater/ez-rails — Mozilla Firefox" "firefox" "Navigator" 1 -3844 23 1920 1057 2 0 0 0 0 0 0 0 none 0x00000000
        0x00c00001 "Spotify" "Spotify" "spotify" 2 0 1079 1920 1 2 0 0 0 0 0 0 0 none 0x00000000
        0x07000002 "arandr" "Alacritty" "Alacritty" 3 10 10 941 1056 2 0 0 0 0 0 0 0 none 0x00000000
        0x03200002 "dkcmd status type=full num=1 > /tmp/1.txt" "Alacritty" "Alacritty" 3 965 10 941 521 2 0 0 0 0 0 0 0 none 0x00000000
        0x03600002 "yambar" "Alacritty" "Alacritty" 3 965 545 941 521 2 0 0 0 0 0 0 0 none 0x00000000
        0x00400002 "sashimi nvim" "Alacritty" "Alacritty" 4 0 0 1920 1080 2 0 0 0 0 0 0 0 none 0x00000000
        0x02200001 "Slack | pb-ask-it-basket | ezCater" "Slack" "slack" 5 0 1080 1920 1080 2 0 0 0 0 0 0 0 none 0x00000000
        0x05e00002 "vw" "Alacritty" "Alacritty" 10 -3844 23 1920 1057 2 0 0 0 0 0 0 0 none 0x00000000
    
    # title class instance workspace monitor float stick focus callback x y width height xgrav ygrav
    rule: "^zoom1$" "(null)" "(null)" 10 (null) 1 0 0  -1 -1 -1 -1 none none
    rule: "^zooml$" "(null)" "(null)" 10 (null) 1 0 0  -1 -1 -1 -1 none none
    rule: "^zoom$" "(null)" "(null)" 10 (null) 0 0 0  -1 -1 -1 -1 none none
    rule: "^Zoom Cloud Meetings" "(null)" "(null)" 10 (null) 0 0 0  -1 -1 -1 -1 none none
    rule: "^Zoom Meetingx$" "(null)" "(null)" 10 (null) 0 0 0  -1 -1 -1 -1 none none
    rule: "^Zoom Meeting$" "(null)" "(null)" 10 (null) 0 0 0  -1 -1 -1 -1 none none
    rule: "^Zoom - Free Account$" "(null)" "(null)" 10 (null) 0 0 0  -1 -1 -1 -1 none none
    rule: "(null)" "^Slack$" "(null)" 5 (null) 0 0 0  -1 -1 -1 -1 none none
    rule: "(null)" "^Broken$" "(null)" 2 (null) 0 0 0  -1 -1 -1 -1 none none
    rule: "(null)" "^Firefox$" "(null)" 1 (null) 0 0 0  -1 -1 -1 -1 none none
    

    The bar is configured to be 22px high, but I think there’s a little bit of spacing and padding around it by default as well.

  6. Matt Dobson

    Hey Nate

    With one bar (33px):

    # globals - key: value ...
    numws: 10
    smart_border: 1
    smart_gap: 1
    focus_urgent: 1
    focus_mouse: 1
    focus_open: 1
    tile_hints: 0
    tile_tohead: 0
    win_minxy: 10
    win_minwh: 50
    
    # width outer_width focus urgent unfocus outer_focus outer_urgent outer_unfocus
    border: 5 3 0xff6699cc 0xffee5555 0xff444444 0xff222222 0xff222222 0xff222222
    
    # number:name:layout ...
    workspaces: *1::dwindle 2::dwindle 3::dwindle 4::dwindle 5::dwindle 6::dwindle 7::dwindle 8::dwindle 9::dwindle 10::dwindle
        # number:name active_window nmaster nstack msplit ssplit gappx padl padr padt padb
        1: 0x03800006 1 3 0.50 0.50 10 0 0 0 0
        2: 0x00000000 1 3 0.50 0.50 10 0 0 0 0
        3: 0x00000000 1 3 0.50 0.50 10 0 0 0 0
        4: 0x00000000 1 3 0.50 0.50 10 0 0 0 0
        5: 0x00000000 1 3 0.50 0.50 10 0 0 0 0
        6: 0x03200006 1 3 0.50 0.50 10 0 0 0 0
        7: 0x02200007 1 3 0.50 0.50 10 0 0 0 0
        8: 0x00000000 1 3 0.50 0.50 10 0 0 0 0
        9: 0x00000000 1 3 0.50 0.50 10 0 0 0 0
        10: 0x00000000 1 3 0.50 0.50 50 200 200 100 100
    
    # number:name:workspace ...
    monitors: 1:DisplayPort-0:8 *2:HDMI-A-0:1
        # number:name active_window x y width height wx wy wwidth wheight
        1:DisplayPort-0 0x00000000 3840 0 3840 2160 3840 0 3840 2160
        2:HDMI-A-0 0x03800006 0 0 3840 2160 0 37 3840 2123
    
    # id:workspace ...
    windows: 0x0340002c:1 *0x03800006:1 0x03200006:6 0x02200007:7 0x01800007:7
        # id title class instance ws x y width height bw hoff float full fakefull fixed stick urgent callback trans_id
        0x0340002c "natemaia / dk / issues / #9 - Bug when running bar in on dual monitors in vertical orientation — Bitbucket — Mozilla Firefox" "firefox" "Navigator" 1 0 37 3840 2123 5 0 0 0 0 0 0 0 none 0x00000000
        0x03800006 "dkcmd status type=full num=1 > dkcmd.txt /home/dobbie" "scratchpad" "st" 1 2720 808 1107 1113 5 0 1 0 0 0 0 0 none 0x00000000
        0x03200006 "Schammasch - Satori" "ncmpcpp" "st" 6 4960 400 1600 1360 5 0 1 0 0 0 0 0 none 0x00000000
        0x02200007 "dk" "Thunar" "thunar" 7 3850 10 1895 2130 5 0 0 0 0 0 0 0 none 0x00000000
        0x01800007 "dkrc - /home/dobbie/.config/dk - Geany" "Geany" "geany" 7 5765 10 1895 2130 5 0 0 0 0 0 0 0 none 0x00000000
    
    # title class instance workspace monitor float stick focus callback x y width height xgrav ygrav
    rule: "(null)" "^firefox$" "(null)" -1 HDMI-A-0 0 0 0  -1 -1 -1 -1 none none
    rule: "(null)" "^steam$" "(null)" 10 (null) 0 0 1  -1 -1 -1 -1 none none
    rule: "(null)" "^nitrogen$" "(null)" 10 (null) 0 0 1  -1 -1 -1 -1 none none
    rule: "(null)" "^blueman-manager$" "(null)" 10 (null) 0 0 1  -1 -1 -1 -1 none none
    rule: "(null)" "^Xfce4-taskmanager$" "(null)" 10 (null) 0 0 1  -1 -1 -1 -1 none none
    rule: "(null)" "^easytag$" "(null)" 9 (null) 0 0 1  -1 -1 -1 -1 none none
    rule: "(null)" "^Slack$" "(null)" 9 (null) 0 0 1  -1 -1 -1 -1 none none
    rule: "(null)" "^emacs$" "(null)" 8 (null) 0 0 1  -1 -1 -1 -1 none none
    rule: "(null)" "^subl$" "(null)" 8 (null) 0 0 1  -1 -1 -1 -1 none none
    rule: "(null)" "^mpv$" "(null)" 7 (null) 0 0 1  -1 -1 -1 -1 none none
    rule: "(null)" "^thunar$" "(null)" 7 (null) 0 0 1  -1 -1 -1 -1 none none
    rule: "(null)" "^ncmpcpp$" "(null)" 6 (null) 0 0 1  -1 -1 -1 -1 none none
    rule: "(null)" "^SoulseekQt$" "(null)" 3 (null) 0 0 1  -1 -1 -1 -1 none none
    rule: "(null)" "^transmission-gtk$" "(null)" 3 (null) 0 0 1  -1 -1 -1 -1 none none
    rule: "(null)" "^alacritty$" "(null)" 2 (null) 0 0 1  -1 -1 -1 -1 none none
    rule: "(null)" "^St$" "(null)" 2 (null) 0 0 1  -1 -1 -1 -1 none none
    rule: "(null)" "^Surf$" "(null)" 1 (null) 0 0 1  -1 -1 -1 -1 none none
    rule: "(null)" "^Qutebrowser$" "(null)" 1 (null) 0 0 1  -1 -1 -1 -1 none none
    rule: "(null)" "^Firefox$" "(null)" 1 (null) 0 0 1  -1 -1 -1 -1 none none
    rule: "(null)" "^stickyterm$" "(null)" -1 (null) 1 1 0  -1 -1 1280 720 none none
    rule: "^scratchpad$" "^st$" "(null)" -1 (null) 1 0 0  -1 -1 150 40 none none
    rule: "^open files$" "^google-chrome$" "(null)" -1 (null) 1 0 0  -1 -1 1280 720 none none
    rule: "(null)" "^(scratchpad|nitrogen|MuPDF|File-roller|GPick|Xfce4-appearance-settings|mpv|sxiv|ncmpcpp|pavucontrol|steam|blueman-manager|lxappearance)$" "(null)" -1 (nu
    ll) 1 0 0  -1 -1 -1 -1 none none
    rule: "(null)" "^pavucontrol$" "(null)" -1 2 0 0 0  -1 -1 -1 -1 none none
    rule: "(null)" "^gpick$" "(null)" -1 2 0 0 0  -1 -1 -1 -1 none none
    rule: "(null)" "^mpv$" "(null)" -1 2 0 0 0  -1 -1 -1 -1 none none
    rule: "(null)" "^gimp-2.10$" "(null)" -1 1 0 0 0  -1 -1 -1 -1 none none
    rule: "(null)" "^chromium$" "(null)" -1 1 0 0 0  -1 -1 -1 -1 none none
    

    With two bars (33px)

    # globals - key: value ...
    numws: 10
    smart_border: 1
    smart_gap: 1
    focus_urgent: 1
    focus_mouse: 1
    focus_open: 1
    tile_hints: 0
    tile_tohead: 0
    win_minxy: 10
    win_minwh: 50
    
    # width outer_width focus urgent unfocus outer_focus outer_urgent outer_unfocus
    border: 5 3 0xff6699cc 0xffee5555 0xff444444 0xff222222 0xff222222 0xff222222
    
    # number:name:layout ...
    workspaces: 1::dwindle *2::dwindle 3::dwindle 4::dwindle 5::dwindle 6::dwindle 7::dwindle 8::dwindle 9::dwindle 10::dwindle
        # number:name active_window nmaster nstack msplit ssplit gappx padl padr padt padb
        1: 0x00000000 1 3 0.50 0.50 10 0 0 0 0
        2: 0x03800006 1 3 0.50 0.50 10 0 0 0 0
        3: 0x00000000 1 3 0.50 0.50 10 0 0 0 0
        4: 0x00000000 1 3 0.50 0.50 10 0 0 0 0
        5: 0x00000000 1 3 0.50 0.50 10 0 0 0 0
        6: 0x00000000 1 3 0.50 0.50 10 0 0 0 0
        7: 0x02200007 1 3 0.50 0.50 10 0 0 0 0
        8: 0x00000000 1 3 0.50 0.50 10 0 0 0 0
        9: 0x00000000 1 3 0.50 0.50 10 0 0 0 0
        10: 0x00000000 1 3 0.50 0.50 50 200 200 100 100
    
    # number:name:workspace ...
    monitors: 1:DisplayPort-0:7 *1:HDMI-A-0:2
        # number:name active_window x y width height wx wy wwidth wheight
        1:DisplayPort-0 0x02200007 3840 0 3840 2160 3840 0 3840 2160
        1:HDMI-A-0 0x03800006 0 0 3840 2160 0 37 3840 2123
    
    # id:workspace ...
    windows: 0x0300002c:2 *0x03800006:2 0x02200007:7 0x03400007:7
        # id title class instance ws x y width height bw hoff float full fakefull fixed stick urgent callback trans_id
        0x0300002c "natemaia / dk / issues / #9 - Bug when running bar in on dual monitors in vertical orientation — Bitbucket — Mozilla Firefox" "firefox" "Navigator" 2 0 37 3840 2123 5 0 0 0 0 0 0 0 none 0x00000000
        0x03800006 "dkcmd status type=full num=1 > dkcmd1.txt /home/dobbie" "scratchpad" "st" 2 1440 808 960 578 5 0 1 0 0 0 0 0 none 0x00000000
        0x02200007 "dobbie" "Thunar" "thunar" 7 3850 10 1895 2130 5 0 0 0 0 0 0 0 none 0x00000000
        0x03400007 "dkcmd.txt - /home/dobbie - Geany" "Geany" "geany" 7 5765 10 1895 2130 5 0 0 0 0 0 0 0 none 0x00000000
    
    # title class instance workspace monitor float stick focus callback x y width height xgrav ygrav
    rule: "(null)" "^firefox$" "(null)" -1 HDMI-A-0 0 0 0  -1 -1 -1 -1 none none
    rule: "(null)" "^steam$" "(null)" 10 (null) 0 0 1  -1 -1 -1 -1 none none
    rule: "(null)" "^nitrogen$" "(null)" 10 (null) 0 0 1  -1 -1 -1 -1 none none
    rule: "(null)" "^blueman-manager$" "(null)" 10 (null) 0 0 1  -1 -1 -1 -1 none none
    rule: "(null)" "^Xfce4-taskmanager$" "(null)" 10 (null) 0 0 1  -1 -1 -1 -1 none none
    rule: "(null)" "^easytag$" "(null)" 9 (null) 0 0 1  -1 -1 -1 -1 none none
    rule: "(null)" "^Slack$" "(null)" 9 (null) 0 0 1  -1 -1 -1 -1 none none
    rule: "(null)" "^emacs$" "(null)" 8 (null) 0 0 1  -1 -1 -1 -1 none none
    rule: "(null)" "^subl$" "(null)" 8 (null) 0 0 1  -1 -1 -1 -1 none none
    rule: "(null)" "^mpv$" "(null)" 7 (null) 0 0 1  -1 -1 -1 -1 none none
    rule: "(null)" "^thunar$" "(null)" 7 (null) 0 0 1  -1 -1 -1 -1 none none
    rule: "(null)" "^ncmpcpp$" "(null)" 6 (null) 0 0 1  -1 -1 -1 -1 none none
    rule: "(null)" "^SoulseekQt$" "(null)" 3 (null) 0 0 1  -1 -1 -1 -1 none none
    rule: "(null)" "^transmission-gtk$" "(null)" 3 (null) 0 0 1  -1 -1 -1 -1 none none
    rule: "(null)" "^alacritty$" "(null)" 2 (null) 0 0 1  -1 -1 -1 -1 none none
    rule: "(null)" "^St$" "(null)" 2 (null) 0 0 1  -1 -1 -1 -1 none none
    rule: "(null)" "^Surf$" "(null)" 1 (null) 0 0 1  -1 -1 -1 -1 none none
    rule: "(null)" "^Qutebrowser$" "(null)" 1 (null) 0 0 1  -1 -1 -1 -1 none none
    rule: "(null)" "^Firefox$" "(null)" 1 (null) 0 0 1  -1 -1 -1 -1 none none
    rule: "(null)" "^stickyterm$" "(null)" -1 (null) 1 1 0  -1 -1 1280 720 none none
    rule: "^scratchpad$" "^st$" "(null)" -1 (null) 1 0 0  -1 -1 150 40 none none
    rule: "^open files$" "^google-chrome$" "(null)" -1 (null) 1 0 0  -1 -1 1280 720 none none
    rule: "(null)" "^(scratchpad|nitrogen|MuPDF|File-roller|GPick|Xfce4-appearance-settings|mpv|sxiv|ncmpcpp|pavucontrol|steam|blueman-manager|lxappearance)$" "(null)" -1 (null) 1 0 0  -1 -1 -1 -1 none none
    rule: "(null)" "^pavucontrol$" "(null)" -1 2 0 0 0  -1 -1 -1 -1 none none
    rule: "(null)" "^gpick$" "(null)" -1 2 0 0 0  -1 -1 -1 -1 none none
    rule: "(null)" "^mpv$" "(null)" -1 2 0 0 0  -1 -1 -1 -1 none none
    rule: "(null)" "^gimp-2.10$" "(null)" -1 1 0 0 0  -1 -1 -1 -1 none none
    rule: "(null)" "^chromium$" "(null)" -1 1 0 0 0  -1 -1 -1 -1 none none
    

    With no bars:

    # globals - key: value ...
    numws: 10
    smart_border: 1
    smart_gap: 1
    focus_urgent: 1
    focus_mouse: 1
    focus_open: 1
    tile_hints: 0
    tile_tohead: 0
    win_minxy: 10
    win_minwh: 50
    
    # width outer_width focus urgent unfocus outer_focus outer_urgent outer_unfocus
    border: 5 3 0xff6699cc 0xffee5555 0xff444444 0xff222222 0xff222222 0xff222222
    
    # number:name:layout ...
    workspaces: 1::dwindle *2::dwindle 3::dwindle 4::dwindle 5::dwindle 6::dwindle 7::dwindle 8::dwindle 9::dwindle 10::dwindle
        # number:name active_window nmaster nstack msplit ssplit gappx padl padr padt padb
        1: 0x00000000 1 3 0.50 0.50 10 0 0 0 0
        2: 0x03800006 1 3 0.50 0.50 10 0 0 0 0
        3: 0x00000000 1 3 0.50 0.50 10 0 0 0 0
        4: 0x00000000 1 3 0.50 0.50 10 0 0 0 0
        5: 0x00000000 1 3 0.50 0.50 10 0 0 0 0
        6: 0x00000000 1 3 0.50 0.50 10 0 0 0 0
        7: 0x02200007 1 3 0.50 0.50 10 0 0 0 0
        8: 0x00000000 1 3 0.50 0.50 10 0 0 0 0
        9: 0x00000000 1 3 0.50 0.50 10 0 0 0 0
        10: 0x00000000 1 3 0.50 0.50 50 200 200 100 100
    
    # number:name:workspace ...
    monitors: 1:DisplayPort-0:7 *1:HDMI-A-0:2
        # number:name active_window x y width height wx wy wwidth wheight
        1:DisplayPort-0 0x02200007 3840 0 3840 2160 3840 0 3840 2160
        1:HDMI-A-0 0x03800006 0 0 3840 2160 0 0 3840 2160
    
    # id:workspace ...
    windows: 0x0300002c:2 *0x03800006:2 0x02200007:7 0x03400007:7
        # id title class instance ws x y width height bw hoff float full fakefull fixed stick urgent callback trans_id
        0x0300002c "natemaia / dk / issues / #9 - Bug when running bar in on dual monitors in vertical orientation — Bitbucket — Mozilla Firefox" "firefox" "Navigator" 2 0 0 3840 2160 5 0 0 0 0 0 0 0 none 0x00000000
        0x03800006 "dkcmd status type=full num=1 > dkcmd2.txt /home/dobbie" "scratchpad" "st" 2 1440 808 960 578 5 0 1 0 0 0 0 0 none 0x00000000
        0x02200007 "dobbie" "Thunar" "thunar" 7 3850 10 1895 2130 5 0 0 0 0 0 0 0 none 0x00000000
        0x03400007 "dkcmd1.txt - /home/dobbie - Geany" "Geany" "geany" 7 5765 10 1895 2130 5 0 0 0 0 0 0 0 none 0x00000000
    
    # title class instance workspace monitor float stick focus callback x y width height xgrav ygrav
    rule: "(null)" "^firefox$" "(null)" -1 HDMI-A-0 0 0 0  -1 -1 -1 -1 none none
    rule: "(null)" "^steam$" "(null)" 10 (null) 0 0 1  -1 -1 -1 -1 none none
    rule: "(null)" "^nitrogen$" "(null)" 10 (null) 0 0 1  -1 -1 -1 -1 none none
    rule: "(null)" "^blueman-manager$" "(null)" 10 (null) 0 0 1  -1 -1 -1 -1 none none
    rule: "(null)" "^Xfce4-taskmanager$" "(null)" 10 (null) 0 0 1  -1 -1 -1 -1 none none
    rule: "(null)" "^easytag$" "(null)" 9 (null) 0 0 1  -1 -1 -1 -1 none none
    rule: "(null)" "^Slack$" "(null)" 9 (null) 0 0 1  -1 -1 -1 -1 none none
    rule: "(null)" "^emacs$" "(null)" 8 (null) 0 0 1  -1 -1 -1 -1 none none
    rule: "(null)" "^subl$" "(null)" 8 (null) 0 0 1  -1 -1 -1 -1 none none
    rule: "(null)" "^mpv$" "(null)" 7 (null) 0 0 1  -1 -1 -1 -1 none none
    rule: "(null)" "^thunar$" "(null)" 7 (null) 0 0 1  -1 -1 -1 -1 none none
    rule: "(null)" "^ncmpcpp$" "(null)" 6 (null) 0 0 1  -1 -1 -1 -1 none none
    rule: "(null)" "^SoulseekQt$" "(null)" 3 (null) 0 0 1  -1 -1 -1 -1 none none
    rule: "(null)" "^transmission-gtk$" "(null)" 3 (null) 0 0 1  -1 -1 -1 -1 none none
    rule: "(null)" "^alacritty$" "(null)" 2 (null) 0 0 1  -1 -1 -1 -1 none none
    rule: "(null)" "^St$" "(null)" 2 (null) 0 0 1  -1 -1 -1 -1 none none
    rule: "(null)" "^Surf$" "(null)" 1 (null) 0 0 1  -1 -1 -1 -1 none none
    rule: "(null)" "^Qutebrowser$" "(null)" 1 (null) 0 0 1  -1 -1 -1 -1 none none
    rule: "(null)" "^Firefox$" "(null)" 1 (null) 0 0 1  -1 -1 -1 -1 none none
    rule: "(null)" "^stickyterm$" "(null)" -1 (null) 1 1 0  -1 -1 1280 720 none none
    rule: "^scratchpad$" "^st$" "(null)" -1 (null) 1 0 0  -1 -1 150 40 none none
    rule: "^open files$" "^google-chrome$" "(null)" -1 (null) 1 0 0  -1 -1 1280 720 none none
    rule: "(null)" "^(scratchpad|nitrogen|MuPDF|File-roller|GPick|Xfce4-appearance-settings|mpv|sxiv|ncmpcpp|pavucontrol|steam|blueman-manager|lxappearance)$" "(null)" -1 (null) 1 0 0  -1 -1 -1 -1 none none
    rule: "(null)" "^pavucontrol$" "(null)" -1 2 0 0 0  -1 -1 -1 -1 none none
    rule: "(null)" "^gpick$" "(null)" -1 2 0 0 0  -1 -1 -1 -1 none none
    rule: "(null)" "^mpv$" "(null)" -1 2 0 0 0  -1 -1 -1 -1 none none
    rule: "(null)" "^gimp-2.10$" "(null)" -1 1 0 0 0  -1 -1 -1 -1 none none
    rule: "(null)" "^chromium$" "(null)" -1 1 0 0 0  -1 -1 -1 -1 none none
    

    xrandr output:

    Screen 0: minimum 320 x 200, current 7680 x 2160, maximum 16384 x 16384
    DisplayPort-0 connected 3840x2160+3840+0 (normal left inverted right x axis y axis) 697mm x 392mm
       3840x2160     60.00*+  29.98  
       1920x2160     59.99  
       2560x1440     59.95  
       1920x1200     60.00  
       1920x1080     60.00    60.00    50.00    59.94  
       1600x1200     60.00  
       1680x1050     59.95  
       1280x1024     75.02    60.02  
       1440x900      59.89  
       1280x960      60.00  
       1280x800      60.00  
       1280x720      60.00    50.00    59.94  
       1024x768      75.03    70.07    60.00  
       832x624       74.55  
       800x600       72.19    75.00    60.32    56.25  
       720x576       50.00  
       720x480       60.00    59.94  
       640x480       75.00    72.81    66.67    60.00    59.94  
       720x400       70.08  
    HDMI-A-0 connected primary 3840x2160+0+0 (normal left inverted right x axis y axis) 697mm x 392mm
       3840x2160     60.00*+  60.00    50.00    59.94    30.00    25.00    24.00    29.97    23.98    29.98  
       1920x2160     59.99  
       2560x1440     59.95  
       1920x1200     60.00  
       1920x1080     60.00    60.00    50.00    59.94  
       1600x1200     60.00  
       1680x1050     59.88  
       1280x1024     75.02    60.02  
       1440x900      59.90  
       1280x960      60.00  
       1280x800      60.00  
       1280x720      60.00    50.00    59.94  
       1024x768      75.03    70.07    60.00  
       832x624       74.55  
       800x600       72.19    75.00    60.32    56.25  
       720x576       50.00  
       720x480       60.00    59.94  
       640x480       75.00    72.81    66.67    60.00    59.94  
       720x400       70.08  
    DVI-D-0 disconnected (normal left inverted right x axis y axis)
    

  7. doug davis

    xrandr

    Screen 0: minimum 8 x 8, current 3840 x 1080, maximum 32767 x 32767
    HDMI1 connected primary 1920x1080+0+0 (normal left inverted right x axis y axis) 530mm x 300mm
       1920x1080     60.00*+  50.00    59.94  
       1920x1080i    60.00    50.00    59.94  
       1600x1200     60.00  
       1600x900      60.00  
       1280x1024     75.02    60.02  
       1152x864      75.00  
       1280x720      60.00    50.00    59.94  
       1024x768      75.03    60.00  
       800x600       75.00    60.32  
       720x576       50.00  
       720x576i      50.00  
       720x480       60.00    59.94  
       720x480i      60.00    59.94  
       640x480       75.00    60.00    59.94  
       720x400       70.08  
    VGA1 connected 1920x1080+1920+0 (normal left inverted right x axis y axis) 530mm x 300mm
       1920x1080     60.00*+
       1680x1050     59.95  
       1600x900      60.00  
       1280x1024     60.02  
       1440x900      59.89  
       1280x800      59.81  
       1280x720      60.00  
       1024x768      60.00  
       800x600       60.32  
       640x480       59.94  
       720x400       70.08  
    VIRTUAL1 disconnected (normal left inverted right x axis y axis)
    

  8. doug davis

    One bar, working, 20px height

    # globals - key: value ...
    numws: 10
    smart_border: 1
    smart_gap: 1
    focus_urgent: 1
    focus_mouse: 0
    focus_open: 1
    tile_hints: 0
    tile_tohead: 0
    win_minxy: 10
    win_minwh: 50
    
    # width outer_width focus urgent unfocus outer_focus outer_urgent outer_unfocus
    border: 3 1 0xff333333 0xffb32323 0xff333333 0xff333333 0xffb32323 0xff333333
    
    # number:name:layout ...
    workspaces: 1:1:tile 2:2:tile 3:3:tile 4:4:tile 5:5:tile *6:6:tile 7:7:dwindle 8:8:spiral 9:9:float 10:10:grid
            # number:name active_window nmaster nstack msplit ssplit gappx padl padr padt padb
            1:1 0x01600003 1 3 0.55 0.50 0 0 0 0 0
            2:2 0x00000000 1 3 0.55 0.50 0 0 0 0 0
            3:3 0x00000000 1 3 0.55 0.50 0 0 0 0 0
            4:4 0x00c0002b 1 3 0.55 0.50 0 0 0 0 0
            5:5 0x00000000 1 3 0.55 0.50 0 0 0 0 0
            6:6 0x0120000c 1 3 0.55 0.50 6 4 4 4 4
            7:7 0x00000000 1 3 0.55 0.50 6 4 4 4 0
            8:8 0x00000000 1 3 0.55 0.50 6 4 4 4 0
            9:9 0x00000000 1 3 0.55 0.50 0 0 0 0 0
            10:10 0x00000000 1 3 0.55 0.50 12 4 4 4 4
    
    # number:name:workspace ...
    monitors: 1:HDMI1:4 *2:VGA1:6
            # number:name active_window x y width height wx wy wwidth wheight
            1:HDMI1 0x00c0002b 0 0 1920 1080 0 21 1920 1059
            2:VGA1 0x0120000c 1920 0 1920 1080 1920 0 1920 1080
    
    # id:workspace ...
    windows: 0x01600003:1 0x00c0002b:4 *0x0120000c:6
            # id title class instance ws x y width height bw hoff float full fakefull fixed stick urgent callback trans_id
            0x01600003 "BucketPass7531 • - Sublime Text" "Subl4" "subl4" 1 0 21 1920 1059 3 0 0 0 0 0 0 0 none 0x00000000
            0x00c0002b "natemaia / dk / issues / #9 - Bug when running bar in on dual monitors in vertical orientation — Bitbucket — Mozilla Firefox" "Firefox" "Navigator" 4 0 21 1920 1059 3 0 0 0 0 0 0 0 none 0x00000000
            0x0120000c "uxterm" "UXTerm" "xterm" 6 1924 4 1912 1072 3 0 0 0 0 0 0 0 none 0x00000000
    
    # title class instance workspace monitor float stick focus callback x y width height xgrav ygrav
    rule: "(null)" "^(brave|brave-browser|chromium)$" "(null)" 4 (null) 0 0 1  -1 -1 -1 -1 none none
    rule: "(null)" "^firefox$" "(null)" 4 (null) 0 0 1  -1 -1 -1 -1 none none
    rule: "(null)" "^stickyterm$" "(null)" -1 (null) 1 1 0  -1 -1 1280 720 none none
    rule: "^open files$" "^google-chrome$" "(null)" -1 (null) 1 0 0  -1 -1 1280 720 none none
    rule: "(null)" "Sxiv$" "(null)" -1 (null) 1 0 0  -1 -1 -1 -1 none none
    rule: "(null)" "^(pavucontrol|transmission-gtk|steam|lxappearance|galculator|xcalc)$" "(null)" -1 (null) 1 0 0  -1 -1 -1 -1 none none
    rule: "(null)" "^mpv$" "^albumart$" -1 (null) 1 0 0 albumart -1 -1 -1 -1 none none
    rule: "(null)" "^gimp$" "(null)" 6 (null) 0 0 1  -1 -1 -1 -1 none none
    

  9. doug davis

    Both bars,

    # globals - key: value ...
    numws: 10
    smart_border: 1
    smart_gap: 1
    focus_urgent: 1
    focus_mouse: 0
    focus_open: 1
    tile_hints: 0
    tile_tohead: 0
    win_minxy: 10
    win_minwh: 50
    
    # width outer_width focus urgent unfocus outer_focus outer_urgent outer_unfocus
    border: 3 1 0xff333333 0xffb32323 0xff333333 0xff333333 0xffb32323 0xff333333
    
    # number:name:layout ...
    workspaces: 1:1:tile 2:2:tile 3:3:tile 4:4:tile 5:5:tile *6:6:tile 7:7:dwindle 8:8:spiral 9:9:float 10:10:grid
            # number:name active_window nmaster nstack msplit ssplit gappx padl padr padt padb
            1:1 0x0160000c 1 3 0.55 0.50 0 0 0 0 0
            2:2 0x00000000 1 3 0.55 0.50 0 0 0 0 0
            3:3 0x00000000 1 3 0.55 0.50 0 0 0 0 0
            4:4 0x00c0002b 1 3 0.55 0.50 0 0 0 0 0
            5:5 0x00000000 1 3 0.55 0.50 0 0 0 0 0
            6:6 0x0120000c 1 3 0.55 0.50 6 4 4 4 4
            7:7 0x00000000 1 3 0.55 0.50 6 4 4 4 0
            8:8 0x00000000 1 3 0.55 0.50 6 4 4 4 0
            9:9 0x00000000 1 3 0.55 0.50 0 0 0 0 0
            10:10 0x00000000 1 3 0.55 0.50 12 4 4 4 4
    
    # number:name:workspace ...
    monitors: 1:HDMI1:1 *2:VGA1:6
            # number:name active_window x y width height wx wy wwidth wheight
            1:HDMI1 0x0160000c 0 0 1920 1080 0 0 1920 1080
            2:VGA1 0x0120000c 1920 0 1920 1080 1920 21 1920 1059
    
    # id:workspace ...
    windows: 0x0160000c:1 0x00c0002b:4 *0x0120000c:6
            # id title class instance ws x y width height bw hoff float full fakefull fixed stick urgent callback trans_id
            0x0160000c "uxterm" "UXTerm" "xterm" 1 0 0 1920 1080 3 0 0 0 0 0 0 0 none 0x00000000
            0x00c0002b "natemaia / dk / issues / #9 - Bug when running bar in on dual monitors in vertical orientation — Bitbucket — Mozilla Firefox" "Firefox" "Navigator" 4 0 21 1920 1059 3 0 0 0 0 0 0 0 none 0x00000000
            0x0120000c "uxterm" "UXTerm" "xterm" 6 1924 25 1912 1051 3 0 0 0 0 0 0 0 none 0x00000000
    
    # title class instance workspace monitor float stick focus callback x y width height xgrav ygrav
    rule: "(null)" "^(brave|brave-browser|chromium)$" "(null)" 4 (null) 0 0 1  -1 -1 -1 -1 none none
    rule: "(null)" "^firefox$" "(null)" 4 (null) 0 0 1  -1 -1 -1 -1 none none
    rule: "(null)" "^stickyterm$" "(null)" -1 (null) 1 1 0  -1 -1 1280 720 none none
    rule: "^open files$" "^google-chrome$" "(null)" -1 (null) 1 0 0  -1 -1 1280 720 none none
    rule: "(null)" "Sxiv$" "(null)" -1 (null) 1 0 0  -1 -1 -1 -1 none none
    rule: "(null)" "^(pavucontrol|transmission-gtk|steam|lxappearance|galculator|xcalc)$" "(null)" -1 (null) 1 0 0  -1 -1 -1 -1 none none
    rule: "(null)" "^mpv$" "^albumart$" -1 (null) 1 0 0 albumart -1 -1 -1 -1 none none
    rule: "(null)" "^gimp$" "(null)" 6 (null) 0 0 1  -1 -1 -1 -1 none none
    

  10. Nate Maia repo owner

    I've done some work on the strut handling lately and included panel info in the status output.

    I'm not 100% sure there's not other issues with it I missed but anyone willing to test it out would be appreciated.

  11. Jon Sagotsky reporter

    Sorry for the delay - work has been busy again.

    Master looks good in a vertical position when the top screen is the primary one. Making the bottom screen primary still gives me issues when I launch a bar. The windows on the bar’s screen disappear when it’s launched and come back when I kill the bar.

    Here’s my status w/ bar.

    # globals - key: value ...
    numws: 10
    smart_border: 1
    smart_gap: 1
    focus_urgent: 1
    focus_mouse: 0
    focus_open: 1
    tile_hints: 0
    tile_tohead: 0
    win_minxy: 10
    win_minwh: 50
    
    # width outer_width focus urgent unfocus outer_focus outer_urgent outer_unfocus
    border: 2 1 0xff000000 0xffff5500 0xff222222 0xffcccccc 0xffff5500 0xff222222
    
    # number:name:layout ...
    workspaces: *1:1:tile 2:2:tile 3:3:tile 4:4:tile 5:5:tile 6:6:tile 7:7:tile 8:8:tile 9:9:tile 10:10:tile
        # number:name active_window nmaster nstack msplit ssplit gappx padl padr padt padb
        1:1 0x03a00002 1 3 0.50 0.50 10 0 0 0 0
        2:2 0x02400002 1 3 0.50 0.50 10 0 0 0 0
        3:3 0x05400002 1 3 0.50 0.50 10 0 0 0 0
        4:4 0x02800002 1 3 0.50 0.50 10 0 0 0 0
        5:5 0x00c00002 1 3 0.50 0.50 10 0 0 0 0
        6:6 0x00000000 1 3 0.50 0.50 10 0 0 0 0
        7:7 0x05e00002 1 3 0.50 0.50 10 0 0 0 0
        8:8 0x00000000 1 3 0.50 0.50 10 0 0 0 0
        9:9 0x00000000 1 3 0.50 0.50 10 0 0 0 0
        10:10 0x00000000 1 3 0.50 0.50 10 0 0 0 0
    
    # number:name:workspace ...
    monitors: 1:eDP-1:7 *2:DP-1-1.1:1
        # number:name active_window x y width height wx wy wwidth wheight
        1:eDP-1 0x05e00002 0 1080 1920 1080 0 2183 1920 -23
        2:DP-1-1.1 0x03a00002 0 0 1920 1080 0 0 1920 1080
    
    # id:workspace ...
    windows: 0x0340002b:1 0x03600007:1 *0x03a00002:1 0x02400002:2 0x05400002:3 0x02800002:4 0x00c00002:5 0x05e00002:7
        # id title class instance ws x y width height bw hoff float full fakefull fixed stick urgent callback trans_id
        0x0340002b "Re: [Bitbucket] Issue #9: Bug when running bar in on dual monitors in vertical orientation (natemaia/dk) - sagotsky@gmail.com - Gmail — Mozilla Firefox" "firefox" "Navigator" 1 10 10 941 1056 2 0 0 0 0 0 0 0 none 0x00000000
        0x03600007 "Screen Layout Editor" "Arandr" "arandr" 1 965 10 941 521 2 0 0 0 0 0 0 0 none 0x00000000
        0x03a00002 "Alacritty" "Alacritty" "Alacritty" 1 965 545 941 521 2 0 0 0 0 0 0 0 none 0x00000000
        0x02400002 "The Groundhogs - Cherry Red - 2003 Remastered Version" "Spotify" "spotify" 2 0 2159 1920 1 2 0 0 0 0 0 0 0 none 0x00000000
        0x05400002 "Alacritty" "Alacritty" "Alacritty" 3 0 2159 1920 1 2 0 0 0 0 0 0 0 none 0x00000000
        0x02800002 "sashimi zsh" "Alacritty" "Alacritty" 4 0 2159 1920 1 2 0 0 0 0 0 0 0 none 0x00000000
        0x00c00002 "Slack | Threads | ezCater" "Slack" "slack" 5 0 23 1920 1057 2 0 0 0 0 0 0 0 none 0x00000000
        0x05e00002 "Alacritty" "Alacritty" "Alacritty" 7 0 2159 1920 1 2 0 0 0 0 0 0 0 none 0x00000000
    
    # title class instance workspace monitor float stick focus callback x y width height xgrav ygrav
    rule: "^zoom$" "(null)" "(null)" 10 (null) 0 0 0  -1 -1 -1 -1 none none
    rule: "^Zoom Cloud Meetings" "(null)" "(null)" 10 (null) 0 0 0  -1 -1 -1 -1 none none
    rule: "^Zoom Meetingx$" "(null)" "(null)" 10 (null) 0 0 0  -1 -1 -1 -1 none none
    rule: "^Zoom Meeting$" "(null)" "(null)" 10 (null) 0 0 0  -1 -1 -1 -1 none none
    rule: "^Zoom - Free Account$" "(null)" "(null)" 10 (null) 0 0 0  -1 -1 -1 -1 none none
    rule: "(null)" "^Slack$" "(null)" 5 (null) 0 0 0  -1 -1 -1 -1 none none
    rule: "(null)" "^Broken$" "(null)" 2 (null) 0 0 0  -1 -1 -1 -1 none none
    rule: "(null)" "^Firefox$" "(null)" 1 (null) 0 0 0  -1 -1 -1 -1 none none
    
    # id:monitor ...
    panels: 0x02200003:DP-1-1.1 0x00a00001:eDP-1
        # id monitor strut_left strut_right strut_top strut_bottom
        0x02200003 DP-1-1.1 0 0 0 0
        0x00a00001 eDP-1 0 0 1103 0
    

  12. Nate Maia repo owner

    @Jon Sagotsky Hmm that's very strange but I'm not sure if it's something I'm doing wrong or if it's the bar. The struts are the issue and these are set by the bar you can see at the bottom there is

    panels: 0x02200003:DP-1-1.1 0x00a00001:eDP-1
        # id monitor strut_left strut_right strut_top strut_bottom
        0x02200003 DP-1-1.1 0 0 0 0
        0x00a00001 eDP-1 0 0 1103 0
    

    the one on eDP-1 has a top strut of 1103 which is why one of the monitor areas it completely consumed 1080 - 1103 = -23 which is the monitor window area (wheight) in your output

    monitors: 1:eDP-1:7 *2:DP-1-1.1:1
        # number:name active_window x y width height wx wy wwidth wheight
        1:eDP-1 0x05e00002 0 1080 1920 1080 0 2183 1920 -23
        2:DP-1-1.1 0x03a00002 0 0 1920 1080 0 0 1920 1080
    

    Can I get the xprop output from the bars, once run you can just click on the bar area and it should output something like

    % xprop
    WM_STATE(WM_STATE):
                    window state: Normal
                    icon window: 0x0
    WM_CLASS(STRING) = "lemonbar", "Bar"
    WM_NAME(STRING) = "bar"
    _NET_WM_STRUT(CARDINAL) = 0, 0, 34, 0
    _NET_WM_STRUT_PARTIAL(CARDINAL) = 0, 0, 34, 0, 0, 0, 0, 0, 0, 3839, 0, 0
    _NET_WM_DESKTOP(CARDINAL) = 4294967295
    _NET_WM_STATE(ATOM) = _NET_WM_STATE_STICKY, _NET_WM_STATE_ABOVE
    _NET_WM_WINDOW_TYPE(ATOM) = _NET_WM_WINDOW_TYPE_DOCK
    
  13. Nate Maia repo owner

    General improvements/fixes and large cleanup

    • Add experimental test for panel strut issue, if the panel's struts differ from it's geometry we make them match. See issue #9

    • Add more storage fields for panels and output in status: class, instance, x, y, width, and height

    • One shot status calls no longer require malloc/free, compress and simplify cmdstatus()

    • Improve performance and reduce flicker by removing needless calls to refresh() when settings and state haven't changed

    • Avoid running through some commands when they're not suitable e.g. cmdcycle() with one or less tiled windows

    • Make functions that aren't used elsewhere static if possible

    • Re-order command and subcommand lists in config.h placing more frequently used ones first to improve access times

    • General cleanup, remove some extern variables

    → <<cset f395f4fb78a1>>

  14. Jon Sagotsky reporter

    Latest master looks good!

    I pulled f395f4fb78a114414ac075f14c0dc10e33b3b21e this morning. Yambar shows up on whichever screen is set to primary. I think it feels snappier too, but I read the improve perofrmance note and that may have biased my judgment.

    Here’s the dkcmd status and xprop on yambar with things working:

    # globals - key: value ...
    numws: 10
    smart_border: 1
    smart_gap: 1
    focus_urgent: 1
    focus_mouse: 0
    focus_open: 1
    tile_hints: 0
    tile_tohead: 0
    win_minxy: 10
    win_minwh: 50
    
    # width outer_width focus urgent unfocus outer_focus outer_urgent outer_unfocus
    border: 2 1 0xff000000 0xffff5500 0xff222222 0xffcccccc 0xffff5500 0xff222222
    
    # number:name:layout ...
    workspaces: 1:1:tile *2:2:tile 3:3:tile 4:4:tile 5:5:tile 6:6:tile 7:7:tile 8:8:tile 9:9:tile 10:10:tile
        # number:name active_window nmaster nstack msplit ssplit gappx padl padr padt padb
        1:1 0x05600002 1 3 0.50 0.50 10 0 0 0 0
        2:2 0x00a00002 1 3 0.50 0.50 10 0 0 0 0
        3:3 0x00000000 1 3 0.50 0.50 10 0 0 0 0
        4:4 0x00000000 1 3 0.50 0.50 10 0 0 0 0
        5:5 0x00000000 1 3 0.50 0.50 10 0 0 0 0
        6:6 0x00000000 1 3 0.50 0.50 10 0 0 0 0
        7:7 0x00000000 1 3 0.50 0.50 10 0 0 0 0
        8:8 0x00000000 1 3 0.50 0.50 10 0 0 0 0
        9:9 0x00000000 1 3 0.50 0.50 10 0 0 0 0
        10:10 0x03800146 1 3 0.50 0.50 10 0 0 0 0
    
    # number:name:workspace ...
    monitors: 1:eDP-1:1 *2:DP-1-1.1:2
        # number:name active_window x y width height wx wy wwidth wheight
        1:eDP-1 0x05600002 0 1080 1920 1080 0 1103 1920 1057
        2:DP-1-1.1 0x00a00002 0 0 1920 1080 0 0 1920 1080
    
    # id:workspace ...
    windows: 0x03e00002:1 0x01200002:1 0x05600002:1 0x0100002b:2 *0x00a00002:2 0x05200007:2 0x03800146:10
        # id title class instance ws x y width height bw hoff float full fakefull fixed stick urgent callback trans_id
        0x03e00002 "killall dk" "Alacritty" "Alacritty" 1 10 1113 941 1033 2 0 0 0 0 0 0 0 none 0x00000000
        0x01200002 "Gong - Tomorrow Afternoon - Live" "Spotify" "spotify" 1 965 1113 941 509 2 0 0 0 0 0 0 0 none 0x00000000
        0x05600002 "sashimi nvim" "Alacritty" "Alacritty" 1 965 1636 941 510 2 0 0 0 0 0 0 0 none 0x00000000
        0x0100002b "Re: [Bitbucket] Issue #9: Bug when running bar in on dual monitors in vertical orientation (natemaia/dk) - sagotsky@gmail.com - Gmail — Mozilla Firefox" "firefox" "Navigator" 2 10 10 941 1056 2 0 0 0 0 0 0 0 none 0x00000000
        0x00a00002 "cat top-primary" "Alacritty" "Alacritty" 2 965 10 941 521 2 0 0 0 0 0 0 0 none 0x00000000
        0x05200007 "Screen Layout Editor" "Arandr" "arandr" 2 965 545 941 521 2 0 0 0 0 0 0 0 none 0x00000000
        0x03800146 "Zoom - Free Account" "zoom" "zoom" 10 965 1446 466 343 2 0 0 0 0 0 0 0 none 0x00000000
    
    # title class instance workspace monitor float stick focus callback x y width height xgrav ygrav
    rule: "^zoom$" "(null)" "(null)" 10 (null) 0 0 0  -1 -1 -1 -1 none none
    rule: "^Zoom Cloud Meetings" "(null)" "(null)" 10 (null) 0 0 0  -1 -1 -1 -1 none none
    rule: "^Zoom Meetingx$" "(null)" "(null)" 10 (null) 0 0 0  -1 -1 -1 -1 none none
    rule: "^Zoom Meeting$" "(null)" "(null)" 10 (null) 0 0 0  -1 -1 -1 -1 none none
    rule: "^Zoom - Free Account$" "(null)" "(null)" 10 (null) 0 0 0  -1 -1 -1 -1 none none
    rule: "(null)" "^Slack$" "(null)" 5 (null) 0 0 0  -1 -1 -1 -1 none none
    rule: "(null)" "^Broken$" "(null)" 2 (null) 0 0 0  -1 -1 -1 -1 none none
    rule: "(null)" "^Firefox$" "(null)" 1 (null) 0 0 0  -1 -1 -1 -1 none none
    
    # id:monitor ...
    panels: 0x03400003:DP-1-1.1 0x00600001:eDP-1
        # id class instance monitor x y width height left right top bottom
        0x03400003 "trayer" "panel" DP-1-1.1 1918 0 2 20 0 0 0 0
        0x00600001 "broken" "broken" eDP-1 0 1080 1920 23 0 0 23 0
    
    
    
    
    WM_STATE(WM_STATE):
            window state: Normal
            icon window: 0x0
    _NET_WM_STRUT_PARTIAL(CARDINAL) = 0, 0, 1103, 0, 0, 0, 0, 0, 0, 1919, 0, 0
    _NET_WM_STRUT(CARDINAL) = 0, 0, 1103, 0
    _NET_WM_DESKTOP(CARDINAL) = 4294967295
    _NET_WM_STATE(ATOM) = _NET_WM_STATE_ABOVE, _NET_WM_STATE_STICKY
    _NET_WM_WINDOW_TYPE(ATOM) = _NET_WM_WINDOW_TYPE_DOCK
    _NET_WM_PID(CARDINAL) = 2817304
    WM_NAME(STRING) = "yambar"
    

    From my POV, this ticket is resolvable. TY once again!

  15. Nate Maia repo owner

    No sweat and thank you for all the help.

    Looks like my shit-hack solution worked by just adjusting the struts to match the panel geometry but it still seems a bit borked to me - the struts reported by your panel are just wrong (why does it think it needs 1103 as the top strut?!?!)

    Regardless I'm glad I could do something about it but you should really report that as a bug to the maintainer(s) of yambar. The output provided here would be useful to them in determining the issue and I'd be happy to help.

    As for the snappiness I don't suspect it's really noticeable but there will be less flicker and less redraws when changing certain settings and the access time of many commands will be faster.

  16. Jon Sagotsky reporter

    Subscribed!

    TY for filing that with them, that’s some next level maintainership right there 🙂

  17. Nate Maia repo owner

    Going forward I'd suggest you find a different bar to use, yambar dev doesn't seem too concerned about spec violation in X11 (considering it's a 2 line change), I'll submit a PR for the issue to them but I don't plan of having hacky workarounds for shit bars in dk forever and it will be removed eventually regardless of yambar's interaction with it. If they don't want to support my shit I won't support their's, plain and simple. The freedesktop spec (ewmh) is not new nor is it hard to support, if you have an x11 backend that's wrong but you support it then fix it!.

    Rant aside, use a different bar, this is going nowhere quick.

  18. Jon Sagotsky reporter

    Yeah, their response was underwhelming to say the least. I wouldn’t have tried out yambar in the first place if they gave any indication x11 was in maintenance mode.

    Don’t feel obliged to keep the hacks around for my sake. I appreciate you digging into this one (and the others) but I hate to create tech debt in a decent codebase. I thought for sure the bug was going to be limited to dk because at the time I filed it I saw identical behavior in yambar and polybar. Oh well.

  19. Nate Maia repo owner

    Don't sweat it man, I'm a bit chapped but no biggie. I was hoping for a better response considering how simple it was. Things won't change in dk till I next get around to more updates.

    I can look into polybar as well if it was the same, Jaagr and Patrick are decent with responses to issues usually. There's always the chance that I'm just dumb and didn't understand but I'm fairly sure dk's handling of struts is correct.

    Edit: Polybar seems to be correct and shouldn't have issues (top/bottom struts are just the window height) https://github.com/polybar/polybar/blob/f488a889bc8012e7da714be7b9543254ac65cfc4/src/x11/window.cpp#L49 but please let me know if you do

    I think the issues you were having with polybar before we're 100% my fault because I wasn't calculating the struts correctly on multiple monitors but it should be fixed now and working as it should.

  20. Log in to comment