Commit graph

20827 commits

Author SHA1 Message Date
Andreas Kling 5424372d50 AudioServer: Remove unnecessary greet() message 2021-05-23 09:53:55 +02:00
Andreas Kling e7fc46879e LaunchServer: Remove unnecessary greet() message 2021-05-23 09:53:55 +02:00
Andreas Kling de07dab184 ImageDecoder: Remove unnecessary greet() message
This didn't do anything except induce an IPC stall during startup.
2021-05-23 09:53:55 +02:00
Brian Gianforcaro 6ebec090c3 Userland: Allow nc to connect by hostname instead of just address
Allow the user to pass in a hostname to the connect functionality
instead of just an ip address. The call to gethostbyname(..) handles
both seamlessly for us.

Update the argument name / usage message accordingly.
2021-05-23 09:19:16 +02:00
Brian Gianforcaro 2b10c34f5c Meta: Clarify atomic commits in CONTRIBUTING.md 2021-05-23 08:38:30 +02:00
Daniel Bertalan 8262d6fc68 Utilities: Implement stty
This commit adds support for most of the useful POSIX-defined features.
This will come in handy when dealing with serial terminals that are
implemented in #7260.

Unfortunately, it isn't possible to use `Core::ArgsParser` due to the
oddity of the input format. Most of this code is therefore just data
wrangling and parsing.
2021-05-23 09:04:24 +04:30
Brian Gianforcaro 529a8664f4 Userland: Tweak the visual display of the bt utility
This patch adds a few minor visual features to the `bt` utility:
- Number each frame of the back trace.
- Color the address based on if it's in kernel or user space.
- Add a "frames:" heading to visually seperate the thread id.
- Rename "tid: <tid>" -> "thread: <tid>" as it's more visually
  appealing since it aligns vertically with "frames:"
- Add a visual " | " seperate between the address and symbol name.
2021-05-23 09:00:13 +04:30
Andreas Kling 786f6841b3 SystemMonitor: Remove "Inspect Process" action from context menu
Since everyone opts out of being inspectable by default now, let's not
offer inspection from the menu since it will fail in a default setup.
2021-05-22 23:30:40 +02:00
Andreas Kling c9e849a968 LibCore: Make all processes opt out of InspectorServer by default
This functionality, while neat, isn't really something you need enabled
all the time. Let's make it opt-in instead. Pass MakeInspectable::Yes
to the Core::EventLoop constructor if you want your program to become
inspectable.
2021-05-22 23:30:40 +02:00
Carlos César Neves Enumo 76a07b31e4 TextEditor: Prevent pasting with empty clipboard
Prevent erasing selected text when pasting with empty clipboard
2021-05-22 23:23:30 +02:00
Daniel Bertalan 282d0ebbec LibVT: Fix UTF-8 handling in OSC sequences
Previously, we would ignore bytes in the `0x80..0xff` range when parsing
OSC strings. This caused terminal titles and hyperlinks containing
non-ASCII characters to fail. Also added is extending the UTF-8 fail
functionality for C1 control codes, since we do not handle those.

Fixes #7377
2021-05-22 23:23:08 +02:00
Andreas Kling 62819df713 Profiler: Allow scaling the timeline with Ctrl+MouseWheel :^) 2021-05-22 23:20:31 +02:00
Andreas Kling 3dfc3e362b LibGUI: Make GUI::Variant stringify floats with 2 decimals
The extremely high default precision was obnoxious in user interfaces.
2021-05-22 23:08:23 +02:00
Andreas Kling 4a843f7405 Profiler: Allow scrolling through full range of profile timeline
We were not taking the width of the process headers into account when
computing the scrollable content size of the timeline.

Fix this by passing the header width to AbstractScrollableWidget's
set_size_occupied_by_fixed_elements().
2021-05-22 23:02:51 +02:00
Andreas Kling 29e00cda2e Profiler: Add a "Show Disassembly" action (and hide it by default) 2021-05-22 22:49:19 +02:00
Andreas Kling 863ac3af97 Profiler: Add some helpful debug output if a process is missing
I've had a couple of instances where a profile was missing process
creation events for a PID. I don't know how to reproduce it yet,
so this patch merely adds a helpful debug message so you know why
Profiler is failing to load the file.
2021-05-22 22:23:52 +02:00
Andreas Kling cefb321da4 Kernel: Print a message to debug log after writing a perfcore file 2021-05-22 22:23:52 +02:00
Andreas Kling 8a5c78e93b Profiler: Split the call tree into one subtree per process
This patch adds an additional level of hierarchy to the call tree:
Every process gets its own top-level node. :^)

