Feature flags that clash are no fun. This reworks a few things so that
docs can properly build with all feature flags at once and note their
support.
Also adds a supported table to the README for ease of discovery.
- AutoLayout is now behind a feature flag (that is defaulted) to enable
building and running on platforms that do _not_ support AutoLayout.
- Added a frame-based Layout example for platforms that don't have
AutoLayout support.
- Fixed a bug in geometry.rs where x/y coordinates would get swapped on
conversion to `CGRect`.
- Added a README to the examples directory to aid in first time users
running examples.
- Changes internal target_os flags to be feature flags; macOS is now
appkit, and iOS/tvOS are now uikit. This enables platforms that are
not Apple-specific platforms that use frameworks to be compiled for.
- Updates the examples to handle closing/quitting better.
This is a basic implementation of the custom protocol, with built-in mimetype extraction from the content, backed by URI detection.
To make it clear, I added an example and can be run with:
```
cargo run --example webview_custom_protocol --features webview
```
- Drag and drop, hidden, and so on now live on on the `Layout` trait,
which helps make the logic less of a hassle to support (these methods
are almost always guaranteed to exist on any view type, and it's
easier to just noop them on a specific view if need be).
- Begin reworking auto-drop-remove-from-superview logic by including an
`is_handle` flag on `View`; will need to extend this work to others.