jnsh / arc-theme

A flat theme with transparent elements (actively maintained fork)
GNU General Public License v3.0
902 stars 77 forks source link

gtk3: Background color for Nautilus path-bar styling #96

Closed drakkar1969 closed 2 years ago

drakkar1969 commented 3 years ago

After the recent commit (https://github.com/jnsh/arc-theme/commit/b7436798324759606d49a956b40a2d85925ad4b1) to compensate for the new position of the search button in the Nautilus header, the path bar looks (IMO) a little bit out of place, with only a border.

Would you consider adding a semi-transparent background color to the path bar? E.g.:

pathbar-dark

pathbar-light

These are just quick mockups, using transparentize(white, 0.95) as background for the dark version, and transparentize(black, 0.95) for the light version - in the .nautilus-window .path-bar-box code block

jnsh commented 3 years ago

I agree that the border-only design looks a bit odd. That was just the best solution that I could think of when nautilus first updated the path bar to it's current state. I had initially used background for the whole pathbar, but that didn't work correctly with semi-transparent button backgrounds IIRC..

I recently noticed the path bar on baobab, and I've been considering implementing something similar for nautilus: screenshot

drakkar1969 commented 3 years ago

Indeed something like that would work - just needs some background to make it visually identifiable (although the only thing weird with the baobab styling is the missing left border on hover - but easily corrected)

jnsh commented 3 years ago

Progress update on this. I've been trying to think good solution but I think this can't be fixed properly without upstream changes.

To follow Arc path-bar design, both the buttons, and the overlapping .path-bar-box area should use the existing Arc path-bar button styling. The problem is that the buttons in Arc have a semi-transparent background, and that the path-bar buttons are drawn inside the .path-bar-box. Applying the transparent button styling to both the buttons and the box results in two overlapping transparent button backgrounds, which looks very wrong.

This could be fixed by adding additional "fake button" inside the .path-bar-box, that would fill the horizontal space next to the buttons, and could be styled individually.

I think this should relatively easy to implement in nautilus, but I'm currently very busy with trying to get the GTK4 port finished before next GNOME release. Then there's always the chance that nautilus devs wouldn't approve the change for some reason.

jnsh commented 2 years ago

Sorry about the delay with this. I finally applied a kinda-hacky solution that should work for now.

Apparently Nautilus changed the path-bar again for the GTK4 port, and this shouldn't be an issue at least with its current design. They are still using GTK3 with the forthcoming GNOME 42 though.