Before this, selecting multiple processes would get quite confusing
as all the call stacks from different processes were combined together
into one big tree.
2021-05-22 22:23:52 +02:00
NonStandardModel 65a341b82f
Base: Fix numeric keypad in slovenian keymap
Numeric keypad map was off-by-one.
2021-05-22 21:00:08 +01:00
Andreas Kling 9676548800 SystemMonitor: Symbolicate process stacks in a background thread
Use a Threading::BackgroundAction to symbolicate stacks. This avoids
blocking the main thread and keeps the GUI running (mostly.)
2021-05-22 19:57:19 +02:00
Andreas Kling b5d73c834f Userland: Rename LibThread => LibThreading
Also rename the "LibThread" namespace to "Threading"
2021-05-22 18:54:22 +02:00
Andreas Kling 5729b4e9a5 SystemMonitor: Don't unveil /tmp/portal/symbol
This portal doesn't exist after SymbolServer has been removed.
2021-05-22 18:54:22 +02:00
Andreas Kling 5d6252b29e LibSymbolication: Rename Client.{cpp,h} => Symbolication.{cpp,h} 2021-05-22 18:54:22 +02:00
Andreas Kling b00b9e699c LibSymbolication: Name the shared object libsymbolication.so 2021-05-22 18:54:22 +02:00
Andreas Kling 85dd5b810b Documentation: Update bt(1) man page for symbolication changes 2021-05-22 18:54:22 +02:00
Andreas Kling 9c2786b872 Userland: Remove SymbolServer and the "symbol" user+group 2021-05-22 18:54:22 +02:00
Andreas Kling 252cb54310 LibSymbolication+SystemMonitor+bt: Move symbolication back in-process
Process-separated symbolication was cute, but ultimately the threat
model is kinda silly. We're already *running* the binary, but we're
afraid to parse its symbol table? :^)

This commit makes SystemMonitor and bt do symbolication in-process.
SymbolServer and the symbol user will be removed separately.
2021-05-22 18:54:22 +02:00
Andreas Kling d783076a30 Userland: Rename LibSymbolClient => LibSymbolication 2021-05-22 18:54:22 +02:00
Gunnar Beutner 21cd278b8a Userland: Rename e1k0 to ep0s7 2021-05-22 15:42:54 +01:00
Gunnar Beutner e087a65775 Userland: Rename loop0 to loop
Now that the kernel picks a different name for the loopback adapter
we should update userland to account for this.
2021-05-22 15:42:54 +01:00
Brendan Coles e5e00bec8f HexEditor: Construct user interface from GML 2021-05-22 15:41:58 +01:00
Itamar 6738a966ec CppLanguageServer: Add test case for auto-completing include paths 2021-05-22 15:52:11 +02:00
Itamar b9021f8631 Meta: Exclude LibCpp&LanguageServer tests from check-newlines-at-eof.py 2021-05-22 15:52:11 +02:00
Itamar c003c3c76d CppLanguageServer+LibGUI: Autocomplete #include paths
The C++ language-server can now autocomplete include paths.

Paths that start with '<' will be searched in /usr/include, and paths
that start with '"' will be searched in the project's root directory.
2021-05-22 15:52:11 +02:00
Itamar ccd491594f LibGUI: Increase width of Autocomplete suggestions box 2021-05-22 15:52:11 +02:00
Itamar c4ff7c6f8e LanguageServers: Add FileDB::project_root() getter 2021-05-22 15:52:11 +02:00
Itamar b50eaf75eb CppLanguageServer: Rename Optional<> autocomplete* to try_autocomplete*
autocomplete_property => try_autocomplete_property
autocomplete_name => try_autocomplete_name

This makes it more clear that these variants may fail because e.g
the node is not a property / not a name.
2021-05-22 15:52:11 +02:00
Itamar 0522a4360b LibCpp: Add option in Preprocessor to keep #include's in processed text 2021-05-22 15:52:11 +02:00
Itamar 14e0011825 LibCpp: Make Preprocessor::handle_preprocessor_line return keyword
This also moves most of the logic that was in handle_preprocessor_line
into handle_preprocessor_keyword.
2021-05-22 15:52:11 +02:00
Itamar 1c3c043cd3 CppLanguageServer: Rename all_definitions=>preprocessor_definitions 2021-05-22 15:52:11 +02:00
Itamar 1f96d9b03a CppLanguageServer: remove no-op move() 2021-05-22 15:52:11 +02:00
Itamar 0c9db38e8f LibCpp: Modify Token::to_string() to include more information
Token::to_string() now includes not only the token's type, but also its
text and span in the document.
2021-05-22 15:52:11 +02:00
Brendan Coles cdea9f5339 HexEditor: Fix typo: ASCII 2021-05-22 14:24:07 +01:00
Brendan Coles efafd0ee28 Base: Add go-to.png 16x16 icon 2021-05-22 14:09:48 +01:00
Jelle Raaijmakers 2137675047 AK/NumericLimits: Add lowest() for floating-point types 2021-05-22 13:38:34 +01:00
Gunnar Beutner 661a8707f0 LibCards: Fix alignment for the card labels
Previously the code didn't take into account that the label for the
"10" card is larger than for the other cards.
2021-05-22 13:15:59 +01:00
Marcus Nilsson ee48dac300 Bitmap: Don't call Bitmap::create with width/height equal to 0
With very small bitmaps and small scale factor, such as tile.png, the
type conversion in the call to Bitmap:create would cause width or
height to be 0.

Fixes #7352
2021-05-22 13:26:08 +02:00
Gunnar Beutner 1ae18c1228 Hearts: Let the AI pick better lead cards
Instead of picking the card with the lowest value we should pick the
card with the highest value for which we know no lower value card is
in play anymore and that someone else still has an even higher value
card.
2021-05-22 12:03:31 +01:00
Gunnar Beutner c2a4b581fe Hearts: Prefer to play Queen of Spades when we're the trailing player
Previously in a trick like 2S, KS, 5S we'd rather follow up with AS
instead of QS. We should prefer to play QS in this case.
2021-05-22 12:03:31 +01:00
Gunnar Beutner 0dd22c4e23 Hearts: Fix crash when starting an animation when there already is one
This ensures that the preceding animation is stopped first.
2021-05-22 12:03:31 +01:00