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
Linus Groh
09d40bfbb2
Everywhere: Use _{short_,}string to create Strings from literals
2023-02-25 20:51:49 +01:00
Andreas Kling
33e87d1627
Userland: Fix remaining smart pointer const-correctness issues
2023-02-21 00:54:04 +01:00
Sam Atkins
6b66e39df4
LibGUI+Userland: Stop returning Layout from Widget::(try_)set_layout()
...
Nobody uses this return value any more. It also lets us remove a whole
bunch of `(void)` casts. :^)
2023-02-18 16:56:56 +00:00
Sam Atkins
77ad0fdb07
Userland: Specify margins and spacing in the GUI::Layout constructor
2023-02-18 16:56:56 +00:00
Tim Schumacher
874c7bba28
LibCore: Remove Stream.h
2023-02-13 00:50:07 +00:00
Tim Schumacher
606a3982f3
LibCore: Move Stream-based file into the Core
namespace
2023-02-13 00:50:07 +00:00
Tim Schumacher
d43a7eae54
LibCore: Rename File
to DeprecatedFile
...
As usual, this removes many unused includes and moves used includes
further down the chain.
2023-02-13 00:50:07 +00:00
Karol Kosek
e39adc4772
Userland: Set Button text using the new String class
2023-02-13 00:45:09 +00:00
Karol Kosek
f802920a3a
Userland: Use default initializer instead of an empty string for Buttons
2023-02-13 00:45:09 +00:00
Karol Kosek
d32b052f22
LibGUI+Userland: Add _deprecated
suffix to AbstractButton::{set_,}text
2023-02-13 00:45:09 +00:00
MacDue
63b11030f0
Everywhere: Use ReadonlySpan<T> instead of Span<T const>
2023-02-08 19:15:45 +00:00
Lucas CHOLLET
55c5639004
Chess+LibChess: Avoid using DeprecatedString
whenever possible
2023-02-06 10:18:16 +00:00
Lucas CHOLLET
e7377c6d60
Chess: Move ChessWidget
to the create pattern
2023-02-06 10:18:16 +00:00
Karol Baraniecki
506c26acce
LibGUI+Userland: Switch order of parameters for InputBox::show
...
Because usage of the input_type parameter is now higher than of the
placeholder parameter, this makes for a cleaner API.
2023-02-04 18:46:39 -07:00
Karol Baraniecki
8095d9276b
Userland: Replace manual checking by using GUI::InputType::NonemptyText
...
Do this where we were already checking if the input was empty after the
InputBox was submitted. Those places gain interactive input validation.
:^)
2023-02-04 18:46:39 -07:00
Sam Atkins
0f2936d8cd
Chess+GamesSettings: Give chess pieces some breathing room
...
Draw pieces around 80% of the size of a square, instead of 100%, so that
there is a nice gap around them. This feels more comfy, and makes it
actually possible to read the coordinates while a piece is on their
square.
2023-02-04 12:29:03 +01:00
Sam Atkins
7e4186de63
Chess+GamesSettings: Use the correct term for chess squares
...
"Square" is the technical term, so let's use it. :^)
Also, stop using size_t for pixel sizes, that's not what that means.
2023-02-04 12:29:03 +01:00
Sam Atkins
3fbebe73a8
Chess: Replace 'Style' menu with a link to GamesSettings
...
GamesSettings provides a nicer way of editing these, rather than having
them crammed into a menu.
2023-02-02 14:52:21 +01:00
Sam Atkins
89d7d29d68
Chess: Automatically update and repaint when the config changes
2023-02-02 14:52:21 +01:00
Sam Atkins
64c9c7a4da
Chess: Paint pieces using BilinearBlend instead of NearestNeighbor
...
This makes the pieces look a lot nicer when the window isn't the exactly
ideal size. Vector images might be worth pursuing later.
2023-02-02 14:52:21 +01:00
Sam Atkins
e9eeaedc24
Chess: Stop hiding the frame border
...
This `fill_rect()` call was covering the nice border that we just
painted a few lines earlier.
2023-02-02 14:52:21 +01:00
Sam Atkins
3d38b7a127
Chess: Move configuration values into the "Games" domain
...
Chess is a game, after all. This makes more sense once we have chess
settings in GamesSettings. :^)
2023-02-02 14:52:21 +01:00
Sam Atkins
1cb6494852
Chess: Stop trying to read non-existent window-size config value
...
Nobody ever sets this, and it doesn't seem especially useful, so let's
remove it.
2023-02-02 14:52:21 +01:00
Sam Atkins
ced59fb3a0
Spider: Make double-click skip the new-game animation
2023-02-01 14:19:15 +00:00
Sam Atkins
8744e8b561
Spider: Use a single State enum instead of a series of booleans
2023-02-01 14:19:15 +00:00
Sam Atkins
5de8b38783
Solitaire: Make double-click skip the new-game animation
2023-02-01 14:19:15 +00:00
Sam Atkins
e8d83b1ae1
Solitaire: Use a single State enum instead of a series of booleans
...
We had 4 different bools before, but the only valid states were either
that only one of them was true, or than none of them are true. An enum
is a better fit here, by enforcing that we can only be in one state at
a time.
2023-02-01 14:19:15 +00:00
Linus Groh
6e7459322d
AK: Remove StringBuilder::build() in favor of to_deprecated_string()
...
Having an alias function that only wraps another one is silly, and
keeping the more obvious name should flush out more uses of deprecated
strings.
No behavior change.
2023-01-27 20:38:49 +00:00
Tim Schumacher
82a152b696
LibGfx: Remove try_
prefix from bitmap creation functions
...
Those don't have any non-try counterpart, so we might as well just omit
it.
2023-01-26 20:24:37 +00:00
Sam Atkins
ccabc8e930
LibCards+Games: Return ErrorOr from CardStack::add_all_grabbed_cards()
...
...and CardGame::pick_up_cards_from_stack() which is its only caller.
2023-01-22 21:31:36 +00:00
Sam Atkins
c7c4d70f6e
LibCards+Games: Return ErrorOr from deck-creation factory functions :^)
...
Also, be smarter about appending cards to the deck: we can
unchecked_append them to the deck, since we already ensured enough
capacity earlier.
2023-01-22 21:31:36 +00:00
Sam Atkins
0855e9f014
LibCards+Game: Return ErrorOr from CardGame::drop_cards_on_stack()
2023-01-22 21:31:36 +00:00
Sam Atkins
8b3a94ffbc
LibCards+Games+GamesSettings: Return ErrorOr from CardStack::push()
...
Very few of these calls can propagate their errors yet, but one step at
a time. :^)
2023-01-22 21:31:36 +00:00
Sam Atkins
83687f85df
LibCards+Solitaire: Rename CardStack::move_to_stack()
-> take_all()
...
`a.move_to_stack(b)` sounded too much like it moves a's cards to b, when
it actually moves b's cards to a.
2023-01-22 21:31:36 +00:00
Sam Atkins
4b525fc98e
ColorLines: Use AK::shuffle() for shuffling
2023-01-20 17:45:33 +00:00
Sam Atkins
431c4165b5
Spider: Confirm ending the current game in more situations
...
As for Solitaire, we previously had a warning when trying to exit Spider
while a game was in progress. This adds the same functionality to other
actions that would end the current game: Starting a new one, or
changing the number of suits. When changing the number of suits, we do
apply the setting, so it will take effect for the next game that is
started.
2023-01-15 11:59:59 -05:00
Sam Atkins
8b59517ff2
Solitaire: Confirm ending the current game in more situations
...
We previously had a warning when trying to exit Solitaire while a game
was in progress. This adds the same functionality to other actions that
would end the current game: Starting a new one, or changing the number
of cards drawn. When changing the number of cards drawn, we do apply
the setting, so it will take effect for the next game that is started.
2023-01-15 11:59:59 -05:00
Liav A
e241b47fee
Userland: Remove a bunch of unveil calls on /sys/kernel/processes
...
These are not needed anymore since the introduction of the new
get_root_session_id syscall.
2023-01-13 13:41:30 +01:00
Sam Atkins
a8cf0c9371
LibCore+Userland: Make Core::Timer::create_single_shot() return ErrorOr
...
clang-format sure has some interesting opinions about where to put a
method call that comes after a lambda. :thonk:
2023-01-12 11:25:51 +01:00
Sam Atkins
a15d44f019
LibCore+Userland: Make Core::Timer::create_repeating() return ErrorOr
...
The FIXMEs must flow!
2023-01-12 11:25:51 +01:00
Lucas CHOLLET
a5d5b970ff
Chess: Port to Core::Stream
2023-01-07 20:05:24 +00:00
Sam Atkins
f0395a2042
LibGUI+Userland: Rename try_load_from_gml()
-> load_from_gml()
:^)
...
It's the only one, so the `try` prefix is unnecessary now.
2023-01-07 14:39:30 +01:00
Sam Atkins
54b1326165
Userland: Replace all uses of load_from_gml
with try_load_from_gml
...
MOAR FIXMES! ;^)
2023-01-07 14:39:30 +01:00
Karol Kosek
247db3fdd0
LibFileSystemAccessClient: Rename try_* functions to try_*_deprecated
...
These functions return the deprecated `Core::File` class, so let's mark
it as such to avoid possible confusion between future non try_*
functions which will use Core::Stream family classes and to possibly
grab someone's attention. :^)
2023-01-07 10:53:43 +00:00
Sam Atkins
0c24522635
LibGUI+Everywhere: Use fallible Window::set_main_widget() everywhere :^)
...
Rip that bandaid off!
This does the following, in one big, awkward jump:
- Replace all uses of `set_main_widget<Foo>()` with the `try` version.
- Remove `set_main_widget<Foo>()`.
- Rename the `try` version to just be `set_main_widget` because it's now
the only one.
The majority of places that call `set_main_widget<Foo>()` are inside
constructors, so this unfortunately gives us a big batch of new
`release_value_but_fixme_should_propagate_errors()` calls.
2023-01-06 13:36:02 -07:00
Sam Atkins
98603e2b20
Solitaire: Replace animation Card with manual painting
...
Repeatedly allocation a new Card object is unnecessary, and makes
propagating OOM awkward. We also don't need a full card, just which
suit/rank it is and its position. So, let's save all the extra
allocation and just paint the card bitmap directly.
2023-01-06 16:03:50 +01:00
Sam Atkins
80c7ac0d0e
Spider: Highlight valid target stack when hovering over it
...
This is largely copied and pasted from Solitaire. Moving this into
LibCards somehow would be nice but I can't think of a nice way to do so
right now.
2023-01-06 16:03:50 +01:00
Sam Atkins
e193679352
Spider: Make Game creation fallible
2023-01-06 16:03:50 +01:00
Sam Atkins
f9f6bf3cd4
Spider: Save and load u32 config values as u32s
2023-01-06 16:03:50 +01:00