WillPower3309 / swayfx

SwayFX: Sway, but with eye candy!
MIT License
1.38k stars 56 forks source link

Advanced window decorations #23

Open RicArch97 opened 2 years ago

RicArch97 commented 2 years ago

Please fill out the following:

The ability to add button decorations to Sway's title bars. This can currently be:

Of course the usefulness of this would increase if a full floating layout was added, or basically just don't use any tiling layout. In that case maximizing windows could also be something to think about. That would turn Sway more into a dynamic window manager.

Here's some inspiration from Wayfire, though in this screenshot the buttons used are horrible. It would nice if you could provide button images in the config (and have some good default ones for fallback). 2022-09-08_19:49:03

Unfortunately I'm unable to work on this myself currently, but I think it's nice to put this out here at least for future reference.

Barbaross93 commented 1 year ago

I apologize if this is not quite the right spot to suggest this, but another thing that would be great are more customizable border options. I personally really like the sway-borders fork as it allows for using images as a border, making it possible for more creative ideas as what the borders should look like (personally a big fan of double borders myself).

Including/merging that fork here would be fantastic; but I have no idea how feasible that would be.

shaunsingh commented 1 year ago

I would be interested in working on this, it would go well with https://github.com/WillPower3309/swayfx/issues/97.

Would it make sense to go the same route? Using images to draw the decorations.

head-gardener commented 1 year ago

@shaunsingh I think there already is some code for decorations. If my judgement is correct, render.c refers to them as marks around line 701.

EDIT: apparently it's something else (check out swaymsg 'mark my-funky-mark'), but the general idea should be the same.

RicArch97 commented 1 year ago

This issue was specifically made for adding extra functionality to the titlebars, such as window buttons, maybe an app icon on the left side that is clickable, stuff like that. This is with the idea in mind that Sway could become a dynamic window manager, allowing for layouts, with floating being one of them.