"Trim images" should be a more fitting name for this option, as it's quite common to export multiple images and the use of plural makes it more clear that this option applies to all exported images.
* experimental support for texture changes
* fix some typos
* formatting + some improvements
* Some final touches, i think it's ready now
* moved a function to the shaderloader
* formatting
* add a void
* Blend group layers on `DrawingAlgos.blend_layers()`
* Support group layer blending on the canvas
* Allow editing of group layer properties
* Fix issues with group layer blending in canvas, and unite common code
* Group layers can now be used as clipping masks
* Make move tool preview work on child layers
* Change OffsetImage's `blend_layers()` to support group layer blending
* Support group layer blending in the canvas preview
* Fix layer blending mode, clipping mask opacity and cel opacity not being updated automatically if the layer/cel changed is not selected
* Add a pass through blending mode to layer groups
Fingers crossed that no bugs were introduced
* Fix issue with layers that belong to pass through groups not updating their textures on the canvas automatically on undo
You currently cannot move multiple cels on different layers, they still act as swapping. Eventually I'd also like to implement moving cels between different layers, but they would also have to be on the same frame. I don't think moving cels between different layers and frames at the same time is possible.
Thanks to https://godotshaders.com/shader/color-manipulator/
The shader has more options than just brightness and contrast though, but I didn't know how else to name the effect. "Adjust Brightness/Contrast" makes it immediately obvious as to what the effect is about.
Closes #1061, fixes issue where when Pixelorama's window loses focus, the dialogs disappeared, but the dialogs can no longer close when pressing outside of them.
Before this commit, when these tools were being used on large areas, the software would start being very slow due to the polyline drawing. Now it simply draws an image.
TODO:
- Optimize the lasso, pixel and polygon select tools
- Mirror the previews of ellipse selection and shape tools, for consistency with the lasso, pixel and polygon select tools
- Perhaps somehow remove Previews.gd since its work is even more limited now.
* splash ambient
* change fill to radial
* make import tag work with frame button
* hide Import tag dialog when clicking outside
* Icon shows the first frame of a tag
* formatting
Added missing strings to Translations.pot and fixed a few ones that were broken either because of missing periods, differences in capitalization or because of trailing newlines (the latter seems to get automatically trimmed in tooltips during runtime)
A few buttons and labels in Pixelorama weren't getting updated when changing languages, they'd just remain at the language the program started up with or only update when changing projects.
This fixes that and ensures they get updated as soon as the user changes languages.
This has no effect on non-Steam builds. Steam achievements are mostly for fun, but can also be educational because they can let users know of certain features and functionalities. It's using the GodotSteam GDExtension, but because I do not want to bloat the GitHub repository with things that are not needed for most builds, I decided not to include the GDExtension files, and instead check if the `Steam` class exists in `ClassDB`. The new SteamManager class pretty much does nothing on non-Steam builds, so do not worry about bloat.
In the future we could even take advantage of more of Steam's features, such as Cloud storage for pxo files.
* removed some redundant code
(not sure how it got there), made tracker toggle obey the variable
* Changed perspective editor from Control to PanelContainer to avoid some UI issues
This is just an added step for security. Now, if an extension file gets compromised, Pixelorama can detect the mismatch between the file's SHA256 and the SHA256 from the extension repository, and refuse to install the extension.
For example, someone with malicious intent could gain access in the repository where the extension file is hosted, and replace it with a different file. Before this commit, the malicious file would be downloaded normally, but now, since the file will change, so will its SHA-256 hash, so Pixelorama will be able detect the mismatch and recognize that it is potentially malicious.
The reason for removing the other store link is because I am worried that adding more links by default, can make it easier to compromise security. Extensions can be dangerous, and even if one link gets injected by malware, users are in danger, so I think it's better to keep the extensions is one, centralized place. I included all of the extensions listed in Variable's store link in this file.
I also renamed it from store to repository, as I think it's a more fitting name.