summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2022-09-11test262-runner: Convert dbgln to warnlndavidot
Since this application is now supposed to be used from within Serenity we should make sure to warn the actual user.
2022-09-11test262-runner: Add option to disable core dumpingdavidot
When running a larger set of tests in Serenity the runner would otherwise trigger a lot of crash reporters. This would then in turn lead to memory starvation causes more crashes.
2022-09-11test262-runner: Attempt to resolve harness for test262 automaticallydavidot
This makes it easier to use the runner directly.
2022-09-11test262-runner: Overwrite __assertion_failed when compiling for Serenitydavidot
We also protect against recursive assert failures, for example due to being out of memory. With this change the runner now compiles and runs on Serenity :^).
2022-09-11test262-runner: Rename variable stdin to standard_inputdavidot
This was shadowing a name in LibC triggering warnings.
2022-09-11test262-runner: Use alarm instead of setitimerdavidot
Since setitimer is not implemented in Serenity we use alarm which triggers SIGALRM after the timeout. We also don't use a signal handler as we are doing things that serenity doesn't like/doesn't allow. Linux dealt with allocating and writing in a signal handler but it is undefined, so instead we just let the process die by SIGALRM. This means we instead of reading the output can detect timeouts by checking how the process died.
2022-09-11LibJS: Import the libjs-test262-runner from linusg/libjs-test262davidot
For now this is a lagom only application as it is not compatible with serenity in its current state. The only change is that it is released under a different license with permission from all the authors.
2022-09-11LibTest: Extract some useful functions from TestRunner.hdavidot
This allows other test like programs to use these without needing to link to LibTest.
2022-09-11Base: Add emoji ⚙ī¸Xexxa
⚙ī¸ - U+2699 GEAR
2022-09-11WindowServer: Unveil only subdirectories in /dev directoryLiav A
Now that each HID device node is located in /dev/input/, and Display Connector device nodes are in /dev/gpu/, we can simply just unveil those directories instead of the entire /dev directory.
2022-09-11Userland: Move HID input device nodes to /dev/input/{mouse,keyboard}Liav A
Because HID devices are not always present in quantities of one per type it is more elegant and correct to put the representative device nodes in subdirectories for each HID device type.
2022-09-11Base: Add 18 new emojiJoel Hansen
đŸŽĩ - U+1F3B5 Musical Note đŸ’ŗ - U+1F4B3 Credit Card 📃 - U+1F4C3 Page with Curl 📄 - U+1F4C4 Page Facing Up 📎 - U+1F4CE Paperclip 📏 - U+1F4CF Straight Ruler 📑 - U+1F4D1 Bookmark Tabs 📒 - U+1F4D2 Ledger 📓 - U+1F4D3 Notebook 📔 - U+1F4D4 Notebook with Decorative Cover 📕 - U+1F4D5 Closed Book 📗 - U+1F4D7 Green Book 📘 - U+1F4D8 Blue Book 📙 - U+1F4D9 Orange Book 📝 - U+1F4DD Memo 📞 - U+1F4DE Telephone Receiver 🗨ī¸ - U+1F5E8 Left Speech Bubble 🐰 - U+1F430 Rabbit Face
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-09-10LibGUI: Blit brightened icon when try item is hoverednetworkException
2022-09-10Base: Add 18 new emojiJoel Hansen
🐨 - U+1F428 Koala đŸĒŸ - U+1FA9F Window ⏏ī¸ - U+23CF Eject Button ⏊ - U+23E9 Fast-Forward Button âĒ - U+23EA Fast Reverse Button âĢ - U+23EB Fast Up Button âĢ - U+23EC Fast Down Button ⏭ī¸ - U+23ED Next Track Button ⏎ī¸ - U+23EE Last Track Button ⏯ī¸ - U+23EF Play or Pause Button ⏸ī¸ - U+23F8 Pause Button ⏚ī¸ - U+23F9 Stop Button âēī¸ - U+23FA Record Button â–ļī¸ - U+25B6 Play Button ◀ī¸ - U+25C0 Reverse Button ⛏ī¸ - U+26CF Pick â›Ē - U+26EA Church ☄ī¸ - U+2604 Comet
2022-09-10Meta: Add .editorconfigdemostanis
See https://editorconfig.org/
2022-09-10Base: Add .gitconfig to Git file icon fileselectrikmilk
This adds .gitconfig to git in the file icon provider.
2022-09-10Base: Add more emojiXexxa
đŸ’Ĩ - U+1F4A5 COLLISION 🤸 - U+1F938 PERSON CARTWHEELING 🍃 - U+1F343 LEAF FLUTTERING IN WIND đŸĨ™ - U+1F959 STUFFED FLATBREAD 🍝 - U+1F35D SPAGHETTI đŸĨŸ - U+1F95F DUMPLING 🍨 - U+1F368 ICE CREAM đŸĨ - U+1F3E5 HOSPITAL 🛞 - U+1F6DE WHEEL 🚁 - U+1F681 HELICOPTER 📅 - U+1F4C5 CALENDAR 📆 - U+1F4C6 TEAR-OFF CALENDAR 🔐 - U+1F510 LOCKED WITH KEY 📡 - U+1F4E1 SATELLITE ANTENNA 🔚 - U+1F51A END ARROW 🔛 - U+1F51B ON! ARROW 🔜 - U+1F51C SOON ARROW 🔝 - U+1F51D TOP ARROW 🔠 - U+1F520 INPUT LATIN UPPERCASE 🔡 - U+1F521 INPUT LATIN LOWERCASE đŸ”ĸ - U+1F522 INPUT NUMBERS đŸ”Ŗ - U+1F523 INPUT SYMBOLS 🔤 - U+1F524 INPUT LATIN LETTERS 🎌 - U+1F38C CROSSED FLAGS đŸ‡ĻđŸ‡ŋ - U+1F1E6 U+1F1FF FLAG: AZERBAIJAN 🇧🇴 - U+1F1E7 U+1F1F4 FLAG: BOLIVIA 🇧🇹 - U+1F1E7 U+1F1F9 FLAG: BHUTAN 🇧đŸ‡ŧ - U+1F1E7 U+1F1FC FLAG: BOTSWANA đŸ‡Ģ🇲 - U+1F1EB U+1F1F2 FLAG: MICRONESIA đŸ‡Ŧ🇭 - U+1F1EC U+1F1ED FLAG: GHANA đŸ‡Ŧ🇾 - U+1F1EC U+1F1FE FLAG: GUYANA 🇮🇨 - U+1F1EE U+1F1E8 FLAG: CANARY ISLANDS 🇰đŸ‡ŋ - U+1F1F0 U+1F1FF FLAG: KAZAKHSTAN 🇱🇨 - U+1F1F1 U+1F1E8 FLAG: ST. LUCIA 🇲đŸ‡ģ - U+1F1F2 U+1F1FB FLAG: MALDIVES 🇲đŸ‡ŧ - U+1F1F2 U+1F1FC FLAG: MALAWI 🇲đŸ‡ŋ - U+1F1F2 U+1F1FF FLAG: MOZAMBIQUE đŸ‡ŗđŸ‡Ļ - U+1F1F3 U+1F1E6 FLAG: NAMIBIA đŸ‡ŗđŸ‡Ē - U+1F1F3 U+1F1EA FLAG: NIGER 🇸🇲 - U+1F1F8 U+1F1F2 FLAG: SAN MARINO 🇹🇱 - U+1F1F9 U+1F1F1 FLAG: TIMOR-LESTE đŸ‡ē🇾 - U+1F1FA U+1F1FE FLAG: URUGUAY ...and from Unicode 15: đŸĒŧ - U+1FABC JELLYFISH đŸĢ› - U+1FADB PEA POD đŸĒŽ - U+1FAAE HAIR PICK
2022-09-10LibJS: Allow negative pointers in Valuedavidot
Also ensure that all a nullptr input gives null object and you don't accidentally dereference a nullptr.
2022-09-09LibC: Consume all whitespace in `scanf` if present in formatJelle Raaijmakers
We were consuming all whitespace from the format, but not the input lexer - that was left to the actual format parsing code. It so happened that we did not account for whitespace with the conversion specifier '[', causing whitespace to end up in the output variables. Fix this by always consuming all whitespace and removing the whitespace logic from the conversion code.
2022-09-09LibWeb: Set prototype for both TextDecoder and AbortSignalLuke Wilde
These were forgotten to be set during the GC heap conversion.
2022-09-09Keymap: Rename context menu item "Settings" to "Keyboard Settings"Cr4xy
This is a very small change to improve consistency between applet context menu item names.
2022-09-09LibWeb: Resolve two document-tree child browsing context count FIXMEsnetworkException
This patch makes use of helpers implemented for window.length to resolve two FIXMEs in WindowProxy previously simply assuming no child browsing contexts :^)
2022-09-09LibWeb: Implement window.lengthnetworkException
2022-09-09Spreadsheet+LibGUI: Set EmojiInputDialog as a CaptureInput modalthankyouverycool
This has two advantages: First the picker no longer changes the active window state of its parent. Visually this is an additional hint that the dialog is "fragile" and will close on loss of focus. Second, because it contains a search box, its own input won't be preempted by global application shortcuts when typing (pending #15129). This is a problem in apps like PixelPaint which use shortcuts without modifiers.
2022-09-09LibGUI: Set EmojiInputDialog's FrameShape to "Window"thankyouverycool
2022-09-09LibGUI: Add ellipsis to Insert Emoji actionthankyouverycool
Requires further user input
2022-09-09LibGUI: Allow blocking CommandPalette/EmojiInput on a per Window basisthankyouverycool
Instead of having to negate every focusable widget or textbox, let windows override all their widgets. These two Dialogs now block themselves and each other.
2022-09-09LibWeb: Treat percentage heights as "auto" if unresolvableAndreas Kling
If the containing block has indefinite height, we can't resolve percentage heights against it. Instead of treating it as 0 by accident, let's treat it as "auto" on purpose. This brings back the cheek borders on Acid2.
2022-09-09LibWeb: Update layout in Element.client{Left,Top}Andreas Kling
We have to flush any pending layout changes before getting metrics.
2022-09-09LibWeb: Avoid layout in Element.client{Width,Height} if possibleAndreas Kling
When querying the HTML element (in strict mode) or the BODY element (in quirks mode), we return the viewport dimensions. Layout doesn't change the size of the viewport, so we can actually reorder the steps here and avoid performing layout in some cases. This removes a bunch of synchronous layouts on pages with reCAPTCHA.
2022-09-09LibWeb: Don't collapse vertical margins between floatsAndreas Kling
Just stack floats at their vertical margin edge instead of letting their border boxes rub up against each other.
2022-09-09LibWeb: Keep CSS sheets sorted in document tree orderAndreas Kling
This ensures that style is applied consistently, even if the document has external CSS resources that don't always arrive in the same order.
2022-09-09AK: Warn when trying to set `@foo@` as a SourceGenerator keySam Atkins
I was very confused why I was getting "no key named `foo`" errors, so hopefully this will save someone that confusion in the future. :^) (It'll probably be me again...)
2022-09-09Ports: Update Quake III's launcher nameJelle Raaijmakers
Following what is commonly used on the internet as the game's title, and making it consistent with Quake II.
2022-09-09Ports: Update launcher path to Quake IIJelle Raaijmakers
The launcher was not created as a result of the path not being absolute. Also set a more commonly used title for the launcher.
2022-09-09LibGUI: CommandPalette: Fix key event capture for actionsfaxe1008
This patch fixes an issue for applications that contain actions without a modifier (e.g. PixelPaint). Previously when pressing any key bound to an action while the CommandPalette was visible the action was forwarded to the parent instead of the CommandPalette.
2022-09-09Base: Update uniq(1) man pagedemostanis
2022-09-09uniq: Improve POSIX compliancedemostanis
Adds -d, -c, -i, -f and -s options. It differs a little bit from other implementations, but it does the trick and corresponds to POSIX's description
2022-09-09LibCore: Add File::open_file_or_standard_stream()demostanis
2022-09-09Meta: Download WASM spec tests using CMakeDiego Iastrubni
If we have a new CMake version - download the files using CMake API, instead of external tools.
2022-09-09Meta: Download uncompressed files instead of *.gzDiego Iastrubni
Problem: cmake cannot handle gzip files (see https://gitlab.kitware.com/cmake/cmake/-/issues/23054 for more details). Instead of downloading the compressed (*.gz) USB and PCI ids, we not download the raw uncompressed files. The sizes we "loose" due to downloading such files are meaningless. This are the file sizes: ``` diego@debian:~/$ ls -lh pci.ids{,.gz} usb.ids{,.gz} -rw-r--r-- 1 diego diego 1.3M Aug 7 04:15 pci.ids -rw-r--r-- 1 diego diego 300K Aug 7 04:15 pci.ids.gz -rw-r--r-- 1 diego diego 700K May 20 22:34 usb.ids -rw-r--r-- 1 diego diego 245K May 20 22:34 usb.ids.gz ```
2022-09-09Meta: Use CMake functions to extract filesDiego Iastrubni
Newer cmake's have internal functions to un-compress files. These functions will work on pure windows - as well as linux. This eliminates the need to search for external tools (TAR,GZIP,ZIP) - and helps fixing #9866. In order to finally fix #9866 we need to decide to bump the cmake version requirements and remove the checks. If we demand a newer cmake version, we will loose Ubuntu 20.04 as a build target - as it ships with CMake 3.16. For now - we keep compatibility with CMake 3.16 - and only if CMake 3.18 as been found - we use its new functionality.
2022-09-09Meta: Update jakt build support for fully bootstrapped compilerAndrew Kaster
Remove the Corrosion dependency, and use the now-builtin add_jakt_executable function from the Jakt install rules to build our example application. By using find_package(Jakt), we now have to set ENABLE_JAKT manually on both serenity and Lagom at the same time, so the preferred method to do this for now is: cmake -B Build/superbuild<arch><toolchain> \ -S Meta/CMake/Superbuild \ -DENABLE_JAKT=ON \ -DJAKT_SOURCE_DIR=/path/to/jakt Where omitting JAKT_SOURCE_DIR will still pull from the main branch of SerenityOS/jakt. This can be done after runing Meta/serenity.sh run.
2022-09-08WindowServer: Let Windows handle InputLeft events when blockedthankyouverycool
Fixes windows not updating on active input changes after being blocked
2022-09-08LibGUI: Only react on KeyDown when escaping a Dialogthankyouverycool
Both KeyEvents aren't necessary and erroneously close two Dialogs at once.
2022-09-08LibGUI+WindowServer: Notify Windows on input preemptionthankyouverycool
Previously Menus set themselves as active input solely to make sure CaptureInput modals would close, but this is a functional half-truth. Menus don't actually use the active input role; they preempt normal Windows during event handling instead. Now the active input window is notified on preemption and Menus can remain outside the active input concept. This lets us make more granular choices about modal behavior. For now, the only thing clients care about is menu preemption on popup. Fixes windows which close on changes to active input closing on their own context menus.
2022-09-08WindowServer: Add unadjusted position members to Menuthankyouverycool
Used to determine Menu relationships by proxy
2022-09-08LibGUI: Add Unicode emoji group filters to the EmojiInputDialogTimothy Flynn
This allows users to filter the list of displayed emoji by the group to which the emoji belong.
2022-09-08LibGUI: Display emoji in the EmojiInputDialog in Unicode display orderTimothy Flynn