summaryrefslogtreecommitdiff
path: root/Userland/Applications
AgeCommit message (Collapse)Author
2021-12-21LibC+AK: Implement all sorts of wprintf variantsAli Mohammad Pur
2021-12-20Help: Include page names in the searchSam Atkins
This fixes the problem before, where searching "Shell" would list "Shell-vars" in the results, but searching "Shell-vars" would make it disappear. Also removed some now-unnecessary includes.
2021-12-20Help: Add support for launching with a section and page, like manSam Atkins
I found it strange that `man` and `Help` did not accept the same command line arguments since they are so similar. So... now they do. :^) This means you can now open for example the `tar` man page in Help with `Help tar`, or `Help 1 tar` if you want to disambiguate between pages in different sections. If the result is not found, it falls back to the previous behavior, treating the input as a search query. Initially I had this written as two optional positional arguments, but when told to parse `[optional int] [optional string]`, and then given a string input, ArgsParser forwards it to the [optional int], which then fails to parse. Ideally it would pass it to the second, [optional string] arg instead, but that looks like a fairly big change to make to ArgsParser's internals, and risk breaking things. Maybe this ugly hack will be an incentive to fix it. :^)
2021-12-20Help: Move `update_actions()` code into `open_page()`Sam Atkins
These two lambdas are always called together, in this order, so why not make them one instead? Also converted a couple of west-consts to east-const.
2021-12-20Help: Always show the welcome page on launch if nothing else is thereSam Atkins
Previously, launching Help with a query like `Help tar` left the page blank, which looks like something has gone wrong. Instead, let's show the usual welcome page.
2021-12-20Magnifier: Add timeline for easy checking of animationsJunior Rantila
This patch adds a 512 frame timeline to Magnifier and the ability to step through it with the arrow keys. This makes it easier to check Serenity animations frame by frame for correctness etc.
2021-12-20Piano: Make `Key_Space` shortcut to toggle playbackJunior Rantila
2021-12-19SystemMonitor: Add back accidentally removed veil lockIdan Horowitz
Since the call to lock the veil was missing, the protections provided by unveil() were not actually enabled.
2021-12-17AnalogClock: Port to LibMainAstraeus-
2021-12-17About: Port to LibMainAstraeus-
2021-12-16Spreadsheet: Handle emptying of cell containing only an '='RasmusNylander
Cell::set_data(String new_data) now checks whether the cell is a formula-cell and the new_data is an empty string. If this is case, it will no longer simply return and will now instead actually set the cell's contents to an empty string. This fixes an error whereupon committing the string "=" to a cell, it would not be possible to directly delete the cell's contents. Instead, it first had to be overwritten with another string, which then could be deleted. This could probably be done more elegantly. Right now, I believe, writing the string "=" to a (formula-)cell already containing an identical string will result in the cell being marked as dirty, even though nothing actually changed.
2021-12-12Spreadsheet: Avoid using Value.to_string_without_side_effects()Ali Mohammad Pur
We should use .to_string() and handle the possible exceptions. This makes the displayed cell contents so much more informative than '[object Object]' :^)
2021-12-12Spreadsheet: Replace hacky JS VM configuration with a more correct oneAli Mohammad Pur
Now we give each sheet its own interpreter and realm, and only make them share the VM. This is to prepare for the next commit, which will be refactoring a bunch of things to propagate exceptions via ThrowCompletionOr<T>.
2021-12-12Spreadsheet: Replace the help button's text with something we can renderAli Mohammad Pur
2021-12-12Spreadsheet: Reimplement ranges as lazy objects instead of arraysAli Mohammad Pur
Doing so makes it possible to talk about theoretically infinite ranges like "all of column A".
2021-12-12Spreadsheet: Don't recreate the global environment on every evaluationAli Mohammad Pur
The worksheet's realm does not change, and is not shared, so we can safely leave the global environment be. This fixes lexical scoping in the spreadsheet's runtime file.
2021-12-12Userland: Use File::lines() range-based for loop where appropriateSahan Fernando
2021-12-11Mail: Ask the user if they want to see the mail settingsUndefine
2021-12-11Piano: Add track controls to the player widgetJose Flores
Adds the ability to add a track and cycle through the tracks from player widget. Also displays the current track being played or edited in a dropdown that allows for quick track selection.
2021-12-11CrashReporter: Remove redundant pledge()bugreport0
2021-12-11Everywhere: Fix -Winconsistent-missing-override warnings from ClangDaniel Bertalan
This option is already enabled when building Lagom, so let's enable it for the main build too. We will no longer be surprised by Lagom Clang CI builds failing while everything compiles locally. Furthermore, the stronger `-Wsuggest-override` warning is enabled in this commit, which enforces the use of the `override` keyword in all classes, not just those which already have some methods marked as `override`. This works with both GCC and Clang.
2021-12-10Browser+LibWeb+WebContent: Add variables display to InspectorSam Atkins
This allows us to see which custom properties apply to a given element, which previously wasn't shown.
2021-12-09HackStudio+TextEditor: Persist EditingEngineType across editorsscwfri
Persist EditingEngine mode in HackStudio and TextEditor when opening new files or editing splits. Previously, the EditingEngine defaulted to a RegularEditingEngine for a new Editor, even if Vim Emulation had been selected in the existing Editor.
2021-12-08Spreadsheet: Avoid implicitly copying ByteBufferBen Wiederhake
2021-12-05Applications: Cast unused smart-pointer TRY return values to voidSam Atkins
2021-12-05Userland: Cast unused BackgroundAction::construct() results to voidSam Atkins
User code does not need to keep this alive, so casting to void is safe. But maybe a bit weird.
2021-12-04SoundPlayer: Port to LibMain :^)Elyse
2021-12-04SystemMonitor: Port to LibMain :^)Andreas Kling
There's a lot more work to do on this application to take full advantage of TRY() etc. This patch just scratches the surface.
2021-12-04CrashReporter: Port to LibMain and use TRY() while building the UI :^)Andreas Kling
2021-12-013DFileViewer: Add checkbox to disable textureJelle Raaijmakers
2021-11-30CrashReporter: Remove unnecessary button height overrides from GMLAndreas Kling
2021-11-30CrashReporter+HackStudio: Let's call it "Debug in Hack Studio"Andreas Kling
"Inspect in Hack Studio" was a bit vague.
2021-12-01Spreadsheet: Allow sheet renaming after double clicking on the tabwidgetErik Biederstadt
2021-11-30LibGUI+FontEditor: Allow ComboBox on_change callback to be toggledthankyouverycool
When calling set_selected_index() on ComboBox, allow its on_change callback to be disabled. Fixes FontEditor window state erroneously switching to modified when initializing between different slopes and weights.
2021-11-30FontEditor: Convert to east constthankyouverycool
2021-11-30FontEditor: Correct member type and initialization in UndoGlyphthankyouverycool
Makes code_point type u32, consistent with the rest of the system, and properly initializes it.
2021-11-30FontEditor: Remove unused Vector<String>thankyouverycool
2021-11-30FontEditor: Correct NewFontDialog layout issuesthankyouverycool
Fixes incorrect scale initialization and inconsistent margins, sets minimum values for glyph width and height to 1, and labels page 1 more precisely as "Typeface" properties.
2021-11-30FontEditor: Clean up GlyphMapWidget headerthankyouverycool
Fixes minor organizational inconsistency and zeroes initializations for rows and columns as the previous values haven't been meaningful since the map was converted to a scrollable widget. No functional changes.
2021-11-30FontEditor: Remove superfluous 'this' pointersthankyouverycool
2021-11-30LibGfx+FontEditor: Consolidate BitmapFont width and height limitsthankyouverycool
And make them more self-documenting. Previously these constraints were duplicated across multiple files.
2021-11-30FontEditor: Add scaled offset members to GlyphEditorthankyouverycool
Previously these were undescriptive globals making them a bit cryptic.
2021-11-30FontEditor: Update status bar on initializationthankyouverycool
Fixes incorrect glyph status immediately after loading a new font.
2021-11-30FontEditor: Remove code duplication when resizing GlyphEditorthankyouverycool
The left column now also enforces a minimum width to prevent especially small fonts from hiding the glyph toolbars and width widgets.
2021-11-30FontEditor: Account for glyph width when pastingthankyouverycool
Fixes glyphs not expanding up to their maximum width if necessary when pasting larger glyphs into smaller ones.
2021-11-30FontEditor: Don't allow cutting and copying absent glyphsthankyouverycool
And update status bar on cut. Fixes placing these effectless actions on the undo stack.
2021-11-30FontEditor: Don't null check newly created NonnullRefPtr fontsthankyouverycool
2021-11-30FontEditor: Factor out redundant code for a request to closethankyouverycool
2021-11-30FontEditor: Convert mode and transform buttons into toolbar actionsthankyouverycool
This will let us more easily organize and assign shortcuts to new modes and transformations as they are built, and it generally looks more polished as a uniform interface. Also adds a counterclockwise option to the rotate action, moves Copy as Character to the edit menu as it doesn't directly impact GlyphEditor, and makes the paint and move modes exclusive checkables to make the editor's state more visually obvious.
2021-11-30FontEditor: Simplify start-upthankyouverycool
Previusly a cloned or newly loaded font was moved twice from main to the constructor and then from constructor to an init routine where it was finally used. The unmasked font is now moved only once, directly to initialization, and redundant error checking is discarded.