# This is an example WayVR panel configuration. It demonstrates all the capabilities of this module.
# looking to make changes?
# drop me in ~/.config/wlxoverlay/wayvr.yaml
#

version: 1

# If your gpu has some issues with zero-copy textures, you can set this option to "software".
#
# Possible options:
# "dmabuf": Use zero-copy texture access (from EGL to Vulkan) - no performance impact
# "software": Read pixel data to memory via glReadPixels() every time a content has been updated. Minor performance impact on large resolutions
blit_method: "dmabuf"

# Set to true if you want to make Wyland server instantly available.
# By default, WayVR starts only when it's needed.
# (this option is primarily used for remote starting external processes and development purposes)
run_compositor_at_start: false 

# Automatically close overlays with zero window count?
auto_hide: true

# For how long an overlay should be visible in case if there are no windows present? (in milliseconds, auto_hide needs to be enabled)
# This value shouldn't be set at 0, because some programs could re-initialize a window during startup (splash screens for example)
auto_hide_delay: 750

# In milliseconds
keyboard_repeat_delay: 200

# Chars per second
keyboard_repeat_rate: 50

# WayVR-compatible dashboard.
# For now, there is only one kind of dashboard with WayVR IPC support (WayVR Dashboard).
#
# Build instructions: https://github.com/olekolek1000/wayvr-dashboard
#
# exec: Executable path, for example "/home/USER/wayvr-dashboard/src-tauri/target/release/wayvr-dashboard"
# or just "wayvr-dashboard" if you have it installed from your package manager.
dashboard:
  exec: "wayvr-dashboard"
  args: ""
  env: []

displays:
  watch:
    width: 400
    height: 600
    scale: 0.4
    attach_to: "HandRight" # HandLeft, HandRight
    pos: [0.0, 0.0, 0.125]
    rotation: {axis: [1.0, 0.0, 0.0], angle: -45.0}
  disp1:
    width: 640
    height: 480
    primary: true # Required if you want to attach external processes (not spawned by WayVR itself) without WAYVR_DISPLAY_NAME set
  disp2:
    width: 1280
    height: 720
    scale: 2.0

catalogs:
  default_catalog:
    apps:
      - name: "Calc"
        target_display: "disp1"
        exec: "kcalc"
        env: ["FOO=bar"]
        shown_at_start: false

      - name: "htop"
        target_display: "watch"
        exec: "konsole"
        args: "-e htop"

      - name: "Browser"
        target_display: "disp2"
        exec: "cage"
        args: "chromium -- --incognito"
        
