summaryrefslogtreecommitdiff
path: root/Userland/Applications/PixelPaint
AgeCommit message (Collapse)Author
2021-12-21PixelPaint: Refactor falloff computation and extend hardness ranger00ster91
2021-12-12Userland: Use File::lines() range-based for loop where appropriateSahan Fernando
2021-11-28Everywhere: Use default execpromises argument for Core::System::pledgeBrian Gianforcaro
2021-11-27PixelPaint: Keep a RefPtr to offset_text_box in EditGuideDialogMarcus Nilsson
Keep a RefPtr to offset_text_box in EditGuideDialog instead of using a local pointer. Previously the lambda in ok_button.on_click() would outlive the local variable causing a crash.
2021-11-23LibCore+AK: Move MappedFile from AK to LibCoreAndreas Kling
MappedFile is strictly a userspace thing, so it doesn't belong in AK (which is supposed to be user/kernel agnostic.)
2021-11-23LibCore+LibSystem: Move syscall wrappers from LibSystem to LibCoreAndreas Kling
With this change, System::foo() becomes Core::System::foo(). Since LibCore builds on other systems than SerenityOS, we now have to make sure that wrappers work with just a standard C library underneath.
2021-11-22Everywhere: Use Application::construct() with Main::Arguments directlyMustafa Quraish
Use the updated API everywhere we are currently manually passing in `arguments.argc` and `arguments.argv`.
2021-11-22Everywhere: Use ArgsParser::parse() with Main::Arguments directlyMustafa Quraish
Use the updated API everywhere we are currently manually passing in `arguments.argc` and `arguments.argv`.
2021-11-22PixelPaint: Port to LibMainPascal Puffke
2021-11-22PixelPaint: Use better-fitting image sizeBen Wiederhake
This makes the default image fit perfectly into the default viewport, which means the first fit_image_to_view call will end up with a scale of exactly 1. This scale level has no visual artifacts, which is the more intuitive 'default' behavior. Fixes #10975.
2021-11-22PixelPaint: Add interactive zoom ComboBox to toolbarBen Wiederhake
Before, there was nothing that tells the user the current zoom level, which is unknown after a 'fit to image' (the initial state).
2021-11-22PixelPaint: Add ability to fit to either width, height, or imageBen Wiederhake
2021-11-22PixelPaint: Allow setting ImageEditor scale and listening for changesBen Wiederhake
2021-11-22PixelPaint: Floor effective viewport size to whole integersBen Wiederhake
We don't have fractional pixels available, so don't attempt to use them.
2021-11-21LibGUI+Everywhere: Make sync requests to Clipboard server more obviousBen Wiederhake
2021-11-21LibGUI: Make clipboard-as-bitmap parsing less data-race-yBen Wiederhake
This encourages the caller to first fetch data and type atomically, and then parse that, instead of potentially making multiple requests.
2021-11-20PixelPaint: Allow toggling the active layer boundary display rectAndreas Kling
Let the user opt out of painting a rectangle around the currently active layer.
2021-11-17AK: Make JSON parser return ErrorOr<JsonValue> (instead of Optional)Andreas Kling
Also add slightly richer parse errors now that we can include a string literal with returned errors. This will allow us to use TRY() when working with JSON data.
2021-11-11Everywhere: Pass AK::StringView by valueAndreas Kling
2021-11-08PixelPaint: Use ErrorOr<T> for Image and Layer creation helpersAndreas Kling
2021-11-08PixelPaint: Use ErrorOr<T> for Image::try_compose_bitmap()Andreas Kling
2021-11-08PixelPaint: Use ErrorOr<T> for Image writing/exporting functionsAndreas Kling
2021-11-08LibCore: Use ErrorOr<T> for Core::File::open()Andreas Kling
2021-11-08AK: Use ErrorOr<T> for MappedFile factoriesAndreas Kling
Replace Result<T, E> with ErrorOr<T> and propagate the error to callers.
2021-11-08LibGfx: Use ErrorOr<T> for Bitmap::try_create()Andreas Kling
Another one that was used in a fajillion places.
2021-11-08LibGfx: Use ErrorOr<T> for Bitmap::try_load_from_file()Andreas Kling
This was used in a lot of places, so this patch makes liberal use of ErrorOr<T>::release_value_but_fixme_should_propagate_errors().
2021-11-08LibGfx: Use ErrorOr<T> for Bitmap::cropped()Andreas Kling
2021-11-08LibGfx: Use ErrorOr<T> for Bitmap::flipped()Andreas Kling
2021-11-08LibGfx: Use ErrorOr<T> for Bitmap::rotated()Andreas Kling
2021-11-08LibGfx: Use ErrorOr<T> for Bitmap::clone()Andreas Kling
2021-11-03Applications: Remove border from GroupBox marginsFrHun
2021-11-02Applications: Fix visibility of Object-derivative constructorsBen Wiederhake
Derivatives of Core::Object should be constructed through ClassName::construct(), to avoid handling ref-counted objects with refcount zero. Fixing the visibility means that misuses like this are more difficult.
2021-11-02PixelPaint: Map color_distance_squared from 0 to 1Musab Kılıç
2021-10-31PixelPaint: Use a bucket cursor for the Bucket toolMarco Cutecchia
2021-10-31PixelPaint: Support using a bitmap as a tool's cursorMarco Cutecchia
2021-10-27Everywhere: Rename left/right-click to primary/secondaryFiliph Sandström
This resolves #10641.
2021-10-24PixelPaint: Move Mask::{get, set, to_index} to the header fileIdan Horowitz
They were previously taking up 9% of samples in a profile of PixelPaint while selecting a mask, and as a result of moving them to the header they were inlined, which effectively eliminated them from the profile.
2021-10-23AK+Everywhere: Make Base64 decoding fallibleBen Wiederhake
2021-10-16PixelPaint: Create an empty layer when the last layer is removedFelix Rauch
Previously, when the last layer got deleted, the active layer was set to nullptr, causing a crash. Now, we create a new transparent background layer with the image dimensions instead.
2021-10-07PixelPaint: Close tab now prompts for a saveAlex Major
2021-10-07PixelPaint: Use reorderable tabsLuke Wilde
2021-10-05PixelPaint: Fix first undo action not workingMarco Cutecchia
2021-10-05PixelPaint: Ensure a layer is selected when restoring a snapshotMarco Cutecchia
Previously when restoring the starting snapshot in the UndoStack we would end up with no layer selected, which was kinda annoying
2021-10-02PixelPaint: Correctly offset stroke position for even thicknessesGal Horowitz
2021-10-02PixelPaint: LayerListWidget::set_selected_layer now handles nullptrGal Horowitz
2021-09-29PixelPaint: Add new icons for layer actionsMarcus Nilsson
Add icons for three more layer actions.
2021-09-25PixelPaint: Close image tabs on middle clickKarol Kosek
2021-09-25PixelPaint: Close New Image dialog after pressing return keyKarol Kosek
13e526de43847ac86d74e3cb0be2d6b930f1d46f added the feature to new Layer dialog. This patch adds it to Image dialog to stay consistent across the app. :^)
2021-09-20PixelPaint: Move Tools to it's own subdirectoryMarcus Nilsson
The PixelPaint source directory was getting a bit large, let's move all the Tools to it's own subdirectory. Also remove some unused includes.
2021-09-19PixelPaint: Use main window's icon in the 'Create new image' widgetKarol Kosek