Skip to content

fix(hyprland): fix Slack and Telegram keybindings - #1293

Merged
shunkakinoki merged 1 commit into
mainfrom
fix/hyprland-keybindings
Mar 30, 2026
Merged

fix(hyprland): fix Slack and Telegram keybindings#1293
shunkakinoki merged 1 commit into
mainfrom
fix/hyprland-keybindings

Conversation

@shunkakinoki

@shunkakinoki shunkakinoki commented Mar 30, 2026

Copy link
Copy Markdown
Owner

Summary

  • Super+S (Slack): Always open new window instead of focus-or-launch
  • Super+Shift+T (Telegram): Fix modifier from ALT SHIFT to $mod SHIFT, and fix binary name from telegram-desktop to Telegram

Test plan

  • Verify Super+S opens a new Slack window
  • Verify Super+Shift+T launches Telegram

🤖 Generated with Claude Code


Summary by cubic

Fix Hyprland keybindings so Slack and Telegram launch reliably.

  • Bug Fixes
    • Super+S now runs slack directly, always opening a new window.
    • Super+Shift+T now uses $mod (not ALT) and calls Telegram (correct binary).

Written for commit 563bb9a. Summary will update on new commits.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Copilot AI review requested due to automatic review settings March 30, 2026 06:05
@mesa-dot-dev

mesa-dot-dev Bot commented Mar 30, 2026

Copy link
Copy Markdown

You do not have enough credits to review this pull request. Please purchase more credits to continue.

@coderabbitai

coderabbitai Bot commented Mar 30, 2026

Copy link
Copy Markdown

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 68a0600b-271c-483c-8aa8-09f9abab10b9

📥 Commits

Reviewing files that changed from the base of the PR and between c2c4d33 and 563bb9a.

📒 Files selected for processing (1)
  • config/hyprland/hyprland.conf

📝 Walkthrough

Summary by CodeRabbit

  • Chores
    • Updated application launcher hotkeys in system configuration. Modified keybindings for Telegram and Slack with simplified launch behavior, removing conditional focus logic.

Walkthrough

Modified Hyprland keybindings in the configuration file: changed the Telegram launcher from ALT+SHIFT+T to $mod+SHIFT+T with updated executable label, and simplified the Slack keybinding from conditional focus-or-launch logic to a direct exec command.

Changes

Cohort / File(s) Summary
Hyprland Configuration
config/hyprland/hyprland.conf
Updated Telegram keybinding modifier and label ($mod+SHIFT+T → Telegram). Simplified Slack keybinding by removing conditional class-based focus logic and using direct exec command.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~8 minutes

Possibly related PRs

Suggested labels

bug

Poem

🐰 The keys they changed, now cleaner flow,
Slack launches swift, no checks to know,
Telegram hops to a new command,
Hotkeys refined across the land!

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Title check ✅ Passed The title 'fix(hyprland): fix Slack and Telegram keybindings' directly and accurately summarizes the main changes in the pull request, which are fixes to the keybindings for Slack and Telegram applications.
Description check ✅ Passed The description provides relevant context for the changeset, detailing the specific fixes to Slack and Telegram keybindings with test plans and rationale for the changes.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch fix/hyprland-keybindings

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@mesa-dot-dev

mesa-dot-dev Bot commented Mar 30, 2026

Copy link
Copy Markdown

Mesa Description

TL;DR

Fixed Hyprland keybindings for Slack and Telegram to ensure correct application launching behavior.

What changed?

  • Super+S (Slack): Always open new window instead of focus-or-launch
  • Super+Shift+T (Telegram): Fix modifier from ALT SHIFT to $mod SHIFT, and fix binary name from telegram-desktop to Telegram

Description generated by Mesa. Update settings

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request updates the application launch hotkeys in the Hyprland configuration, specifically changing the Telegram binding and simplifying the Slack binding by removing the window focus check. Feedback suggests using gtk-launch for both Telegram and Slack to ensure consistency with other bindings and improve robustness by utilizing desktop files.

