Closed alkaris2 closed 1 year ago
For starters, macOS is completely non-functional at this point (hence no macOS version). And even so, the old macOS versions won't work on modern macOS, so they're more or less useless overall.
This itself is blocked by #2261. We need to get to modern .NET to move to a new GUI. Consider it ultimately the "final" dependency.
Also you can't just use Qt or GTK directly, you aren't going to be able to use the GUI designers for them due to the fact you'd be using C# bindings for those GUI backends. Also WinForms itself has a GUI designer. That itself is not the issue. It looks like garbage on Linux because WinForms has garbage support on Linux. The only way to fix it is to replace WinForms.
EDIT: To be clear to the choice of WinForms was very very old, as BizHawk began at a time before C# multiplatform GUIs existed, before .NET Core/modern .NET even existed. Unix support in BizHawk came after, which at this point it's at least more or less functional, but ugly all over the place. We don't like it, it's only needed until we can properly replace the GUI backend.
Closing as there's nothing actionable here as-is.
I'm not a UX/UI Designer, but I know bad design when I see it
That you're not a UX designer is obvious from the fact that none of these are UX problems or even design problems at all. Something can look bad (have bad theming) while being perfectly functional, efficient, and discoverable. And while design can influence implementation, they're mostly orthogonal. An example of where EmuHawk's UI design could be improved is how the menus are laid out: currently, it's roughly by which subsystem(s) they interact with, but it could be based purely on semantics. For UX, consider how some actions have a confirmation when an undo mechanism is possible, and some have neither.
Giving credit where it's due, you definitely have a lot of talented people working on this project, but I cannot get over the fact the whole UI/UX design of BizHawk is such an afterthought, because coders who never intended for a GUI in the beginning often build the most terrible looking GUIs.
The GUI of BizHawk is at it's best terrible in its current state. I'm not a UX/UI Designer, but I know bad design when I see it, and there are multiple issues in design especially for something that's multiplatform. On Windows BizHawk looks fine (mostly), but when taken to MacOS or Linux it's a complete disgusting mess that you just don't even want to look at it, from unreadable and ineligible text, to inconsistent windowing themes and out of place objects. If you were to use a better GUI builder like Qt or GTK it would probably solve most or ALL of the current problems when it comes to things looking broken and looking terrible. Because A) They're easy to work with, and B) they have designer apps to build a fleshed out GUI to look better and more consistent and works across all platforms equally the same.
I read from this issue https://github.com/TASEmulators/BizHawk/issues/464 that MacOS has issues with font rendering in Bizhawk as well as small text too small to even read, and menus not working correctly. Under Linux, it's much worse, the menu bar is completely impossible to read because it's white text on white background. Text is often cut-off when it's got a description about something, there's no Min-Max windowing sizes for some of the menu popups, so you often have to resize the window just to see all the things that are cut-off out of view.
Two main goals for this post.
It would certainly help fix the
System.Windows.Forms
andSystem.Drawing.Common
issues as shown in issue https://github.com/TASEmulators/BizHawk/issues/2261 since it would no longer be a dependency issue.