summaryrefslogtreecommitdiff
path: root/Userland/Demos
AgeCommit message (Collapse)Author
2022-10-25Applications: Use new global variables at /sys/kernel/ directoryLiav A
2022-10-25Userland: Let applications make use of make_command_palette_action()demostanis
2022-10-13CatDog: Make it always on topdemostanis
2022-10-12Userland: Properly populate GENERATED_SOURCESAli Mohammad Pur
We previously put the generated headers in SOURCES, which did not mark them as GENERATED (and did not produce a proper dependency). This commit moves all generated headers into GENERATED_SOURCES, and removes useless header SOURCES.
2022-10-03Userland: Unveil /proc/all in applications which require itTimothy Flynn
These were missed in 7af5eef. It is needed for any application using e.g. FileSystemAccessServer.
2022-10-03Userland: Tighten promises by removing 'proc' where it isn't usedTimothy Flynn
This is a partial revert of commit 7af5eef. After 97d15e9, the 'proc' promise is not needed for operations using getsid(). This also fixes launching several applications in which 7af5eef added the 'proc' promise only in the second call to pledge().
2022-10-03SystemServer+LoginServer+Userland: Switch to sid-based socketsPeter Elliott
This commit does three things atomically: - switch over Core::Account+SystemServer+LoginServer to sid based socket names. - change socket names with %uid to %sid. - add/update necessary pledges and unveils. Userland: Switch over servers to sid based sockets Userland: Properly pledge and unveil for sid based sockets
2022-09-29AK+Everywhere: Replace "protocol" with "scheme" url helpersnetworkException
URL had properly named replacements for protocol(), set_protocol() and create_with_file_protocol() already. This patch removes these function and updates all call sites to use the functions named according to the specification. See https://url.spec.whatwg.org/#concept-url-scheme
2022-09-18Everywhere: Fix order of includes and #pragma onceBen Wiederhake
2022-09-16LibGL: Make GL::create_context fallibleAndrew Kaster
Propagate errors in places that are already set up to handle them, like WebGLRenderingContext and the Tubes demo, and convert other callers to using MUST.
2022-09-11Tubes: Run clang-formatLinus Groh
2022-09-11Demos: Add Tubes :^)Jelle Raaijmakers
2022-09-10WidgetGallery: Port file picker to use FileSystemAccessClientnetworkException
Previously we would unveil the home directory of anon to allow showing anything in the file picker. This patch removes direct access to the home directory and instead makes WidgetGallery connect to FileSystemAccessServer to open a file, making the application more user agnostic and allowing directories outside /home/anon to be shown.
2022-08-25Eyes: Add an option to show/hide the window frameMacDue
This works the same as in the Cube demo, and now allows enjoying the eyes without any obstructions :^) The window frame can now be disabled with the -h/--hide-window command-line option, or via toggle in the GUI.
2022-08-25LibGfx+LibGUI+WindowServer+Apps+Demos: Replace ToolWindowsthankyouverycool
with the RenderAbove WindowMode. This mode will ensure child windows always draw above their parents, even when focus is lost. RenderAbove modals are automatically themed the same as the old ToolWindows. Fixes ToolWindows rendering above ALL normal windows, regardless of parent. We can't rely on WindowType to create these sort of effects because of WindowManager's strict display hierarchy.
2022-08-25Apps+Demos+Dialogs: Remove unnecessary minimum window sizesthankyouverycool
The new layout system conveniently calculates these for us now. In the case of Mandelbrot where it needs to be overriden, make sure to disable obey min widget size first. In EmojiInputDialog's case, the window needs to be resized instead to center correctly.
2022-08-14Everywhere: Replace hardcoded anon's uid in unveil path with `%uid`Lucas CHOLLET
2022-08-14LibCore+LaunchServer: Move portal directory to `/tmp/user/%uid`Lucas CHOLLET
The `/tmp/user` directory is owned by root, this solution prevents malicious users to interfere with other users' portals. This commit also moves `launch`'s portal in the user directory.
2022-07-22Everywhere: Prefix 'TYPEDEF_DISTINCT_ORDERED_ID' with 'AK_'Linus Groh
2022-07-19LaunchServer+SystemServer: Move the portal to a user-specific directoryLucas CHOLLET
Various changes are needed to support this: - The directory is created by Core::Account on login (and located in /tmp). - Service's sockets are now deleted on exit (to allow re-creation) - SystemServer needs to handle SIGTERM to correctly destroy services.
2022-07-15WidgetGallery: Make inspectableFrHun
WidgetGallery is only a demo anyways, and the perfect target to test the Inspector.
2022-07-12Everywhere: Add sv suffix to strings relying on StringView(char const*)sin-ack
Each of these strings would previously rely on StringView's char const* constructor overload, which would call __builtin_strlen on the string. Since we now have operator ""sv, we can replace these with much simpler versions. This opens the door to being able to remove StringView(char const*). No functional changes.
2022-07-04WidgetGallery: Repair GML layout on BasicsTabFrHun
2022-06-28Applications: Remove usages of deprecated implicit conversionsFrHun
These deprecated conversions are currently in place to make the system compile, but they are to be removed soon. This prepares that.
2022-06-10LibGUI: Add layout spacer support to GMLFrHun
This is a bit of a hack, but it is an easy way to finally get spacers into GML. This will translate well if spacers are later to become child objects of the continer widget.
2022-06-01LibGfx: Rename draw_ellipse/circle to fill_ellipse/circleMacDue
This makes these functions more consistent with the non-aa painter.
2022-05-13LibGUI+Userland: Make Dialog::ExecResult an enum classSam Atkins
2022-05-11Userland: Set tab-widget properties in GML instead of codeSam Atkins
2022-05-08Fire: Ignore mouse events outside the window (to the left)MacDue
This fixes a small issue where if you drag the cursor outside the window on the left-hand side, the fire demo will still respond to the mouse events, but wrapped around to the right of the window.
2022-05-08Fire: Replace #defines with constexprsMacDue
2022-05-08Mandelbrot: Remove image export confirmation dialogEWouters
Andreas mentioned this dialog is not needed in the monthly update video[^1]. [^1]: https://youtu.be/yUmHEYs5n34?t=364
2022-05-07Demos/Eyes: Render eyes antialiasedMacDue
This looks good, and is a good way to test ellipse rendering is working properly.
2022-05-05Userland: Re-organize /dev GPU nodesLiav A
2022-04-20Mandelbrot: Add BMP and QOI image formats as options for exportEWouters
Inspired by #13558 I added the option to export as QOI to the Mandelbrot demo. I added BMP as well for completeness.
2022-04-09LibGfx: Move other font-related files to LibGfx/Font/Simon Wanner
2022-04-01Everywhere: Run clang-formatIdan Horowitz
2022-03-26Demos/LibGfxScaleDemo: Use BGRA8888 bitmap in canvasMacDue
Previously BGRx8888 was used, which produces artifacts with the new antialiased window frames with border radii, which require alpha blending whilst painting.
2022-03-18Userland: Change static const variables to static constexprLenny Maiorani
`static const` variables can be computed and initialized at run-time during initialization or the first time a function is called. Change them to `static constexpr` to ensure they are computed at compile-time. This allows some removal of `strlen` because the length of the `StringView` can be used which is pre-computed at compile-time.
2022-03-18Eyes: Add 'Contents' action to help menuLinus Groh
2022-03-14Kernel: Sandbox each GPU3DDevice file description into own host contextSahan Fernando
2022-03-09Demos: Create demo for VirGL gpu deviceSahan Fernando
This is a simple demo for VirGL, that does the bare minimum required to create and render a spinning cube (with one color per face).
2022-03-08Mandelbrot: Add Help menu with standard About actionPaulo Henrique Silva
Noticed that Mandelbrot didn't use the standard About action in the Help menu. As a first patch to Serenity, this patch fixes it.
2022-03-02Demos/CatDog: Show different messages depending on statekleines Filmröllchen
There are two new sets of messages for the new application-dependent main states of CatDog. With the current Array-based system, all message collections must have the same number of messages, but that's not a problem.
2022-03-02Demos/CatDog: Introduce inspector & artist states based on open programskleines Filmröllchen
These two new main states are determined by looking at the programs the user has open. The artist state, using the new artist catdog, is triggered by PixelPaint and FontEditor, and the inspector state is triggered by Inspector, Profiler and SystemMonitor. This requires CatDog to unveil /proc/all, and, for some reason, /etc/passwd.
2022-03-02Demos/CatDog: Refactor the main stateskleines Filmröllchen
CatDog's state was previously handled by a bunch of booleans that all needed to be in sync pretty accurately, but some of these are exclusive (like alerted and sleeping). This commit introduces a simple enum for the main states of CatDog which exclude the roaming and direction states. The main state determines the standing image of CatDog and will have further effects in the future.
2022-03-02Demos/CatDog: Let the speech bubble know about the CatDog widgetkleines Filmröllchen
This will allow us to have better interaction between CatDog's state and what it's saying.
2022-02-25Userland: Rename WindowServerConnection=>ConnectionToWindowServerItamar
This was done with CLion's automatic rename feature.
2022-02-23LibGUI+Apps: Adjust Splitter spacingsthankyouverycool
Different thread highlights between widgets lead to different visual weights between splitters, even when they have the same width or height. This means some splitters look best at odd sizes while others even. This sets the default spacing to the most commonly used, depending on orientation, and adjusts spacing for a few apps based on the new paint rect. The most consistent look across apps requires some manual tweaking occassionally. Knurlheads, use your discretion!
2022-02-15Demos: Use default constructors/destructorsLenny Maiorani
https://isocpp.github.io/CppCoreGuidelines/CppCoreGuidelines#cother-other-default-operation-rules "The compiler is more likely to get the default semantics right and you cannot implement these functions better than the compiler."
2022-02-13Userland: Run gml-formatIdan Horowitz
This brings the existing GML files up to spec with the new requirements