# =============================================================================
bind = $mod, T, exec, ghostty
bind = ALT SHIFT, T, exec, telegram-desktop
bind = $mod SHIFT, T, exec, Telegram

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

For consistency with how other applications like 1Password (line 233) and Signal (line 234) are launched, consider using gtk-launch. This is generally more robust as it uses the application's .desktop file instead of relying on an executable in the PATH.

The binary name Telegram is also unusual; the executable is typically telegram-desktop. Using gtk-launch with the correct desktop file name (e.g., telegramdesktop) would resolve this ambiguity.

bind = $mod SHIFT, T, exec, gtk-launch telegramdesktop

bind = $mod SHIFT, T, exec, Telegram
bind = $mod, G, exec, hyprctl clients -j | grep -q '"class": "google-chrome"' && hyprctl dispatch focuswindow class:google-chrome || google-chrome-stable
bind = $mod, S, exec, hyprctl clients -j | grep -q '"class": "Slack"' && hyprctl dispatch focuswindow class:Slack || slack
bind = $mod, S, exec, slack

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

For consistency with other application launchers in this file (e.g., lines 233 and 234), consider using gtk-launch to start Slack. This would make the launch method uniform across your application bindings.

bind = $mod, S, exec, gtk-launch slack

@cubic-dev-ai cubic-dev-ai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No issues found across 1 file

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Updates Hyprland application launch keybindings to adjust how Slack and Telegram are launched from the window manager config.

Changes:

  • Change Telegram binding to use $mod SHIFT+T and update the executed command.
  • Simplify Slack binding to always execute Slack rather than focus-or-launch.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

# =============================================================================
bind = $mod, T, exec, ghostty
bind = ALT SHIFT, T, exec, telegram-desktop
bind = $mod SHIFT, T, exec, Telegram

Copilot AI Mar 30, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Telegram is likely not the executable provided by this repo’s installed package set. home-manager/packages/default.nix includes telegram-desktop, and this file previously used telegram-desktop; switching to Telegram may make the keybinding a no-op on fresh setups. Consider using the actual installed binary (telegram-desktop) or a stable desktop entry via gtk-launch if that’s the intended target.

Suggested change
bind = $mod SHIFT, T, exec, Telegram
bind = $mod SHIFT, T, exec, telegram-desktop

Copilot uses AI. Check for mistakes.
bind = $mod SHIFT, T, exec, Telegram
bind = $mod, G, exec, hyprctl clients -j | grep -q '"class": "google-chrome"' && hyprctl dispatch focuswindow class:google-chrome || google-chrome-stable
bind = $mod, S, exec, hyprctl clients -j | grep -q '"class": "Slack"' && hyprctl dispatch focuswindow class:Slack || slack
bind = $mod, S, exec, slack

Copilot AI Mar 30, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

PR description says Super+S should “always open a new Slack window”, but this binding now just runs slack without any flag/command to force a new window. If Slack reuses the existing instance (common for Electron apps), this won’t meet the stated behavior; consider invoking Slack with an explicit new-window option or an alternative command that guarantees a new window.

Copilot uses AI. Check for mistakes.
bind = $mod SHIFT, T, exec, Telegram
bind = $mod, G, exec, hyprctl clients -j | grep -q '"class": "google-chrome"' && hyprctl dispatch focuswindow class:google-chrome || google-chrome-stable
bind = $mod, S, exec, hyprctl clients -j | grep -q '"class": "Slack"' && hyprctl dispatch focuswindow class:Slack || slack
bind = $mod, S, exec, slack

Copilot AI Mar 30, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This change makes Super+S no longer a focus-or-launch binding, but earlier in this file there’s a comment explicitly recommending “Super+G/S/D focus-or-launch bindings” (around lines 183–185). Update that comment to reflect the new intended behavior for Super+S to avoid future confusion.

Copilot uses AI. Check for mistakes.
@shunkakinoki
shunkakinoki merged commit 6380fed into main Mar 30, 2026
42 checks passed
@shunkakinoki
shunkakinoki deleted the fix/hyprland-keybindings branch March 30, 2026 08:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants