swift-cross-ui icon indicating copy to clipboard operation
swift-cross-ui copied to clipboard

A cross-platform declarative UI framework, inspired by SwiftUI.

Results 32 swift-cross-ui issues
Sort by recently updated
recently updated
newest added
trafficstars

is it outside of the goals of this project to support other backends such as qt or win32 etc? or is it strictly gtk for now?

This gives the `update` function proper safety and avoids typecasting. I'll do this one

enhancement

Theoretically, SwiftCrossUI should work on Windows, but I haven't managed to install Gtk on Windows in a way that Swift can use yet. If you use Swift on Windows, you'll...

help wanted

Currently only `HStack`, `VStack`, `Button` and `Text` are supported. The following view types would also be useful to have: - [ ] `TextField` - [ ] `Slider` - [ ]...

feature

For example, currently buttons have their text updated every time the state of their parent view changes, which is completely unnecessary given that most of the time their label is...

enhancement

SwiftUI approaches this by having the body of `App` be of type `some Scene` where a scene can define windows using a result builder. The way I plan on approaching...

feature

SwiftUI has a concept called [view modifiers](https://developer.apple.com/documentation/swiftui/viewmodifier). SwiftUI's `ViewModifier` protocol is for modifiers that can apply to any view, but individual views can also declare their own modifiers by creating...

feature
API

Currently, the layout of views is at the mercy of Gtk, which is not too great. Gtk supports styling through CSS, so the layout system would most likely just consist...

feature

At the moment windows default to the smallest possible size (under most backends). It'd be much nicer if they defaulted to some more sensible dimension such as 800x400 or something....

enhancement

The `identifier` property is only used by Gtk so I reckon `GtkBackend` should just use a default value and provide some way to configure it. Alternatively, we could just provide...

enhancement
API