a167be8383
- Reconfigured subclass creation, as there was a subtle-but-big-when-it-hit bug in the prior method where bridge callbacks would lose context of the appropriate delegate when calling the trait method. The new approach found in `src/foundation/class.rs` maps and caches subclass creation, and subclasses are now more apparent when debugging from the Objective-C side as we can carry their intended name/usage through. Not applied to all yet, but eventually. - Cleaned up a number of linter warnings that had grown over time. - Delegate traits now require an associated const `NAME`, which is used for subclass creation. - (macOS) Toolbars now supported setting selected items, which is typically used in preferences screens. - (macOS) Windows now support setting the toolbar display style. On Big Sur, this works as intended - it's a noop on older OS's that don't support it. - Support for system icons for macOS preferences windows. Still a bit to go to flesh this all out, but it's getting there - at which point then iOS supoort can be folded in easier.
37 lines
923 B
TOML
37 lines
923 B
TOML
[package]
|
|
name = "cacao"
|
|
description = "Rust bindings for AppKit (macOS) and UIKit (iOS/tvOS). Experimental, but working!"
|
|
version = "0.1.0"
|
|
edition = "2018"
|
|
authors = ["Ryan McGrath <ryan@rymc.io>"]
|
|
build = "build.rs"
|
|
repository = "https://github.com/ryanmcgrath/cacao"
|
|
categories = ["gui", "os::macos-apis", "os::ios-apis"]
|
|
keywords = ["gui", "macos", "ios", "appkit", "uikit"]
|
|
|
|
[package.metadata.docs.rs]
|
|
default-target = "x86_64-apple-darwin"
|
|
|
|
[dependencies]
|
|
block = "0.1.6"
|
|
core-foundation = { version = "0.9", features = ["with-chrono", "mac_os_10_8_features"] }
|
|
core-graphics = "0.22"
|
|
dispatch = "0.2.0"
|
|
lazy_static = "1.4.0"
|
|
libc = "0.2"
|
|
objc = "0.2.7"
|
|
objc_id = "0.1.1"
|
|
os_info = "3.0.1"
|
|
uuid = { version = "0.8", features = ["v4"], optional = true }
|
|
url = "2.1.1"
|
|
|
|
[features]
|
|
default = ["macos"]
|
|
cloudkit = []
|
|
ios = []
|
|
macos = []
|
|
quicklook = []
|
|
user-notifications = ["uuid"]
|
|
webview = []
|
|
webview-downloading = []
|