summaryrefslogtreecommitdiff
path: root/Userland/Applications
AgeCommit message (Collapse)Author
2023-04-14SoundPlayer: Check if loader is nullBrendan Kelly
This patch prevents SoundPlayer from crashing when attempting to "seek" when no file has been loaded
2023-04-14VideoPlayer: Use rounded seconds for the timestamp labelZaggy1024
Previously, the time would read "00:00:01" when the timestamp was merely 1 millisecond past the start of the video. If a video does not start with a sample at timestamp 0, then, seeking to the start would display that text rather than "00:00:00".
2023-04-14VideoPlayer: Update the current timestamp on state changesZaggy1024
The state could change and cause a timestamp change without the video frame event firing, which could desync the seek bar from the video's actual time.
2023-04-14Spreadsheet+LibSyntax: Never insert spans directlyMatteo Benetti
Function `CellSyntaxHighlighter::rehighlight()` direct inserted spans to TextDocument `m_span` vector missing out important reordering and merging operation carried out by `TextDocument::set_spans()`. This caused overlapping spans for a cell with only a `=` symbol (one for the actual token and one for the highlighting) to miscalculate `start` and `end` value and a `length` value (of `size_t` type) with a `0-1` substraction (result: 18446744073709551615) causing `Utf32View::substring_view()` to fail the `!Checked<size_t>::addition_would_overflow(offset, length)` assertion This remove the possibility to directly alter `TextDocument`'s spans thus forcing the utilization of `HighlighterClient::do_set_spans()` interface function. Proper refactor have been applied to `CellSyntaxHighlighter::rehighlight()` function
2023-04-14LibJS: Port Value::to_object() to NonnullGCPtrLinus Groh
2023-04-13WindowServer: Implement tile window overlayTom
This adds a tiling mode that will show a tile window overlay rather than immediately tiling a window, triggering window resizes.
2023-04-13WindowServer: Use enum class for Effects and ShowGeometryTom
2023-04-13LibJS: Make intrinsics getters return NonnullGCPtrLinus Groh
Some of these are allocated upon initialization of the intrinsics, and some lazily, but in neither case the getters actually return a nullptr. This saves us a whole bunch of pointer dereferences (as NonnullGCPtr has an `operator T&()`), and also has the interesting side effect of forcing us to explicitly use the FunctionObject& overload of call(), as passing a NonnullGCPtr is ambigous - it could implicitly be turned into a Value _or_ a FunctionObject& (so we have to dereference manually).
2023-04-12LibTLS: Streamline certificate loadingFabian Dellwing
Some refactoring of our root ca loading process: - Remove duplicate code - Remove duplicate calls to `parse_root_ca` - Load user imported certificates in Browser/RequestServer
2023-04-12Applications: Use thousands separator for numbers shown in status barTim Ledbetter
TextEditor, HackStudio and SQLStudio now print the current line and column number, as well as the number of currently selected words, with thousands separators. TextEditor also uses thousands seperators for the current word and character count.
2023-04-11FileManager: Use a thousands separator for numbers in PropertiesWindowTim Ledbetter
2023-04-113DFileViewer+Tubes: Add `map_fixed` to pledgesJelle Raaijmakers
Both applications eventually reach LibGPU's loading of a dynamic library (e.g. LibSoftGPU) which requires this pledge. The pledge was always required, but went unchecked until 01318d8f9b.
2023-04-10SystemMonitor: Handle zombie processes properlyLiav A
SystemMonitor had a bug in which it would crash in case there are zombie processes left in the system. The fix for this is to check if a process has no threads (which will indicate that the process is a zombie and is waiting to be reaped), and if that's the case, artificially create a thread row that is just enough to represent the zombie process.
2023-04-09Settings: Improve default window sizeCameron Youell
Before, one icon was hidden slightly out of sight and there was a scrollbar.
2023-04-09CertificateSettings: Update to be more consistent with other settingsCameron Youell
2023-04-09Browser: Have `BookmarksBarWidget` signal bookmark changes for `Tab`Kemal Zebari
This fixes an issue with a tab not updating its bookmark button when we either edit or delete a bookmark and the tab happens to be on the same page associated with the bookmark URL. `BookmarksBarWidget` "signals" a `Tab` object of any bookmark changes, where it will update the bookmark button depending on if the current URL is an existing bookmark or not.
2023-04-09KeyboardSettings: Port to `Core::File`Cameron Youell
2023-04-09Piano+LibAudio: Port to `Core::File`Cameron Youell
2023-04-09DisplaySettings: Use FileSystemAccessServer instead of FilePickerhuttongrabiel
Make a call to the FileSystemAccessServer instead of using FilePicker to select a new wallpaper in BackgroundSettings.
2023-04-09LibVideo+VideoPlayer: Convert playback event handler to callbacksTimothy Flynn
To pass events from LibVideo's PlaybackManager to interested parties, we currently dispatch Core::Event objects that outside callers listen for. Dispatching events in this manner rely on a Core::EventLoop. In order to use PlaybackManager from LibWeb, change this mechanism to instead use a set of callbacks to inform callers of events.
2023-04-09Everywhere: Remove unused DeprecatedString includesBen Wiederhake
2023-04-07Base: Add icons for AssistantCubic Love
Add 32px and 16px application icons for Assistant
2023-04-06LibTLS: Change Certificate parsing to use ErrorOrstelar7
Loads of changes that are tightly connected... :/ * Change lambdas to static functions * Add spec docs to those functions * Keep the current scope around as a parameter * Add wrapping classes for some Certificate members * Parse ec and ecdsa data from certificates
2023-04-03LibGUI+CertificateSettings: Use custom SortingProxyFabian Dellwing
The default SortingProxyModel does not allow to react to reodering. As we would like to keep the column width on sorting, we create a subclass and inject our code into the sorting method.
2023-04-03CertificateSettings: Add export functionalityFabian Dellwing
2023-04-03CertificateSettings: Add import functionalityFabian Dellwing
2023-04-03CertificateSettings: Create basic Cert Store applicationFabian Dellwing
This commit adds a new application named CertificateSettings that houses our Cert Store. It should be expanded in the future.
2023-04-03Spreadsheet: Propagate errors from SpreadsheetWidget::initialize_menubarSam Atkins
2023-04-03Spreadsheet: Add list of recently-opened filesSam Atkins
2023-04-03PDFViewer: Add list of recently-opened filesSam Atkins
2023-04-03PixelPaint: Update recent files list on project saveTim Ledbetter
This is consistent with the behavior of other applications.
2023-04-03PixelPaint: Make Bloom use InplaceFilter instead of Filtermatcool
This change affects the filter preview widget, which would get the bloom filter applied over the same bitmap, leading to an incorrect preview.
2023-04-03ImageViewer: Fix crash when setting wallpaperjustus2510
When trying to set the wallpaper from the menu, ImageViewer would crash because setting the wallpaper requires the program to pledge to the WindowManager domain. This patch adds that pledge.
2023-03-31Browser: Add tooltip to reset zoom level buttonMacDue
2023-03-31KeyboardSettings: Add checkbox to enable Caps Lock mapping to Ctrlsbcohen2000
This patch adds an additional control to KeyboardSettings allowing the user to map Caps Lock to Ctrl. Previously, this was only possible by writing to /sys/kernel/variables/caps_lock_to_ctrl. Writing to /sys/kernel/variables/caps_lock_to_ctrl requires root privileges, but KeyboardSettings will not attempt to elevate the privilege of the user if they are not root. Instead, the checkbox is rendered as un-editable.
2023-03-31CrashReporter: Warn about malloc and free patterns in fault addressLiav A
Warn the user about seemingly known malloc() and free() patterns in the fault address. This brings back the functionality that was removed recently in the 5416a37fdea815b2fc18c35a60d173f8cfa67709 commit, but this time we detect these patterns in userspace code and not in kernel code.
2023-03-29Browser: Add reset zoom level button to toolbarMacDue
This button shows the current zoom level and when clicked resets the zoom back to 100%. It is only displayed for zoom levels other than 100%.
2023-03-27Browser: Remove unused variables in `BookmarksBarWidget`Kemal Zebari
2023-03-26Browser: Show current zoom level in view menuMacDue
2023-03-26PixelPaint: Correctly set default layer nameJelle Raaijmakers
Previously, if you confirmed the "new layer" dialog without any change to the layer name, the layer would end up with an empty string for its name.
2023-03-26PixelPaint: Remove unused function definition from ImageTim Ledbetter
2023-03-26PixelPaint: Use new String to format error messagesTim Ledbetter
2023-03-26PixelPaint: Include possible errno description in error messagesTim Ledbetter
In the case where an error is created from an errno, calling string_literal() will print nothing. Using Error's formatter instead gives a more descriptive error message.
2023-03-26PixelPaint: Add a Duplicate Layer actionTim Ledbetter
The "Duplicate Layer" action inserts a copy of the selected layer into the layer stack. The new layer is placed above the selected layer.
2023-03-26PixelPaint: Make wand tool work when layer and image rects differTim Ledbetter
Previously, the position of the mask used to calculate the new selection did not match the position of the active layer. The program would crash when trying to set a mask pixel outside the bounds of the active layer.
2023-03-24Run: Use Core::Process::spawn() to launch commandsMacDue
2023-03-24FileManager: Use GUI::Process::spawn_or_show_error() to open terminalsMacDue
2023-03-24Applications: Convert `DeprecatedFile` usages to `LibFileSystem`Cameron Youell
2023-03-24ImageViewer: Use `LibFileSystemAccessClient`Caoimhe
This commit also starts the adoption of ErrorOr<T> and the String class in ImageViewer. However, there is still a few more changes that could be made. Since the actions of using LibFSAC and using String in more places are tightly coupled, I decided to put them in one commit.
2023-03-23ImageViewer: Fix crash when opening ImageViewer without an imageCaoimhe
Seems like a thing which slipped through the cracks... We shouldn't try to scale the image to the window's size if the bitmap doesn't exist.