Skip to content

CurtainExtension: Lightweight and Fast alternative to window manager on Cinnamon, initial release#8320

Merged
claudiux merged 2 commits intolinuxmint:masterfrom
AdvaitaSoni:CurtainExtension
Feb 15, 2026
Merged

CurtainExtension: Lightweight and Fast alternative to window manager on Cinnamon, initial release#8320
claudiux merged 2 commits intolinuxmint:masterfrom
AdvaitaSoni:CurtainExtension

Conversation

@AdvaitaSoni
Copy link
Contributor

Curtain Applet for Cinnamon

Introduction

The Curtain applet for Cinnamon is designed to be a lightweight,fast and easy to install and configure alternative to popular window managers. Essentially, it is aimed to completely navigate workspaces and windows using only the keyboard.

Checks done

  • passed the validation script
  • tested locally
  • tested on applications and mentioned usage in README.md
  • provided icon

Features

Workspace Management

Window Management

Other Settings

Configure your own hotkeys

Automatic Arrangement

See the applet status - See whether the extension is enabled or not, current workspace index, as well as total workspaces

Fully customizable Hotkeys

Preferences

Due to individual windows not following Curtain rules(please see README.md) ,it is advisable the following applications are preferred:

  • kitty over gnome-terminal

@AdvaitaSoni
Copy link
Contributor Author

Hey @claudiux, please review the PR whenever you are free. Thanks!!

@claudiux claudiux merged commit aae8aac into linuxmint:master Feb 15, 2026
1 check passed
@AdvaitaSoni
Copy link
Contributor Author

Thanks! once again

@claudiux
Copy link
Member

claudiux commented Feb 15, 2026

@AdvaitaSoni
Great applet!
Missing option: Do not create a new workspace when using <Super>T.
I have 4 workspaces. When I am on the 4th workspace and use <Super>T, I do not want to create a 5th, but switch to the 1st.

@mtwebster
Copy link
Member

This is an extension, not an applet, and should not have been approved.

@AdvaitaSoni
Copy link
Contributor Author

AdvaitaSoni commented Feb 15, 2026

This is an extension, not an applet, and should not have been approved.

@mtwebster Can you explain why it shouldn't be an applet? Originally i designed this to be an extension only but made it an applet because that way one can see the current and total workspaces

@mtwebster
Copy link
Member

You're using an applet simply as an entry point to replace/intercept core Cinnamon behavior. This can cause unintended side effects that result in confused users and confused bug reports, and is not stable from one Cinnamon release to the next.

We try to preserve third-party Applet and Desklet behavior across releases, even fixing them ourselves if there's something we just can't avoid. With extensions, we're not binding ourselves to this rule - when I'm making internal changes to Cinnamon I don't check if I'm breaking them.

One general issue I noticed - xlets should not override existing default keybindings (like super-l, -p, -s).

I'm not against this being an extension but I am against it being presented as an applet.

@AdvaitaSoni
Copy link
Contributor Author

You're using an applet simply as an entry point to replace/intercept core Cinnamon behavior. This can cause unintended side effects that result in confused users and confused bug reports, and is not stable from one Cinnamon release to the next.

We try to preserve third-party Applet and Desklet behavior across releases, even fixing them ourselves if there's something we just can't avoid. With extensions, we're not binding ourselves to this rule - when I'm making internal changes to Cinnamon I don't check if I'm breaking them.

One general issue I noticed - xlets should not override existing default keybindings (like super-l, -p, -s).

I'm not against this being an extension but I am against it being presented as an applet.

Understood @mtwebster. It makes sense that it may break from one cinnamon version to another, which violates the stability offered by Cinnamon(especially for Linux Mint users).
However this applet mostly uses APIs that have been part of the documentation for a long time. Also while I can't promise that I will be able to look after the applet itself, i do plan to mention the compatibility issues and their solutions.
And while I do overwrite some existing hotkeys, they are configurable by the user themselves and the whole point of applet is to use these hotkeys to do window management.

I have no problem with what you suggested however seeing the current and total workspaces on the panel is an essential experience to Curtain as a window manager. Here's some options i suggest:

Option 1

We remove this applet altogether and only use it as an extension. In this case the users will not be able to see the current and total workspaces as well as whether the extension is enabled or not.

Option 2

We remove the core functionality of the applet but it still shows the current and total workspaces but not the status of the extension

Option 3

We modify the panel from the extension itself. However this may cause even more confusion as user will think of it as an applet even thought it is an extension

Option 4

We follow option 2 but control the "enabled" status of the applet from the extension itself. - I don't know if it is possible or not though

Personally I think Option 4 sounds to be much better if we can achieve it. What are your thoughts?

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.

4 participants