LXQT Keyboard Shortcuts for snapping windows

Hello, I'm having an issue where I am unable to figure out how to set keyboard shortcuts in LXQT for window placement (tiling). In KDE, I could hold Meta + (left or right arrow) to snap the window to the left or right half of the screen, and if possible I would like to be able to do that in LXQT! I've searched on Google and the forums with not much luck, and hoping that you can help me!

[john@garuda-lxqt ~]$ sudo garuda-inxi
System:
  Kernel: 5.18.5-zen1-1-zen arch: x86_64 bits: 64 compiler: gcc v: 12.1.0
    parameters: BOOT_IMAGE=/@/boot/vmlinuz-linux-zen
    root=UUID=d9b93398-b0ca-4cb4-b120-0599008ced8c rw rootflags=subvol=@
    quiet quiet splash rd.udev.log_priority=3 vt.global_cursor_default=0
    loglevel=3
  Desktop: LXQt v: 1.1.0 tk: Qt v: 5.15.5 info: cairo-dock, lxqt-panel
    wm: kwin_x11 dm: SDDM Distro: Garuda Linux base: Arch Linux
Machine:
  Type: Desktop Mobo: ASRock model: B550 Phantom Gaming-ITX/ax serial: N/A
    UEFI: American Megatrends LLC. v: P2.20 date: 08/05/2021
CPU:
  Info: model: AMD Ryzen 5 5500 socket: AM4 bits: 64 type: MT MCP arch: Zen 3
    gen: 4 built: 2021-22 process: TSMC n7 (7nm) family: 0x19 (25)
    model-id: 0x50 (80) stepping: 0 microcode: 0xA50000C
  Topology: cpus: 1x cores: 6 tpc: 2 threads: 12 smt: enabled cache:
    L1: 384 KiB desc: d-6x32 KiB; i-6x32 KiB L2: 3 MiB desc: 6x512 KiB
    L3: 16 MiB desc: 1x16 MiB
  Speed (MHz): avg: 3600 min/max: 1400/4268 boost: enabled
    base/boost: 3600/4250 scaling: driver: acpi-cpufreq governor: performance
    volts: 1.4 V ext-clock: 100 MHz cores: 1: 3600 2: 3600 3: 3600 4: 3600
    5: 3600 6: 3600 7: 3600 8: 3600 9: 3600 10: 3600 11: 3600 12: 3600
    bogomips: 86235
  Flags: avx avx2 ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 sse4a ssse3 svm
  Vulnerabilities:
  Type: itlb_multihit status: Not affected
  Type: l1tf status: Not affected
  Type: mds status: Not affected
  Type: meltdown status: Not affected
  Type: mmio_stale_data status: Not affected
  Type: spec_store_bypass
    mitigation: Speculative Store Bypass disabled via prctl
  Type: spectre_v1
    mitigation: usercopy/swapgs barriers and __user pointer sanitization
  Type: spectre_v2 mitigation: Retpolines, IBPB: conditional, IBRS_FW,
    STIBP: always-on, RSB filling
  Type: srbds status: Not affected
  Type: tsx_async_abort status: Not affected
Graphics:
  Device-1: NVIDIA TU106 [GeForce RTX 2060 SUPER] vendor: Micro-Star MSI
    driver: nvidia v: 515.48.07 alternate: nouveau,nvidia_drm non-free: 515.xx+
    status: current (as of 2022-06) arch: Turing process: TSMC 12nm
    built: 2018-22 pcie: gen: 3 speed: 8 GT/s lanes: 16 bus-ID: 01:00.0
    chip-ID: 10de:1f06 class-ID: 0300
  Device-2: Creative Live! Cam Sync 1080p type: USB
    driver: snd-usb-audio,uvcvideo bus-ID: 7-1.2:3 chip-ID: 041e:409f
    class-ID: 0102 serial: <filter>
  Display: x11 server: X.Org v: 21.1.3 with: Xwayland v: 22.1.2
    compositor: kwin_x11 driver: X: loaded: nvidia unloaded: modesetting
    alternate: fbdev,nouveau,nv,vesa gpu: nvidia display-ID: :0 screens: 1
  Screen-1: 0 s-res: 1920x2160 s-dpi: 80 s-size: 609x686mm (23.98x27.01")
    s-diag: 917mm (36.11")
  Monitor-1: DP-2 pos: primary,bottom res: 1920x1080 dpi: 82
    size: 598x336mm (23.54x13.23") diag: 686mm (27.01") modes: N/A
  Monitor-2: HDMI-0 pos: primary,top res: 1920x1080 hz: 60 dpi: 102
    size: 480x270mm (18.9x10.63") diag: 551mm (21.68") modes: N/A
  Message: Unable to show GL data. Required tool glxinfo missing.
Audio:
  Device-1: NVIDIA TU106 High Definition Audio vendor: Micro-Star MSI
    driver: snd_hda_intel bus-ID: 7-1.2:3 v: kernel chip-ID: 041e:409f pcie:
    class-ID: 0102 gen: 3 serial: <filter> speed: 8 GT/s lanes: 16
    bus-ID: 01:00.1 chip-ID: 10de:10f9 class-ID: 0403
  Device-2: AMD Renoir Radeon High Definition Audio driver: snd_hda_intel
    v: kernel pcie: gen: 3 speed: 8 GT/s lanes: 16 link-max: gen: 4
    speed: 16 GT/s bus-ID: 08:00.1 chip-ID: 1002:1637 class-ID: 0403
  Device-3: AMD Family 17h/19h HD Audio vendor: ASRock
    driver: snd_hda_intel v: kernel pcie: gen: 3 speed: 8 GT/s lanes: 16
    link-max: gen: 4 speed: 16 GT/s bus-ID: 08:00.6 chip-ID: 1022:15e3
    class-ID: 0403
  Device-4: Creative Live! Cam Sync 1080p type: USB
    driver: snd-usb-audio,uvcvideo
  Sound Server-1: ALSA v: k5.18.5-zen1-1-zen running: yes
  Sound Server-2: PulseAudio v: 16.0 running: no
  Sound Server-3: PipeWire v: 0.3.52 running: yes
Network:
  Device-1: Intel Ethernet I225-V driver: igc v: kernel pcie: gen: 2
    speed: 5 GT/s lanes: 1 port: N/A bus-ID: 05:00.0 chip-ID: 8086:15f3
    class-ID: 0200
  IF: enp5s0 state: up speed: 1000 Mbps duplex: full mac: <filter>
  Device-2: Intel Wi-Fi 6 AX200 driver: N/A modules: iwlwifi pcie: gen: 2
    speed: 5 GT/s lanes: 1 bus-ID: 06:00.0 chip-ID: 8086:2723 class-ID: 0280
Bluetooth:
  Device-1: Intel AX200 Bluetooth type: USB driver: btusb v: 0.8
    bus-ID: 3-9:4 chip-ID: 8087:0029 class-ID: e001
  Report: bt-adapter ID: hci0 rfk-id: 0 state: down
    bt-service: enabled,running rfk-block: hardware: no software: no
    address: <filter>
Drives:
  Local Storage: total: 1.87 TiB used: 16.45 GiB (0.9%)
  ID-1: /dev/nvme0n1 maj-min: 259:5 vendor: Western Digital
    model: WD BLACK SN770 1TB size: 931.51 GiB block-size: physical: 512 B
    logical: 512 B speed: 63.2 Gb/s lanes: 4 type: SSD serial: <filter>
    rev: 731030WD temp: 41.9 C scheme: GPT
  SMART: yes health: PASSED on: 16 hrs cycles: 8
    read-units: 56,000 [28.6 GB] written-units: 158,522 [81.1 GB]
  ID-2: /dev/nvme1n1 maj-min: 259:0 vendor: Silicon Power
    model: SPCC M.2 PCIe SSD size: 953.87 GiB block-size: physical: 512 B
    logical: 512 B speed: 31.6 Gb/s lanes: 4 type: SSD serial: <filter>
    rev: SN07151 temp: 41.9 C scheme: GPT
  SMART: yes health: PASSED on: 56 hrs cycles: 34
    read-units: 1,360,341 [696 GB] written-units: 2,532,414 [1.29 TB]
  ID-3: /dev/sda maj-min: 8:0 type: USB vendor: PNY model: USB 2.0 FD
    size: 28.91 GiB block-size: physical: 512 B logical: 512 B type: N/A
    serial: <filter> rev: PMAP scheme: MBR
  SMART Message: Unknown USB bridge. Flash drive/Unsupported enclosure?
Partition:
  ID-1: / raw-size: 117.19 GiB size: 117.19 GiB (100.00%)
    used: 16.42 GiB (14.0%) fs: btrfs block-size: 4096 B dev: /dev/nvme0n1p3
    maj-min: 259:8
  ID-2: /boot/efi raw-size: 100 MiB size: 96 MiB (96.00%)
    used: 27.6 MiB (28.8%) fs: vfat block-size: 512 B dev: /dev/nvme1n1p1
    maj-min: 259:1
  ID-3: /home raw-size: 117.19 GiB size: 117.19 GiB (100.00%)
    used: 16.42 GiB (14.0%) fs: btrfs block-size: 4096 B dev: /dev/nvme0n1p3
    maj-min: 259:8
  ID-4: /var/log raw-size: 117.19 GiB size: 117.19 GiB (100.00%)
    used: 16.42 GiB (14.0%) fs: btrfs block-size: 4096 B dev: /dev/nvme0n1p3
    maj-min: 259:8
  ID-5: /var/tmp raw-size: 117.19 GiB size: 117.19 GiB (100.00%)
    used: 16.42 GiB (14.0%) fs: btrfs block-size: 4096 B dev: /dev/nvme0n1p3
    maj-min: 259:8
Swap:
  Kernel: swappiness: 133 (default 60) cache-pressure: 100 (default)
  ID-1: swap-1 type: zram size: 15.49 GiB used: 0 KiB (0.0%) priority: 100
    dev: /dev/zram0
Sensors:
  System Temperatures: cpu: N/A mobo: N/A gpu: nvidia temp: 41 C
  Fan Speeds (RPM): N/A gpu: nvidia fan: 31%
Info:
  Processes: 310 Uptime: 1h 14m wakeups: 0 Memory: 15.49 GiB
  used: 2.55 GiB (16.4%) Init: systemd v: 251 default: graphical
  tool: systemctl Compilers: gcc: 12.1.0 clang: 13.0.1 Packages: pacman: 1392
  lib: 344 Shell: garuda-inxi (sudo) default: Bash v: 5.1.16
  running-in: qterminal inxi: 3.3.18
Garuda (2.6.4-1):
  System install date:     2022-06-22
  Last full system update: 2022-06-22 ↻
  Is partially upgraded:   No                                                                                   
  Relevant software:       NetworkManager
  Windows dual boot:       Yes
  Snapshots:               Snapper
  Failed units:          

Thanks for that! I'll try to remember to remove that part in the future. :slightly_smiling_face:

1 Like

Always use "arch wiki" in your search engine :slight_smile:

https://wiki.archlinux.org/title/LXQt

IDK nothing about LXQt, use sway or i3wm :slight_smile:
Search in ~/.config for the config files to edit or make new key shortcuts.

2 Likes

So I checked the config file for kglobalshortcutsrc, and it seems that tiling is set to the proper keybinds, but they are nonfunctioning. Being as I am brand new to Arch, and even Garuda I'm fairly new, am I missing something completely obvious? :sweat_smile:

image

Yes :smiley:
LxQt uses Openbox as a Window Manager (WM), which is responsible for … windows placement/management.
Look into how to do it with Openbox utilities or editing config files.

3 Likes

Thank you!! Brand new to LXQT and was kind of lost. Lol trying to learn!

1 Like

This topic was automatically closed 2 days after the last reply. New replies are no longer allowed.