Live data from Hacker News

Gio UI – Cross-platform GUI for Go

gioui.org

211–220 of 224 posts

Re: Gio UI – Cross-platform GUI for Go

#211
post #5

Go newbie here. Can anybody elaborate on this piece of the docs? """ You might be thinking that it would be more usual to have an ops.Add(ColorOp{Color: red}) method instead of using op.ColorOp{Color: red}.Add(ops). It’s like this so that the Add method doesn’t have to take an interface-typed argument, which would often require an allocation to call. This is a key aspect of Gio’s “zero allocation” design. """ Why wou…

> You might be thinking that it would be more usual to have an ops.Add(ColorOp{Color: red}) method instead of using op.ColorOp{Color: red}.Add(ops)

Others answered your question, but on a different subject: I find that weird to read. To me

  op.ColorOp{Color: red}.Add(ops)
reads like “add ops to the result of op.ColorOp{Color: red}. I would name that function AddTo:

  op.ColorOp{Color: red}.AddTo(ops)
Still unconventional, but at least it messages that the function argument gets modified.

Re: Gio UI – Cross-platform GUI for Go

#212
post #201

Earlier quoted context omitted.

Could you maybe provide a single clear example of how Google earth doesn’t feel native?

Welcome screen was a popover on iPhone (only available on iPads, should be a sheet on iPhone), with rounded non standard button and non standard horizontal lines. “Signed in as” toast wasn’t designed for iOS rounded bottom and “swipe up” bar leaving ugly stripe. Sheet easing is off, and FPS stutter. No swipe from left to go back support. Non standard animations all over. Visible FPS issues (on newest HW) I could go o…

I think several of your examples appear to be confusing Google’s material design system with the frameworks capabilities.

Re: Gio UI – Cross-platform GUI for Go

#213
post #205

Earlier quoted context omitted.

Why would you avoid .NET?

Not generally a huge fan of locking myself into Microsoft platforms

If you mean windows, it has been so many years since .NET has been able to run on many different platforms; and by now, most of the ecosystem supports majority of platforms too..

You get an amazing runtime with near native performance, access to value types, no type erasure, access to low-level operations when utmost performance is needed, very good cross platform and architecture SIMD support, three different great IDEs with two of them being cross-platform, AoT compilation that keeps getting better, WASM target with a good framework (Blazor), and so on.

Modern .NET is truly amazing and highly undervalued IMO.

Re: Gio UI – Cross-platform GUI for Go

#214
post #154

Earlier quoted context omitted.

Reddit post from Project Manager is pretty pointless. If Google decides to get rid of Flutter, they are not going to tell Kevin before hand, they are likely not even going to tell Kevin boss before hand. Stadia employees were swearing up and down that Stadia was full steam ahead despite layoffs until it wasn't. When it happened, it was clear from all Twitter posting that no one except really high up Google Executives…

True, but you could say the same thing about anything. That does not help anyone.

Not always, if Google Cloud CEO came out and said "We are invested in Flutter", I'd give it more weight since he has real power at Google.

I'm just saying Kevin statement is meaningless. If you look at Google actions before, they do not slowly remove support from things and announce it. They silently layoff, go quiet then BAM, X is gone without warning and little time to deal.

Re: Gio UI – Cross-platform GUI for Go

#215

Earlier quoted context omitted.

Reddit post from Project Manager is pretty pointless. If Google decides to get rid of Flutter, they are not going to tell Kevin before hand, they are likely not even going to tell Kevin boss before hand. Stadia employees were swearing up and down that Stadia was full steam ahead despite layoffs until it wasn't. When it happened, it was clear from all Twitter posting that no one except really high up Google Executives…

The doom and gloom comes from much the same pontificating and rumormongering. Except somehow less official, and that's what you want us to go with?

Doom and gloom comes from everyone who has followed Google history. Google does not do what I call "Enterprise orderly shutdown of services" which is decrease releases/features, announce depreciation, give shutdown date and shutdown. They just do layoffs, radio silence and BAM, SHUTDOWN!

Re: Gio UI – Cross-platform GUI for Go

#216
post #205

Earlier quoted context omitted.

Not generally a huge fan of locking myself into Microsoft platforms

If you mean windows, it has been so many years since .NET has been able to run on many different platforms; and by now, most of the ecosystem supports majority of platforms too.. You get an amazing runtime with near native performance, access to value types, no type erasure, access to low-level operations when utmost performance is needed, very good cross platform and architecture SIMD support, three different great…

It's all open source, Native AOT, batteries-included stdlib. A very productive and well rounded platform.

Re: Gio UI – Cross-platform GUI for Go

#217

Earlier quoted context omitted.

Isn’t Eclipse written using SWT?

Yes. In fact, IBM created SWT to implement Eclipse. Ghidra is an example of a large, cross-platform application I use regularly that does use Swing. While it's a terrific reverse engineering tool, its UI leaves at least a little to be desired. Examples, not necessarily Swing's fault: • Non-native text controls. This is particularly painful on macOS, where Ghidra text controls don't provide access to useful system ser…

Not OP, but thank you for the detailed feedback. I've been considering various options, including Swing, for a small desktop tool.

May I ask how are the apps made with Electron, Tauri, Wails or other WebView-based GUI toolkits performing on macOS in these regards?

Re: Gio UI – Cross-platform GUI for Go

#218
post #212

Earlier quoted context omitted.

Welcome screen was a popover on iPhone (only available on iPads, should be a sheet on iPhone), with rounded non standard button and non standard horizontal lines. “Signed in as” toast wasn’t designed for iOS rounded bottom and “swipe up” bar leaving ugly stripe. Sheet easing is off, and FPS stutter. No swipe from left to go back support. Non standard animations all over. Visible FPS issues (on newest HW) I could go o…

I think several of your examples appear to be confusing Google’s material design system with the frameworks capabilities.

You asked how it doesn’t feel native. Using a design system from a different platform, and not complying with the interface guidelines of the current platform, is a big part of not feeling native.

And the frame drops and lack of system gestures, and lack of standard nav stack are major infractions on usability outside of design.

Post reply on HN