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
ensure ImageEditor
always draws at the correct position
#7959
Conversation
🪼 branch checks and previews
Install Gradio from this PR pip install https://gradio-builds.s3.amazonaws.com/77eed46c1b7f1ec18e31aab53a6613fa5ead0a6d/gradio-4.26.0-py3-none-any.whl Install Gradio Python Client from this PR pip install "gradio-client @ git+https://github.com/gradio-app/gradio@77eed46c1b7f1ec18e31aab53a6613fa5ead0a6d#subdirectory=client/python" |
Thanks for this PR! I'll take a look today! Does this fix #6822 as well? |
Awesome thanks. Will test and review shortly! |
🦄 change detectedThis Pull Request includes changes to the following packages.
With the following changelog entry.
Maintainers or the PR author can modify the PR title to modify this entry.
|
I have noticed that the intial change breaks the use case of initializing layers to specific values when using a dict as value for an example as the layer might simply be removed. One way to fix this would be to only reset the layers on the frontend if some layer does not match the new dimensions as done in 4b9686a. |
ImageEditor
always draws at the correct position
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This works great for both of the linked cases as far as I can tell! Thanks so much @hrrbay!
Description
Using
Examples
withImageEditor
without the workaround in #6822 leads to drawing at wrong positions as discussed in #7258. This is caused because the initial layer is added before the image is uploaded. The layer therefore has wrong dimensions. The fix simply resets layers on dimension change.Closes #7258. Closes #6822.
🎯 PRs Should Target Issues
Before your create a PR, please check to see if there is an existing issue for this change. If not, please create an issue before you create this PR, unless the fix is very small.
Not adhering to this guideline will result in the PR being closed.
Tests
PRs will only be merged if tests pass on CI. To run the tests locally, please set up your Gradio environment locally and run the tests:
bash scripts/run_all_tests.sh
You may need to run the linters:
bash scripts/format_backend.sh
andbash scripts/format_frontend.sh