win32ss / supermium

Chromium fork for Windows XP/2003 and up
https://win32subsystem.live/supermium/
BSD 3-Clause "New" or "Revised" License
2.23k stars 74 forks source link

Old Feature Request: Readd "UI Layout" option that was removed in Chromium 71 #2

Closed InterLinked1 closed 8 months ago

InterLinked1 commented 1 year ago

I was going to call this a "new feature" request, but it's really an "old feature" that I'm wondering if it's possible to revive.

As you may know, I am still using Iron version 70, which is almost 5 years old at this point, because Google dropped support for the traditional UI of many years after that update (I think with 69, it was no longer the default, but 71 removed the flag for it altogether, which prompted a huge uproar among users at the time. Most of the users probably switched browsers then or grumbled a while and moved on, but I never did either. I did write an extension that eased the pain for a while[1], but thanks to the evil nullish coalescing and optional chaining operators, which can't be polyfilled, things are increasingly broken (including GitHub, which just broke even more recently, to the point that you absolutely cannot use Chromium version 70 at all with GitHub anymore).

I'm wondering if you would consider reintroducing flag into this fork, since this is yet another reason that some people are using older browsers. It should be as simple as reversing the diff that removed from the option, from some time prior to Oct-Dec 2018, though I'm not exactly sure which one it is. The option was "UI Layout for the browser's top chrome":

https://www.digitaltrends.com/computing/you-no-longer-can-use-old-chrome-ui/ https://www.computerworld.com/article/3331156/google-yanks-option-to-restore-chromes-older-ui-users-decry-ugly-new-look.html https://old.reddit.com/r/chrome/comments/a8h1nr/is_there_a_way_to_go_back_to_the_old_ui_on/ https://old.reddit.com/r/chrome/comments/a3gnds/chrome_71_awful_ui_changes/

It'd be really great to have a browser that has the last 5 years of security and performance updates, and also will continue to work great on Windows 7 and older OSes for the forseeable future. I can't use Pale/New Moon, as they're just too dang slow compared to Chromium unfortunately, at least on my machines.

Thanks!

[1] https://github.com/InterLinked1/chromefill

K4sum1 commented 1 year ago

I'd love to see a Chromium 48 styled UI on any modern browser, but for now I've been using Waterfox with the compact style and Wavefox with the option 10 tabs enabled (was previously called Chrome legacy or similar). ScreenShot_20230512003835

InterLinked1 commented 1 year ago

I believe this is the commit that removed the old UI: https://github.com/chromium/chromium/commit/d7742835a968dae51c23493654e971c6eb361c9a

The new flag is still present so hopefully this would be simple to revert.

Found by trawling the history here: https://github.com/chromium/chromium/commits/508f935ab6a969b12da6e543c695f206050adec1?after=508f935ab6a969b12da6e543c695f206050adec1+4609&branch=508f935ab6a969b12da6e543c695f206050adec1&path%5B%5D=chrome&path%5B%5D=browser&path%5B%5D=flag_descriptions.cc&qualified_name=508f935ab6a969b12da6e543c695f206050adec1

InterLinked1 commented 1 year ago

@win32ss Any thoughts on this request from you? Is this not something you'd want in this fork, or is this just too complicated to tackle right now? I'm not a Chromium developer but would be good to have some context on what might be needed to move this forward in case there's some way I can help.

win32ss commented 1 year ago

I have received further requests for older UI features through private channels since. I haven't been able to address them due to structural issues with the 32 bit build of Supermium, but now that I re-introduced the old titlebar, I suppose that it would be appropriate to re-introduce other old elements like the ones you mentioned.

FasterMars16 commented 1 year ago

@win32ss Any updates on this situation? I really hope you bring back the trapezoid tabs design for this fork, I really miss the old tabs design and the new Material themes don't really go well with the Windows 7 look, and it is impossible to use Chrome 70 as it doesn't support many websites, and a plugin by @InterLinked1 existed but it stopped working, I would like to use this option again.

InterLinked1 commented 1 year ago

@win32ss Any updates on this situation? I really hope you bring back the trapezoid tabs design for this fork, I really miss the old tabs design and the new Material themes don't really go well with the Windows 7 look, and it is impossible to use Chrome 70 as it doesn't support many websites, and a plugin by @InterLinked1 existed but it stopped working, I would like to use this option again.

The plugin still exists, but unfortunately the evil nullish coalescing and optional chaining operators are so prevalent with so many sites that, by my estimate, at least half of commonly used sites now have issues or don't load, even with the extension. For that reason, it's no longer practical to use, and in the past year or so I've had to use a newer version of Chrome in parallel for many things. About a week ago, after nearly five years, sadly I stopped using Chromium 70 and now have Chrome 109, managed by Group Policy, on my machine. For now, this works with everything.

FasterMars16 commented 1 year ago

@win32ss Any updates on this situation? I really hope you bring back the trapezoid tabs design for this fork, I really miss the old tabs design and the new Material themes don't really go well with the Windows 7 look, and it is impossible to use Chrome 70 as it doesn't support many websites, and a plugin by @InterLinked1 existed but it stopped working, I would like to use this option again.

The plugin still exists, but unfortunately the evil nullish coalescing and optional chaining operators are so prevalent with so many sites that, by my estimate, at least half of commonly used sites now have issues or don't load, even with the extension. For that reason, it's no longer practical to use, and in the past year or so I've had to use a newer version of Chrome in parallel for many things. About a week ago, after nearly five years, sadly I stopped using Chromium 70 and now have Chrome 109, managed by Group Policy, on my machine. For now, this works with everything.

Dang, is there really no way for getting around that? I tried to use chromefill but it took nearly 10 minutes to load GitHub, but it worked really well for the most part, other than some buttons not working

InterLinked1 commented 1 year ago

@win32ss Any updates on this situation? I really hope you bring back the trapezoid tabs design for this fork, I really miss the old tabs design and the new Material themes don't really go well with the Windows 7 look, and it is impossible to use Chrome 70 as it doesn't support many websites, and a plugin by @InterLinked1 existed but it stopped working, I would like to use this option again.

The plugin still exists, but unfortunately the evil nullish coalescing and optional chaining operators are so prevalent with so many sites that, by my estimate, at least half of commonly used sites now have issues or don't load, even with the extension. For that reason, it's no longer practical to use, and in the past year or so I've had to use a newer version of Chrome in parallel for many things. About a week ago, after nearly five years, sadly I stopped using Chromium 70 and now have Chrome 109, managed by Group Policy, on my machine. For now, this works with everything.

Dang, is there really no way for getting around that? I tried to use chromefill but it took nearly 10 minutes to load GitHub, but it worked really well for the most part, other than some buttons not working

GitHub is one such broken site, with both of the evil operators. The site will never work properly in Chromium 70.

You could try using a version of the extension before the (poorly implemented) auto-transpiling capability that doesn't really work well: https://github.com/InterLinked1/chromefill/tree/e2c1ee5c5b5e52505540bb0fd59800d97ffb92fc

The site won't be very functional, but it shouldn't try to keep loading the site for a while. It's gotten worse over time, at some point over the summer, due to the new GitHub UI, you can no longer do anything but look at the top-level page, you can't even look at code anymore on the site.

FasterMars16 commented 1 year ago

@win32ss Any updates on this situation? I really hope you bring back the trapezoid tabs design for this fork, I really miss the old tabs design and the new Material themes don't really go well with the Windows 7 look, and it is impossible to use Chrome 70 as it doesn't support many websites, and a plugin by @InterLinked1 existed but it stopped working, I would like to use this option again.

The plugin still exists, but unfortunately the evil nullish coalescing and optional chaining operators are so prevalent with so many sites that, by my estimate, at least half of commonly used sites now have issues or don't load, even with the extension. For that reason, it's no longer practical to use, and in the past year or so I've had to use a newer version of Chrome in parallel for many things. About a week ago, after nearly five years, sadly I stopped using Chromium 70 and now have Chrome 109, managed by Group Policy, on my machine. For now, this works with everything.

Dang, is there really no way for getting around that? I tried to use chromefill but it took nearly 10 minutes to load GitHub, but it worked really well for the most part, other than some buttons not working

GitHub is one such broken site, with both of the evil operators. The site will never work properly in Chromium 70.

You could try using a version of the extension before the (poorly implemented) auto-transpiling capability that doesn't really work well: https://github.com/InterLinked1/chromefill/tree/e2c1ee5c5b5e52505540bb0fd59800d97ffb92fc

The site won't be very functional, but it shouldn't try to keep loading the site for a while. It's gotten worse over time, at some point over the summer, due to the new GitHub UI, you can no longer do anything but look at the top-level page, you can't even look at code anymore on the site.

Fine, let's hope that @win32ss takes notice and decides to implement the old UI in a supermium update

idontyboi commented 1 year ago

Command line --top-chrome-md=material allows to opt out of the old Chrome UI. The higher up you go, the less it looks like old UI. By version 71.0.3575.0, it's a mix of old and new UI. Commit 06b383969bc77710e075aa443a0fe263ef6e2010 removed the ability to enable the leftovers. Half-new UI in Chromium 71 almost-Final version. I'm certain that it should work on Chromium 71 final as well. But by Chromium 72.0.3589.0+, it's no longer possible to enable the leftovers. So the highest you can go is 72.0.3588.1. But I am not sure what kind of UI will 72.0.3588.1 will give you. image

Chrome 71 adds support for queueMicroTask, globalThis and Intl.RelativeTimeFormat. Should help with site compatibility.

Throw in Experimental JavaScript, Web Platform Features, individual Harmony flags and all the API enable switches, and you improve site compatibility more.

Some sites like this one stopped caring about compatibility with anything but the very latest. First W7 Browser Killer. Would like to see an injection of the Popover API Polyfill for Chrome 109 while I wait for the next major release of Supermium. A GitHub dependency library already relies on it for a ton of things that appears when you mouse over stuff (likes). Is there a way to redirect that dependency?

Uncaught (in promise) DOMException: Failed to execute 'matches' on 'Element': ':popover-open' is not a valid selector.
    at ToolTipElement.handleEvent (https://github.githubassets.com/assets/vendors-node_modules_github_file-attachment-element_dist_index_js-node_modules_primer_view-co-bdc901-81f1e189072b.js:208:1837)

However, no critical functionality broke yet. Even github.dev works! The site works on Firefox out of the box, but the Popover API is only enabled by a flag!

Back to the UI: Is the Chrome 2nd Refresh UI any better than the 1st? I would like smaller tabs without having to shell out 5 years of security updates. This code crashes the current tab on Chrome 70.

FasterMars16 commented 1 year ago

Didn't know it got removed completely, sad to see the old UI go, is there any way we can replicate the shape and animations of it in any way? That would be interesting to see somewhere as a feature

idontyboi commented 1 year ago

I know it's not as simple as reverting 1 commit, as code removal was done in steps. The old UI is already partially removed by Chrome 71. By Chrome 72 final, all bets go out the window and the old UI is completely removed

But it works in Chromium 71 final with minor coloring issues when you lose focus. image

The final build that has traces of old UI that can be enabled is 72.0.3587.0. But by 72.0.3584.0, old UI components are gone in the location bar. Functionally, it still works. image

Next build 788d3d6f0076dc38304b5ca6b9ad99c8fdaefc78 it is already completely removed. The switch is still there, but there are no traces left for it to enable. Even the switch is gone one build after.

There is advantages of Chromium 72 alpha 3583 (V8 7.2.21) vs 71 final (V8 7.1.302):

If early alpha Chromium builds are used, make sure to change user-agent to Chromium 71 final!

FasterMars16 commented 1 year ago

I think it will be faster to modify the current chrome UI to get a look closer to the legacy UI, rather than reverting commits and making it compatible with the fork and the latest code

win32ss commented 9 months ago

image

With recent inquiries made into some other look-and-feel regressions made in Chromium, I decided to restore the old tab-drawing code. I also decided to reintroduce an option for square tabs (for both 2018 Refresh and 2023 Refresh styles).

This is within the framework of the 2018 refresh code, so it will be a little different.