Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Import Masonry crate #203

Merged
merged 2,491 commits into from
Apr 22, 2024
Merged

Import Masonry crate #203

merged 2,491 commits into from
Apr 22, 2024

Conversation

PoignardAzur
Copy link
Contributor

This commit adds the masonry crate as-is to the repository. It doesn't integrate Xilem with Masonry in any way.

Masonry is a modular backend providing a Widget tree for GUI libraries, originally forked from the Druid project.

Previous history of this code is maintained in the original Masonry repository. Explanations for design decisions may also be found in issues from the Druid repository.

sigaloid and others added 30 commits August 21, 2021 14:03
* cargo +nightly clippy --fix -Z unstable-options

* Cargo fmt
* simulate_input: Ctrl-A to SelectAll
* Revert "simulate_input: Ctrl-A to SelectAll"
* TextBox: Handle SELECT_ALL
Replace nightly builds with single beta build.
Make the beta build not block CI on error.
Run clippy on the beta build.
Only run wasm build on a single OS.
Separate out doc tests, and only run then on one platform.
Download wasm-pack binary instead of building it from source.

This should overall make the project use less CI cache; Github actions
cache is capped at 5GB per project, whereas the previous CI used about
6GB. This meant cache entries were often evicted before they
could be used.
Sometimes using commands to mutate data from ExtEventSink can be very verbose.
This provides a simpler alternative.
expand the rect early in invalidate_rect and then round at every usesite of invalid
* fix the listiter implementation

Signed-off-by: Christoph <xarvix@web.de>

* reformat

Signed-off-by: Christoph <xarvix@web.de>

* Update CHANGELOG.md

Co-authored-by: Christoph <xarvix@web.de>
Co-authored-by: Manmeet Maan <49202620+Maan2003@users.noreply.github.com>
PoignardAzur and others added 25 commits January 25, 2023 18:34
The crate name "Masonry" was already taken. Author has ceded it, but
version 0.1 already exists, hence the bump.

See https://old.reddit.com/r/rust/comments/10uhw4l/announcing_masonry_01_and_my_vision_for_rust_ui/j7c9krw/?context=2
Co-authored-by: WeetHet <stas.ale66@gmail.com>
* Fix features passed in CI file
* Fix compilation error on windows platforms
* Run cargo fmt
* Fix how piet is imported to pass down image feature
* Fix clippy lints
* Remove im feature from CI commands
* Remove WebImage
* Remove dependency on reqwest
* Add hotfix to skip all render snapshots in CI
* Update rust-cache version in CI
Replace tuple with a struct
Adjust surrounding code to struct-like widgets
The main point of this commit is to push a new version to crates.io to see if it fixes some errors in the generated documentation.
Fix some clippy lints
Update text snapshots
Update documentation and examples
Update roadmap
Add debug properties to PaintCtx
Add maybe_eq method to TextStorage as a monkey-patch

---

Based on PR linebender/masonry#53
by: Shekhinah Memmel <she@khinah.xyz>
This also lets us stop building a separate version of kurbo for
xilem_web.
`test-log` is used with logging to set up `env_logger` for each
test and was only used in the box constraints code. This code
doesn't actually use logging, so this wasn't doing much.
…]`) as classes (linebender#198)

Support arrays (`impl IntoClasses for [impl IntoClasses; N]`) as classes
- Remove dependencies to Piet and druid-shell
- Remove AppLauncher, AppDelegate, WinHandler, WindowDescription
- Remove Command, Notification, Selector
- Remove Textbox widget
- Create RenderRoot, EventLoopRunner type
- Update render snapshots
- Update examples
…ae1524'

git-subtree-dir: crates/masonry
git-subtree-mainline: 9a118da
git-subtree-split: 0d4d55d
@xStrom
Copy link
Member

xStrom commented Apr 22, 2024

For the record, this is a redo of #202.

Copy link
Contributor

@DJMcNab DJMcNab left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Approving again

@DJMcNab DJMcNab merged commit 9b2ebfc into linebender:main Apr 22, 2024
14 checks passed
@PoignardAzur PoignardAzur deleted the add_masonry2 branch April 22, 2024 12:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet