Commit graph

36712 commits

Author SHA1 Message Date
kleines Filmröllchen
e6fe66594e LibGUI: Register LazyWidget 2022-04-03 12:21:05 +02:00
kleines Filmröllchen
6d00932612 SystemMonitor: Move NetworkStatisticsWidget into namespace + register it
We don't want to clobber the global namespace with registered widgets.
2022-04-03 12:21:05 +02:00
kleines Filmröllchen
7e34b88ed4 LibGUI: Fully support TabWidget in GML
TabWidgets couldn't be used in GML properly, as the GML creation
routines didn't actually call the necessary functions in the TabWidget
to get a new tab added. This commit fixes that by making the name of the
tab a normal property, the previously introduced "title", which can be
trivially set from GML. Therefore, try_add_widget() loses an argument
(while try_add_tab doesn't, because it newly constructs the widget).
This allows us to get rid of the silly "fixing my widget tree after the
fact" code in Help and will make it super easy to use TabWidget in
future GML. :^)
2022-04-03 12:21:05 +02:00
kleines Filmröllchen
0410414455 LibGUI: Add a title to all Widgets
This title is a generic user-facing name for the widget. For now, it's
only used by TabWidget for tab names.
2022-04-03 12:21:05 +02:00
Brendan Coles
fd6d87df82 netstat: Resolve ports to service names 2022-04-03 12:08:41 +02:00
djwisdom
64564a54d4 Base: Add to documentation 4th method of transferring files
Update documentation with focus on enabling openssh
in SerenityOS and on the proper usage of sftp client to
transfer files.
2022-04-02 19:36:24 -07:00
James Mintram
9186ed3101 Kernel: Add all memory files to aarch64 and fix resulting linker errors 2022-04-02 19:34:20 -07:00
James Mintram
2e63215346 Kernel: Re-add AK files to aarch64 2022-04-02 19:34:20 -07:00
James Mintram
d79c772c87 Kernel: Make MemoryManager compile on aarch64 2022-04-02 19:34:20 -07:00
James Mintram
6299a69253 Kernel: Make handle_crash available to aarch64 2022-04-02 19:34:20 -07:00
James Mintram
d3b6201b40 Kernel: Make PageDirectory.cpp compile on aarch64 2022-04-02 19:34:20 -07:00
James Mintram
783a44b18e Kernel: Make PhysicalRegion.cpp compile on aarch64 2022-04-02 19:34:20 -07:00
James Mintram
0d7eee625f Kernel: Make AddressSpace.cpp compile on aarch64 2022-04-02 19:34:20 -07:00
James Mintram
627fd231d5 Kernel: Make Region.cpp compile on aarch64 2022-04-02 19:34:20 -07:00
James Mintram
a883079b29 Kernel: Add missing new/delete and kcalloc to dummy.cpp 2022-04-02 19:34:20 -07:00
James Mintram
031b0c76b5 Kernel: Re-add dummy.cpp and remove duplicate definitions 2022-04-02 19:34:20 -07:00
James Mintram
d50e237281 Kernel: Add idle_thread() to aarch64 Processor.h 2022-04-02 19:34:20 -07:00
James Mintram
026efae8a8 Kernel: Add PAGE_MASK to an aarch64 CPU header 2022-04-02 19:34:20 -07:00
Linus Groh
83e8dfae38 LibJS: Use AK::Time in system_utc_epoch_nanoseconds()
This also uses <time.h> APIs internally, but wraps them in a much nicer
interface.
2022-04-03 01:10:31 +01:00
serenityosrocks
4a6a7cf3c8 AK: Add generic sincos solution for non-x86 platforms 2022-04-03 00:31:41 +01:00
Simon Wanner
ea9857a423 LibWeb: Add the requestIdleCallback/cancelIdleCallback API 2022-04-02 23:52:25 +01:00
Simon Wanner
836d2ff259 LibWeb: Implement the infrastructure necessary for requestIdleCallback
This includes a bug fix for the event loop processing steps which has
not been merged yet: https://github.com/whatwg/html/pull/7768
2022-04-02 23:52:25 +01:00
Simon Wanner
73da139cd7 LibWeb: Expose IdleDeadline on the window object 2022-04-02 23:52:25 +01:00
James Mintram
cd2f67c4ea top: Add support for quitting top by pressing q 2022-04-02 23:48:17 +01:00
Olivier De Cannière
3818840ee6 Browser: Add Ctrl-<number> actions to changes tabs
It is now possible to quickly switch to specific tabs directly without
having to 'search linearly'.

Pressing Ctrl plus a number from 1 to 8 switches to the tab of that
index. Pressing Ctrl-9 swithes to the last tab.

This feature already exists in Firefox and Chrome.
2022-04-02 23:38:32 +02:00
Olivier De Cannière
1b7850f511 LibGUI: Add TabWidget::activate_last_tab() 2022-04-02 23:38:32 +02:00
MacDue
04b6a060ca DisplaySettings: Add theme selection and preview 2022-04-02 21:50:41 +02:00
Ben Maxwell
8fa0409ae1 LibGfx: Add list_installed_system_themes() to SystemTheme 2022-04-02 21:50:41 +02:00
Ben Maxwell
3fbefb82ac LibGUI+Applications: Move abstract ThemeEditor preview to LibGUI
This allows most of the theme preview code to be reused by similar
theme preview widgets.
2022-04-02 21:50:41 +02:00
Ben Maxwell
0f2c1f804e AK: Add last() utility function to Span 2022-04-02 21:50:41 +02:00
Thomas Symalla
77add584fa Userland: Fix crash when inputting non-tty device into ps
This PR aims to fix #13299 by avoiding assertion failure
while trying to determine the pseudo tty when inputting
any non-tty device device into ps.
2022-04-02 21:49:16 +02:00
Adam Patterson
2ecc608dea 3DFileViewer: Allow escape key to exit fullscreen mode
I went into fullscreen mode, via the View menu, before looking at the
associated key (F11). I had to kill Qemu to be able to escape.

Escape is an intuitive way to exit most fullscreen modes.
2022-04-02 11:07:29 -07:00
kleines Filmröllchen
659a7a5da7 Meta: Completely overhaul the README
The README was getting a bit outdated in places, and it didn't have its
priorities straight (libc uwu, also we have browser no big deal). These
changes are largely based on what was discussed among major contributors
and maintainers, though I put in some extra stuff I'm bothered by.

The start of README is unchanged. The project blurb is probably its best
part, both then and now, so it definitely stays. The FAQ is moved up
under the About section because it's easier to find that way and makes
more sense logically.

The Features section is a highly compressed version of the previous
several features sections. Priorities are a big focus here: List what
matters to a reader, what they will likely care about, what's impressive
to them and what's probably not. The list therefore starts with the
factual basics about the Kernel followed directly by Browser+LibJS, the
probably biggest userland feat in this project. Then, we pedal back and
talk about OS basics, like security, POSIX, services, libraries,
devtools. We finish out by addressing the end user concerns
(customization, UI apps, multimedia & file format support), which
includes a bunch of things previously underrepresented. I think it's
rather important that Serenity has a unified style and UX philosophy, so
this should definitely be mentioned :^) At the end, I think it's very
important to state the NIH philosophy, but also the fact that there are
more than two hundred (!) ports.

Documentation section is slightly expanded to mention the Documentation
folder which doesn't really appear anywhere in the previous version.

Build instructions include a simple mention of the fact that Serenity
runs on almost anything. It's good to not scare off Windows users :^))
(self-deprecating humour overload)

The Get in Touch section and the issues section are combined into one
"how do i talk to u help" section that contains the same information but
includes a general link to CONTRIBUTING.

The Contributors section is now one big list of 100+ commit people.
Also, the GitHub contributor list is linked, as that lists over 30
additional people IIRC + detailed statistics.
2022-04-02 11:03:46 -07:00
Enver Balalic
747f347b75 LibWeb: Implement flex reverse layouts
This builds on the work done by implementing the flex order CSS
property and implements flex reverse layouts by just reversing
the order and the items within each order bucket.
2022-04-02 19:01:14 +02:00
djwisdom
645d49fa53 Base: Add new bitmap font Lucidity 2022-04-02 18:43:34 +02:00
GeekFiftyFive
737f5b26b7 AK+LibHTTP: Ensure plus signs are percent encoded in query string
Adds a new optional parameter 'reserved_chars' to
AK::URL::percent_encode. This new optional parameter allows the caller
to specify custom characters to be percent encoded. This is then used
to percent encode plus signs by HttpRequest::to_raw_request.
2022-04-02 18:43:15 +02:00
Enver Balalic
58398b1e12 LibWeb: Implement the flex order CSS property
Adds support for the flex order property and a test page for it
on the browser welcome page.
2022-04-02 18:40:32 +02:00
Hendiadyoin1
2377344a89 UserspaceEmulator: Implement the SSE extension
This almost fully implements the SSE extension, similar to the x87 and
MMX extensions, using a separate class "SoftVPU".

Currently missing are all shadow and exception checks, as well as the
denormals-are-zero and flush-to-zero flags.
Also missing are some integer-SIMD functions.
2022-04-02 18:37:38 +02:00
Hendiadyoin1
1d2ad9cf61 UserspaceEmulator: Don't mark SoftFPU::mmx_get/set as ALWAYS_INLINE
These are exposed by SoftCPU, and this attribute would cause these not
to create any symbols to link against.
2022-04-02 18:37:38 +02:00
Hendiadyoin1
b7a8cfdde9 LibX86: Correctly name CVTTSS2SI_r32_xmm2m32
This was previously erroneously called CVTTPS2PI_r32_xmm2m32, while
the mnemonic was correctly CVTTSS2SI.
2022-04-02 18:37:38 +02:00
Hendiadyoin1
1432b6ab0a LibX86: Use the correct code for UNPCKLS
We were accidentally using 0x15, which was immediately overridden by
UNPCKHS
2022-04-02 18:37:38 +02:00
Hendiadyoin1
3cae69a6c2 LibX86: Correctly name the first xmm argument
We were accidentally calling it a mm-register
2022-04-02 18:37:38 +02:00
Hendiadyoin1
f951849fd5 LibX86: Don't print repz prefix for SSE instructions 2022-04-02 18:37:38 +02:00
Hendiadyoin1
d03a6cc6c6 LibGfx: Use AK's rsqrt and cast to floats earlier 2022-04-02 18:37:38 +02:00
Hendiadyoin1
5ba5a6615d AK: Add vector variants of sqrt and rsqrt 2022-04-02 18:37:38 +02:00
Hendiadyoin1
b1db1e4e4f AK: Add rsqrt and a SSE specific implementation for sqrt 2022-04-02 18:37:38 +02:00
Idan Horowitz
50c4ba0756 Meta: Update required clang-format version in CONTRIBUTING.md 2022-04-02 17:35:27 +03:00
Sam Atkins
b07659d00c Meta+LibWeb: Port PropertyID.h/cpp generators to invoke_generator() 2022-04-02 09:18:07 -04:00
Sam Atkins
fc81d6c9f3 Meta+LibWeb: Port ValueID.h/cpp generators to invoke_generator() 2022-04-02 09:18:07 -04:00
Sam Atkins
cb406e79f4 Meta+LibWeb: Port MediaFeatureID.h/cpp generators to invoke_generator() 2022-04-02 09:18:07 -04:00