Commit graph

3092 commits

Author SHA1 Message Date
Aliaksandr Kalenik
54a1ec2f10 Browser: Handle close event in WebContentView 2023-03-07 11:34:11 +00:00
Mathis Wiehl
f276e70ac9 Help: Don't defer tree view selection updates
It is unsafe to defer this selection update, because ::open_url itself
is called when users make selection updates, creating a race.

This fixes and infinite selection change loop one could easily reproduce
by holding an up or down arrow key in the tree view while clicking on a
tree view item a couple of times.
2023-03-07 09:50:50 +01:00
Andreas Kling
be91020d0b Settings: Remove outdated comment about NonnullPtrVector 2023-03-06 23:46:36 +01:00
Andreas Kling
2973298df1 Assistant: Remove outdated comment about NonnullPtrVector 2023-03-06 23:46:36 +01:00
Andreas Kling
21db2b7b90 Everywhere: Remove NonnullOwnPtr.h includes 2023-03-06 23:46:35 +01:00
Andreas Kling
359d6e7b0b Everywhere: Stop using NonnullOwnPtrVector
Same as NonnullRefPtrVector: weird semantics, questionable benefits.
2023-03-06 23:46:35 +01:00
Andreas Kling
689ca370d4 Everywhere: Remove NonnullRefPtr.h includes 2023-03-06 23:46:35 +01:00
Andreas Kling
8a48246ed1 Everywhere: Stop using NonnullRefPtrVector
This class had slightly confusing semantics and the added weirdness
doesn't seem worth it just so we can say "." instead of "->" when
iterating over a vector of NNRPs.

This patch replaces NonnullRefPtrVector<T> with Vector<NNRP<T>>.
2023-03-06 23:46:35 +01:00
timre13
eef07a411b VideoPlayer: Create submenu to set sizing mode
Also add icon to the sizing mode cycling button.
2023-03-06 20:28:22 +00:00
Matthew Olsson
6003bcfd2d Browser: Add a missing include in InspectorWidget 2023-03-06 13:05:43 +00:00
Sam Atkins
a1baa5cb00 CharacterMap: Make the search happen as you type 2023-03-05 23:03:32 +01:00
Sam Atkins
1f0f96e6d7 CharacterMap: Limit the number of results from the GUI character search
Past a few hundred matches, the search is no longer useful, and takes an
excessive amount of time to recalculate the column widths by measuring
thousands of pieces of text. 250 seems like a reasonable arbitrary
limit, and keeps things nice and snappy. :^)
2023-03-05 23:03:32 +01:00
Sam Atkins
bb8bd48dc0 CharacterMap: Pause updates while generating search results
Co-authored-by: Tim Flynn <trflynn89@pm.me>
2023-03-05 23:03:32 +01:00
Sam Atkins
8110cf9fab PartitionEditor: Migrate to Directory::for_each_entry() 2023-03-05 20:23:42 +01:00
Sam Atkins
3c25a9b5fe MouseSettings: Migrate to Directory::for_each_entry() 2023-03-05 20:23:42 +01:00
Sam Atkins
1b776bffcf KeyboardSettings: Migrate to Directory::for_each_entry() 2023-03-05 20:23:42 +01:00
Sam Atkins
8f3c77a5a3 ImageViewer: Migrate to Directory::for_each_entry() 2023-03-05 20:23:42 +01:00
Sam Atkins
c325a656ec GamesSettings: Migrate to Directory::for_each_entry() 2023-03-05 20:23:42 +01:00
Sam Atkins
442dd133bb FileManager: Migrate to Directory::for_each_entry() 2023-03-05 20:23:42 +01:00
Sam Atkins
3daaf47607 Assistant: Migrate to Directory::for_each_entry() 2023-03-05 20:23:42 +01:00
Sam Atkins
774f328783 LibCore+Everywhere: Return an Error from DirIterator::error()
This also removes DirIterator::error_string(), since the same strerror()
string will be included when you print the Error itself. Except in `ls`
which is still using fprintf() for now.
2023-03-05 20:23:42 +01:00
Sam Atkins
ac824677b8 TextEditor: Enable CMake syntax highlighting 2023-03-04 05:43:43 -07:00
Andreas Kling
3ad498f2e0 CharacterMap: Tweak layout & style of "find character" window 2023-03-04 00:29:38 +01:00
Andreas Kling
b71c7a6e44 Userland: Use Font::pixel_size_rounded_up() instead of glyph_height()
The only remaining clients of this API are specific to bitmap fonts and
editing thereof.
2023-03-04 00:29:38 +01:00
Andreas Kling
f6f62d7ff6 TerminalSettings: Move scrollback settings from "Terminal" to "View"
The scrollback is really a property of the view, not the terminal.
2023-03-03 15:38:59 +01:00
Andreas Kling
3823f77d20 TerminalSettings: Spruce up the "Terminal" tab a bit
- Use sentence style capitalization for CheckBox and GroupBox titles
- Remove excessive explanation of bell mode.
- Put a "lines" label after the scrollback history length input instead
  of saying "(Lines)" in the GroupBox title.
- Tweak bell mode titles to make them self explanatory.
- Tweak language for exit confirmation.
2023-03-03 15:38:59 +01:00
Andreas Kling
880504e51d TerminalSettings: Spruce up the "View" tab a bit
- Use sentence style capitalization for CheckBox and GroupBox titles.
- Move the terminal font to the top.
- Split the cursor settings into two GroupBoxes (one for the shape,
  and one for the blinking behavior).
