summaryrefslogtreecommitdiff
path: root/Userland/Applications
AgeCommit message (Collapse)Author
2021-10-28ThemeEditor: Display the theme's window icons in the previewSam Atkins
If the icons could not be loaded, we fall back to the defaults (which are the bitmaps that were always used before.)
2021-10-28ThemeEditor: Add PathRole editingSam Atkins
This allows both typing the path, and selecting it with a file-open dialog.
2021-10-28ThemeEditor: Update value edit boxes when loading a theme fileSam Atkins
Previously, these would continue to show the previously entered values, until you interacted with the ComboBoxes.
2021-10-28ThemeEditor: Add MetricRole editingSam Atkins
The editing UI at the bottom is now split into two groups, one for colors and one for metrics.
2021-10-28ThemeEditor: Convert layout to GMLSam Atkins
2021-10-28ThemeEditor: Display window shadows in preview :^)Sam Atkins
2021-10-28ThemeEditor: Give both preview windows a background colorSam Atkins
The inactive window previously didn't have a background fill, so it looked odd.
2021-10-28MouseSettings: Reset the double-click timer after every second clickJelle Raaijmakers
The old behavior of restarting the timer after every second click could result in double-click-chains (or triple+ clicks), which does not feel like the right behavior. By resetting the double-clicking timer, you need to perform a new full double-click to make the arrows change color again.
2021-10-27Everywhere: Rename left/right-click to primary/secondaryFiliph Sandström
This resolves #10641.
2021-10-27Piano: Fix typo in Copyright headerBen Wiederhake
This was introduced in 74f1f2b5e2ed9b06f7dc5c4a247c8512c8b3ec32. I have no idea why the checker script didn't pick it up. Bash bug maybe?
2021-10-25SoundPlayer: Implement playlist shuffle modeLeandro Pereira
The shuffling algorithm uses a naïve bloom filter to provide random uniformity, avoiding items that were recently played. With 32 bits, double hashing, and an error rate of ~10%, this bloom filter should be able to hold around ~16 keys, which should be sufficient to give the illusion of fairness to the shuffling algorithm. This avoids having to shuffle the playlist itself (user might have spent quite a bit of time to sort them, so it's not a good idea to mess with it), or having to create a proxy model that shuffles (that could potentially use quite a bit of memory).
2021-10-25SoundPlayer: Make M3UParser more idiomaticLeandro Pereira
Let's use the nice APIs we have, and make the M3U parser a bit more readable, shorter, and resilient.
2021-10-25SoundPlayer: Fix inconsistencies and code duplicationLeandro Pereira
This is a first pass at refactoring SoundPlayer so that the View widget is decoupled from the player itself. In doing so, this fixed a couple of issues, including possibly inconsistent states (e.g. player could be paused and stopped at the same time). With the change, Player actually controls the show, and calls methods overriden by its subclasses to perform actions, such as update the Seek bar; the hard work of massaging the raw data is done by the Player class, so subclasses don't need to reimplement any of these things. This also removes some copies of playlist management code that happened to be copied+pasted inside callbacks of buttons -- it now lives inside a neatly packaged Playlist class, and the Player only asks for the next song to play. In addition, the menu bar has been slightly rearranged.
2021-10-25MouseSettings: Add option to reverse buttonsAndrew Pardoe
Add option to reverse primary and secondary buttons in Mouse Settings. - WindowServer.ini: add default entry - switch-mouse-buttons.png: new icon for settings entry - Mouse.gml/MouseWidget.*: new settings dialog - ClientConnection/WindowManager/Server: window message for settings - EventLoop.cpp: swap buttons 1 and 2 if settings are on
2021-10-25Assistant: Fix adding sequential bonus in Fuzzy MatchKarol Kosek
It was comparing if they both had the same index position (which was always false).
2021-10-25Assistant: Save match all match points in Fuzzy MatchKarol Kosek
From what I think, the array should consist of point indexes that have been matched instead of just the last one. For example, these are the array contents after searching 'file' for 'File Manager': - Before: [ 3 ] - Now: [ 0, 1, 2, 3 ] Besides that, this greatly improves the scoring logic, as it can now calculate bonuses. Closes: #8310
2021-10-25Assistant: Simplify the logic of calculating bonus pointsKarol Kosek
This does not change the results, but makes the code clearer.
2021-10-25Assistant: Move score calculation logic to separate functionKarol Kosek
2021-10-25Assistant: Make strings const referencedKarol Kosek
Found by clazy.
2021-10-24LibJS: Rename PropertyName to PropertyKeyAndreas Kling
Let's use the same name as the spec. :^)
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-23TextEditor: Add syntax-highlighting for CSS filesSam Atkins
2021-10-22man.serenityos.org: Add section descriptions to overview pageBen Wiederhake
2021-10-20LibJS: Rename define_native_function => define_old_native_functionIdan Horowitz
This method will eventually be removed once all native functions are converted to ThrowCompletionOr
2021-10-20LibJS: Add ThrowCompletionOr versions of the JS native function macrosIdan Horowitz
The old versions were renamed to JS_DECLARE_OLD_NATIVE_FUNCTION and JS_DEFINE_OLD_NATIVE_FUNCTION, and will be eventually removed once all native functions were converted to the new format.
2021-10-19ImageViewer: Use scaled image size when resizing window to fit itNícolas F. R. A. Prado
When the image is flipped or rotated, the window is resized to ensure that the image still fits in the frame. However, currently the original bitmap rect is used, which doesn't take into account the scaling factor. Fix this by using the scaled rect instead.
2021-10-18Welcome: Save startup preference to user's SystemServer sessionthankyouverycool
Off by default.
2021-10-17SystemMonitor: Request symbolication wihout source positionsRodrigo Tobar
The Stack tab doesn't display this information anyway, so there's no need to have it calculated and returned to us.
2021-10-18LibJS: Convert to_length() to ThrowCompletionOrIdan Horowitz
2021-10-18LibJS: Convert to_i32() to ThrowCompletionOrIdan Horowitz
2021-10-18LibJS: Convert to_number() to ThrowCompletionOrIdan Horowitz
2021-10-17FontEditor: Accept file dropsKarol Kosek
2021-10-17FontEditor: Add FontEditorWidget::open_file() functionKarol Kosek
This part is also quite needed when opening files from drag-and-drop events.
2021-10-17FontEditor: Reuse the request_close() function in Open actionKarol Kosek
2021-10-17LibJS: Convert to_double() to ThrowCompletionOrIdan Horowitz
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-15SystemMonitor: Use a TableView to display the thread stackRodrigo Tobar
Using a table display this information in a much more organised and flexible way than than what can be achieved with a TextEditor.
2021-10-15SystemMonitor: Remove unnecessary header inclusionRodrigo Tobar
2021-10-13SystemMonitor: Save refresh frequency to a config fileUndefine
2021-10-13LibJS: Convert to_object() to ThrowCompletionOrLinus Groh
2021-10-13LibJS: Convert to_string() to ThrowCompletionOrLinus Groh
Also update get_function_name() to use ThrowCompletionOr, but this is not a standard AO and should be refactored out of existence eventually.
2021-10-10FileManager: Listen for changes to Desktop wallpaper in configMustafa Quraish
Since there's no global API for being able to just assign a callback function to config changes, I've made an inline struct in desktop mode with the sole purpose of checking to see if the Wallpaper entry has changed, and then updates GUI::Desktop. It's pretty neat seeing the wallpaper change as soon as you edit the config file :^)
2021-10-09SpaceAnalyzer: Make files removable depending on directory permissionsKarol Kosek
Prior this patch, you couldn't remove any files from the context menu if you didn't have write access to them. It was incorrect, as the write permission for files means that you can modify the contents of the file, where for directories it means that you can create, rename, and remove the files there.
2021-10-07PixelPaint: Close tab now prompts for a saveAlex Major
2021-10-07PixelPaint: Use reorderable tabsLuke Wilde
2021-10-07Browser: Use reorderable tabsPeter Elliott
2021-10-07SpaceAnalyzer: Fix rendering bug when dealing with large file systemsMart G
2021-10-07SystemMonitor: Use u64 for all GraphWidget valuessin-ack
Turns out size_t is not guaranteed to be 64-bit on i686 and trying to set the max value using a u64 caused a narrowing conversion.
2021-10-07SystemMonitor: Use size_t for graph valuessin-ack
The memory and CPU graphs fail to display anything when the memory size is larger than 2**31 bytes, because of the small range of int. This commit makes replaces the type with size_t. Hopefully nobody will have 18 quintillion bytes of memory before this gets replaced. :^)