Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Hide the titlebar #7409

Open
bl4ckb0ne opened this issue Jan 30, 2023 · 24 comments · May be fixed by #8101
Open

Hide the titlebar #7409

bl4ckb0ne opened this issue Jan 30, 2023 · 24 comments · May be fixed by #8101
Labels
enhancement New feature or incremental improvement window-management Configuring and arranging toplevels
Milestone

Comments

@bl4ckb0ne
Copy link
Contributor

Hiding the titlebar is done via a workaround to set the font size to 0 (see #7092 and #7408)

Font size 0 should not be allowed, instead there should be a proper way to hide the titlebars done via the config file.

Ref:

#7350, #6946, #5050 and #1286

@bl4ckb0ne bl4ckb0ne added the enhancement New feature or incremental improvement label Jan 30, 2023
@emersion emersion added the window-management Configuring and arranging toplevels label Jan 30, 2023
rbuchberger added a commit to rbuchberger/dotfiles that referenced this issue Feb 1, 2023
They added a check for 0 font size but no way to truly disable title
bars. Setting font size to a low but nonzero value gets through the
check but still hides the titlebars.

They're working on a proper method to accomplish this -
swaywm/sway#7409
@Inginn

This comment was marked as spam.

@WhyNotHugo
Copy link
Contributor

I'd love to do this on a per-client basis. Some clients already draw functional titlebars, so I'd want to disable titlebars for those specifically.

Given that this needs to be designed from scratch, does applying it on a per-client basis sound reasonable? The all-windows use case can be covered by simply:

for_window * titlebar hide

@rpigott
Copy link
Member

rpigott commented Feb 20, 2023

The client can already indicate when they draw their own decorations with xdg_decoration. Only allowed for floating clients atm (otherwise we enforce ssd), though I don't remember why.

EDIT: tbh I'm not sure what the intended difference between border normal and border csd is right now anyway. We could probably be more permissive in allowing csd for single containers.

@MarcioGCosta
Copy link

Setting the default_border as pixel 0 i was able to get rid of the title bar

I am running version 1.8.2 in void

@rpigott
Copy link
Member

rpigott commented Feb 26, 2023

We restored this workaround in 1.8.2 until a proper feature is added.

@hashworks
Copy link

A feature similar to smart_gaps would be great as well: smart_titlebar on would only show the titlebar when two or more windows are visible in a workspace.

@tmpm697

This comment was marked as off-topic.

@emersion emersion added this to the 1.9 milestone Jul 24, 2023
@ShalokShalom
Copy link

A feature similar to smart_gaps would be great as well: smart_titlebar on would only show the titlebar when two or more windows are visible in a workspace.

You can do that with
hide_edge_borders --i3 smart

@hashworks
Copy link

Hm, that doesn't work for me. hide_edge_borders --i3 smart still shows a title bar even when only one tab is open. I guess I'll open a bug report later.

@ShalokShalom
Copy link

I have it with:

gaps outer 0
gaps inner 0
hide_edge_borders --i3 smart
workspace_layout tabbed

Thats the entire config, and it works for me ™️

@tmpm697
Copy link

tmpm697 commented Aug 10, 2023

I have it with:

gaps outer 0
gaps inner 0
hide_edge_borders --i3 smart
workspace_layout tabbed

Thats the entire config, and it works for me ™️

there's still title to distinguish between tabs, I find no way to get rid of titlebar completely execpt this font hack: font pango:monospace 0

@GrabbenD
Copy link

GrabbenD commented Aug 23, 2023

Is there any workaround which can highlight the active windows & hide the title bar?

Here's what I've tried:

  • font pango:monospace 0 shows Invalid font size
  • font pango:monospace 0.001 leaves a small bar above every window
  • default_border none removes titlebar but doesn't highlight which window is active

@tmpm697
Copy link

tmpm697 commented Aug 23, 2023

Is there any workaround which can highlight the active windows & hide the title bar?

Here's what I've tried:

  • font pango:monospace 0 shows Invalid font size
  • font pango:monospace 0.001 leaves a small bar above every window
  • default_border none removes titlebar but doesn't highlight which window is active

try this:

font pango:monospace 0
default_border none

worked for me

@GrabbenD
Copy link

font pango:monospace 0
default_border none

This doesn't work with 1.9.0-dev (git) due to Invalid font size. Is there a new method?

@emersion
Copy link
Member

No. This issue is about adding a new method. If this issue stays unresolved by the time 1.9 ships, there will be no more way to hide the titlebar.

@ShalokShalom
Copy link

So make this a blocker?

@emersion
Copy link
Member

No. It's up to people who care about this feature to submit a PR.

@tmpm697
Copy link

tmpm697 commented Aug 23, 2023

@emersion why clean it so fast as we haven't yet come up with an PR?

I have two layouts, one that adheres with that font trick, one curently use (was named unuse).

@iguanajuice
Copy link

A feature similar to smart_gaps would be great as well: smart_titlebar on would only show the titlebar when two or more windows are visible in a workspace.

You can do that with hide_edge_borders --i3 smart

TYSM! I was always bothered by sway not behaving the same way as i3 when it comes to having no borders when using tabs, and this makes sway behave closer to i3. This really should be the default behavior, since sway is usually pretty obsessive over being 1-to-1 with i3.

@emersion
Copy link
Member

emersion commented Dec 4, 2023

Reminder that a new Sway release is upcoming and this feature will go away unless someone steps up.

nim65s added a commit to nim65s/sway that referenced this issue Dec 29, 2023
nim65s added a commit to nim65s/sway that referenced this issue Dec 29, 2023
nim65s added a commit to nim65s/sway that referenced this issue Dec 29, 2023
Hide the titleb bar on containers with one child
nim65s added a commit to nim65s/sway that referenced this issue Dec 29, 2023
Hide the titleb bar on containers with one child
nim65s added a commit to nim65s/sway that referenced this issue Dec 29, 2023
Hide the titleb bar on containers with one child
@nim65s
Copy link

nim65s commented Dec 29, 2023

Hi,

I did try something in #7889. It's not exactly a proper fix for this issue, but it provide a way to hide the titlebar when there is only one window, no matter which layout is configured.

Feedback is welcome :)

nim65s added a commit to nim65s/sway that referenced this issue Jan 8, 2024
to hide the title bar on workspaces with one child, fix swaywm#7409
@neuromagus
Copy link

added option 'disable_titlebar' in master branch #8026 (comment)

@y0nei

This comment was marked as off-topic.

@neuromagus
Copy link

neuromagus commented Mar 2, 2024

I'm done here.
So, I don't know how merging works here and how long it will take for the corrected version to come out if my pull request is accepted, but I understand how titlebar in tiled WM can be annoying. Really!..

The spirit of DWM lives on, gentlemen. Here is a separate hack patch for Sway 1.9 and instruction ;)

nim65s added a commit to nim65s/sway that referenced this issue Mar 15, 2024
to hide the title bar on workspaces with one child, fix swaywm#7409
svalaskevicius pushed a commit to svalaskevicius/sway that referenced this issue Mar 18, 2024
to hide the title bar on workspaces with one child, fix swaywm#7409
svalaskevicius pushed a commit to svalaskevicius/sway that referenced this issue Mar 21, 2024
to hide the title bar on workspaces with one child, fix swaywm#7409
lanodan added a commit to lanodan/sway that referenced this issue Apr 3, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or incremental improvement window-management Configuring and arranging toplevels
Development

Successfully merging a pull request may close this issue.