2023-03-03 15:38:59 +01:00
Andreas Kling
df0bf51441 TerminalSettings: Adjust layouts
Remove assymmetric vertical padding in various places.
2023-03-03 15:38:59 +01:00
Andreas Kling
165b077815 TerminalSettings: Change tab order
Let's put the "View" tab first, since the most common reason to open
TerminalSettings is to adjust something about the appearance.
2023-03-03 15:38:59 +01:00
Andreas Kling
d0977ac566 LibCore+LibGUI+About: Use String in Core::Version and GUI::AboutDialog
The Core::Version API now returns ErrorOr<String>, and the
GUI::AboutDialog API was adjusted to accommodate this.
2023-03-03 15:23:47 +01:00
Ali Mohammad Pur
500044906d LibCore+Everywhere: Remove ArgsParser::add*(char const*&)
This is not guaranteed to always work correctly as ArgsParser deals in
StringViews and might have a non-properly-null-terminated string as a
value. As a bonus, using StringView (and DeprecatedString where
necessary) leads to nicer looking code too :^)
2023-03-01 10:47:19 +01:00
Andreas Oppebøen
60908adcbe SoundPlayer: Add action with icon for toggling mute
This adds a button on the menubar next to the volume slider to
indicate mute state and allow toggling the mute. Pressing the M key
will still toggle the mute, as before. When muted, the volume scroll
bar now gets disabled.
2023-03-01 09:04:48 +00:00
Tim Ledbetter
e33791502f PixelPaint: Do not change layers when scaling with the move tool
The move tool will no longer change the foreground layer if the cursor
is currently hovering over a resize anchor.
2023-03-01 08:15:46 +00:00
Linus Groh
51c3967516 Everywhere: Use '_{short_,}string' literals more
This mostly updates code what was written before but merged after these
were added.
2023-02-28 15:15:36 +00:00
Andreas Kling
d0ba5f2ed7 ImageViewer: Add list of recently open files to the File menu :^) 2023-02-28 14:39:32 +01:00
Andreas Kling
5f23515796 TextEditor: Add list of recently open files to the File menu :^) 2023-02-28 14:39:32 +01:00
Andreas Kling
7e76a51cb0 LibWeb: Rename Layout::InitialContainingBlock to Layout::Viewport
The name "initial containing block" was wrong for this, as it doesn't
correspond to the HTML element, and that's specifically what it's
supposed to do! :^)
2023-02-28 12:21:56 +01:00
Tim Ledbetter
f3d1be933a PixelPaint: Remove shrink_to_fit property from LevelsDialog GML
This was causing the levels dialog to be displayed incorrectly.
2023-02-28 08:44:05 +00:00
Tim Ledbetter
3112a6b44f PixelPaint: Fix clicking on the layer menu with no image loaded
Previously, clicking on the layer menu with no image loaded would
cause a crash.
2023-02-28 08:37:10 +00:00
Tim Ledbetter
ef54a3c0d2 PixelPaint: Disable levels dialog action when no image is loaded
Previously, clicking on the levels dialog with no image loaded would
cause a crash.
2023-02-28 08:37:10 +00:00
Patryk Pilipczuk
b87b1472e1 HexEditor: Add BE decoding for UTF16String column in ValueInspector 2023-02-27 13:39:40 +01:00
Tim Ledbetter
ec5d2a5144 Spreadsheet: Fix column index to number conversion
The output of Spreadsheet::convert_from_string() is now correct for
numbers larger than 26^2.
2023-02-26 21:06:21 +03:30
Tim Ledbetter
799d570afc PixelPaint: Add "Apply Mask" action
This commit adds a "Apply Mask" action which merges the active layer
mask with the layer bitmap. The option is only displayed if the active
layer is masked.
2023-02-26 13:09:16 +01:00
Tim Ledbetter
062c9efa88 PixelPaint: Add "Delete Mask" action
This commit adds a "Delete Mask" action which deletes the active layer
mask. The option is only displayed if the active layer is masked.
2023-02-26 13:09:16 +01:00
kleines Filmröllchen
7b3b743f88 Piano: Move octave controls into main widget
This is not related to the track controls and it may move into another
separate widget in the future. The move also allows to simplify the
octave slider callback logic.
2023-02-25 20:49:41 -07:00
kleines Filmröllchen
9f5f6b3868 Piano: Clean up code style with help from clang-tidy
Includes shadowed variables and if-else return.
2023-02-25 20:49:41 -07:00
kleines Filmröllchen
401a21e4f4 Piano: Improve handling of possibly null parameter label
The current implementation could crash in various locations if the label
was null.
2023-02-25 20:49:41 -07:00
kleines Filmröllchen
cf6676beb2 Piano: Rename KnobsWidget to TrackControlsWidget
This more generic name will better reflect the purpose of the widget in
the future, as this commit begins the long process of enhancing the
widget into a container for all controls of Piano's currently selected
track.
2023-02-25 20:49:41 -07:00
Linus Groh
09d40bfbb2 Everywhere: Use _{short_,}string to create Strings from literals 2023-02-25 20:51:49 +01:00
kleines Filmröllchen
76b71fcb75 LibDSP: Get rid of DeprecatedString
This was a rather easy change, since only parameter names make use of
strings in the first place.

This also improves OOM resistance: If we can't create a parameter name,
we will just set it to the empty string.
2023-02-25 15:41:01 +01:00