-
Notifications
You must be signed in to change notification settings - Fork 770
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
Set _NET_FRAME_EXTENTS
based on border width
#5384
Set _NET_FRAME_EXTENTS
based on border width
#5384
Conversation
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
Hello, this PR hasn't received any review yet, is there a reason for that? Is there anything I could do to move it forward? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thank you for your PR and sorry for the delayed review.
- Please update the
release-notes/changes/
folder with a short description of what changed - Some tests here would be beneficial
- We should figure out a way to improve the tabbed situation. I played with your patch and it seems that if I set a custom border (e.g.
border pixel 50
) to a window and then make it tabbed the frame extents are still reporting50
even though the tabbed container has different borders
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
…net-frame-extents
Hello again, I currently don't have the bandwidth to finish the two remaining tasks here, sorry - I would either suggest that someone takes over or the PR is merged as is (if that is something acceptable) |
Any chance this will be merged ever? |
Sure, if somebody picks up the PR and addresses the problem with the tabbed/stacked windows. Since this has been stale for a while I am going to close it for now but please, do open up a follow up if you are interested. |
I'm very and very interested. But i'm afraid i don't have enough experience in such a big applications on C, and linux under-the-hood things. But I'm experienced developer in other directions. So if you could give me a list of links that would help further my understanding of the current architecture of the repository, and clarify what tests I would like to see, I would be happy to try to look into this issue. I’ve been looking for a long time for an open source project that I could join as a contributor on an ongoing basis. Perhaps this will be the first step) P.S. I'm too tired to translate from my native language, so there may be mistakes, I apologize for that |
@SimonBrandner I forked repo and installed patched version and cannot clearly understand where is the issue with tabbed mode.My flow is as follows:
|
Could you share a screenshot please? |
@SimonBrandner, sorry btw. I used your handle in my last comment by accident, i meant orestifl
Yes, it's ugly with such a big border size and frame closing by its body top border, but all borders and _NET_FRAME_EXTENTS are in sync |
Any updates? @orestisfl I have a lot of work to do next week. If possible, I would like to have time to make my contribution to the development of my favorite tiling manager before this moment, so any comments about tests and inconsistency of frame width in props and i3 state would be appreciated UPD: No need in comments about tests. Nailed it |
@orestisfl It would be great to get some additional info about this pr. Waiting for the answer |
I'm also seeing what the previous comments have mentioned wherein the windows in tabbed/stacked mode are rounded, and the tabs themselves are not as shown in the following screenshots (which, to me, seems fine and a big improvement). Re: the problem with Nautilus., If I understand correctly, I don't think that this is the fault of Nautilus, but instead the GTK theme. Prior to trying this patch, I noticed similar borders and disabled them via the GTK theme. I can try to dig up and send resources related to that if you are interested; however, for now, here's a screenshot of Nautilus running with this patch without such bars showing up. The one thing; however, I did notice is that sometimes with picom, when a single window takes up the whole screen, the borders appear to be the color of the background application (as shown in the following screenshots). This, however, could be a quirk of my setup. |
@ahfriedman I don't have the same issue of single app casting different color, maybe it's a setting in i3 config? Try tinkering with bolder colors, there are several active, inactive, focused etc. Could you send the fix for Nautilus? And the rounded title bar doesn't irritate me as I don't use them anyway, other than that I've been running this patch for over a month and didn't find any issues other than the one with tabbed and that's basically it |
Oh awesome! As it seems then that those bugs are resolved, I'd offer to try to help out writing the test cases needed to move the PR forward (after all, there are a few other simple features I'd be interested in trying to add to i3 as well), but having not contributed to i3 before, I'd have to look into how to go about that and see what's needed before committing. @DarkReaper231 Here's what I've found works for nautilus and other gtk apps. As it is tangential, I have it in a spoiler: GTK App Border FixPer https://github.com/i3/i3/issues/1655, I found that editing .window-frame {
box-shadow: 0 0 0 0;
margin: 0;
}
window decoration {
margin: 0;
padding: 0;
border: none;
} |
@ahfriedman unfortunately the fix didn't help, but I think I found the reason |
@ahfriedman I fixed it with some more CSS, specifically: window.solid-csd {
padding: 0; /* removes the padding */
border: none; /* removes the border */
box-shadow: none; /* removes the double border */
} |
Any updates on this pr? If I can help, just give me kinda "task") I'm newbie in contribution to opensource and need some guidance, but certainly can help |
I made a different PR for this (#5944) which actually sets the |
To follow up on my above comment, the issue with the borders changing color when a single app is full screen has to do with enabling With respect to the window decorations in stacked/tabbed mode, while I don't think its a huge deal as is, for my own setup, I decided to create a fork which allows me to only draw borders on the bottom of decorations. Its something that I'd wanted to do anyhow (eg, just being able to either specify a single color for all four sides as is or the ability to specify a color for top, bottom, left, and right—much as we can in css); however, I think it works nicely with the rounded corners setup. Given i3 is in the state of fix bugs over introduce new features, I don't imagine that a PR which introduces the ability to more granularly config borders would be accepted; however, if people are interested, I'd be happy to work on a PR which does that properly (as opposed to my fork which currently hardcodes how to draw the borders). In either case, I thought I'd throw the idea out there in case anyone else is looking at this PR and would like a similar setup. |
Fixes #4292
While this doesn't work perfectly in the tabbed layout, I think it still does much better than the broken thing we have now
I attempted to make the tabbed layout look nicer but I don't know how to actually do that, to be honest
Would this solution be acceptable?