Skip to content

Add custom tabbar titlebar controls and toolbar normalization#1800

Draft
haydara wants to merge 9 commits into
OtterBrowser:masterfrom
haydara:master
Draft

Add custom tabbar titlebar controls and toolbar normalization#1800
haydara wants to merge 9 commits into
OtterBrowser:masterfrom
haydara:master

Conversation

@haydara
Copy link
Copy Markdown

@haydara haydara commented May 10, 2026

  • Add custom window controls when tabs are shown in the titlebar
  • Place controls in the tabbar toolbar when it is docked on top
  • Move controls to the addressbar toolbar when the tabbar is docked elsewhere
  • Normalize tabbar toolbar sizing across top, bottom, left, and right dock areas
  • Keep toolbar normalization active even when custom decorations are disabled
  • Preserve native toolbar dragging and tab interactions

@Chiitoo
Copy link
Copy Markdown
Contributor

Chiitoo commented May 13, 2026

Was this intended to happen in

https://github.com/haydara/otter-browser/

I wonder?

If meant to happen here, there's certainly a bit to clean up with regards to them commits (those merge commits for example).

@haydara
Copy link
Copy Markdown
Author

haydara commented May 13, 2026

I have already merged it there, I thought it would be useful here also

@haydara haydara marked this pull request as draft May 14, 2026 11:02
@Chiitoo
Copy link
Copy Markdown
Contributor

Chiitoo commented May 14, 2026

Alright, in that case I would recommend cleaning up the commits a bit.

That is, in this pull request there should be no merge commits, but only the commit(s) related to the change being made.

You can "edit" this PR by force-pushing to the branch you are working on it from (usually force-pushing is good to avoid, but this is one good use-case for it).

With that in mind, it is usually best to make pull requests from a working branch of some kind, not from master, since it make things quite a bit more complicated and will include anything else one is doing in the master branch.

Also, some of the file headers look a bit odd:

* Otter Browser: Web browser controlled by the user, not vice-versa.
* Copyright (C) 2026 Water Phoenix Browser contributors

I don't really have any comments for the actual feature, and I think that will mostly be up to @Emdek anyblue. :]

In any case, thank you for your contribution so far!

@haydara
Copy link
Copy Markdown
Author

haydara commented May 14, 2026

Alright, in that case I would recommend cleaning up the commits a bit.

That is, in this pull request there should be no merge commits, but only the commit(s) related to the change being made.

You can "edit" this PR by force-pushing to the branch you are working on it from (usually force-pushing is good to avoid, but this is one good use-case for it).

With that in mind, it is usually best to make pull requests from a working branch of some kind, not from master, since it make things quite a bit more complicated and will include anything else one is doing in the master branch.

Also, some of the file headers look a bit odd:

* Otter Browser: Web browser controlled by the user, not vice-versa.
* Copyright (C) 2026 Water Phoenix Browser contributors

I don't really have any comments for the actual feature, and I think that will mostly be up to @Emdek anyblue. :]

In any case, thank you for your contribution so far!

Thank you for the tip, I have just marked this PR as a draft, I have just found and fixed some ui issues here, I think I will test it for a week before I mark it ready again

@Emdek
Copy link
Copy Markdown
Member

Emdek commented May 29, 2026

@haydara, the way how to configure such feature needs some discussion first, since it is pretty much the only blocker for this feature…
Stuff like:

  • how to toggle it (cases like borderless option in some window managers, that disable window decorations);
  • if user should have some control over placement of window controls;
  • how to draw them and properly integrate with host OS (for example Windows has some APIs for that);
  • the issue of how to allow to properly drag the window around etc.

AFAIR there were solution where such feature would be applied only to maximized windows or something like that.
In short, we need to solve these issues first, so we won't have to break compatibility later.

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.

3 participants