Age | Commit message (Collapse) | Author |
|
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...)
|
|
Following what is commonly used on the internet as the game's title,
and making it consistent with Quake II.
|
|
The launcher was not created as a result of the path not being
absolute. Also set a more commonly used title for the launcher.
|
|
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.
|
|
|
|
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
|
|
|
|
If we have a new CMake version - download the files using CMake
API, instead of external tools.
|
|
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
```
|
|
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.
|
|
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.
|
|
Fixes windows not updating on active input changes after being
blocked
|
|
Both KeyEvents aren't necessary and erroneously close two
Dialogs at once.
|
|
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.
|
|
Used to determine Menu relationships by proxy
|
|
This allows users to filter the list of displayed emoji by the group to
which the emoji belong.
|
|
|
|
Co-authored-by: electrikmilk <brandonjordan124@gmail.com>
|
|
According to TR #51, the "best definition of the full set [of emojis] is
in the emoji-test.txt file". This defines not only the emoji themselves,
but the order in which they should be displayed, and what "group" of
emojis they belong to.
|
|
This adds the Insert Emoji action to Spreadsheet.
|
|
This adds the Insert Emoji action to Text Editor.
|
|
This adds a common action to invoke the emoji picker.
|
|
|
|
This was present in Vector already. Clang-format fixed some const
positions automatically too.
Also removed a now-ambiguous and unnecessary constructor from Shell.
|
|
Instead of overwriting the existing `-j` makeopt, we only append
options. This brings the build time for the Quake port down from 24.3s
to 4.4s on my machine.
|
|
OpenGL allows GPUs to approximate a triangle's maximum depth slope
which prevents a number computationally expensive instructions. On my
machine, this gives me +6% FPS in Quake III.
We are able to reuse `render_bounds` here since it is the containing
rect of the (X, Y) window coordinates of the triangle, thus its width
and height are the maximum delta X and delta Y, respectively.
|
|
This was a silly mistake :^)
|
|
It wasn't the content height, but rather the the bottom edge of the
lowest margin box.
|
|
|
|
๐จโ๐ฉโ๐งโ๐ฆ - U+1F468 U+200D U+1F469 U+200D U+1F467 U+200D U+1F466
FAMILY: MAN, WOMAN, GIRL, BOY
๐จโ๐ฉโ๐ฆโ๐ฆ - U+1F468 U+200D U+1F469 U+200D U+1F466 U+200D U+1F466
FAMILY: MAN, WOMAN, BOY, BOY
๐จโ๐ฉโ๐งโ๐ง - U+1F468 U+200D U+1F469 U+200D U+1F467 U+200D U+1F467
FAMILY: MAN, WOMAN, GIRL, GIRL
๐จโ๐จโ๐งโ๐ฆ - U+1F468 U+200D U+1F468 U+200D U+1F467 U+200D U+1F466
FAMILY: MAN, MAN, GIRL, BOY
๐จโ๐จโ๐ฆโ๐ฆ - U+1F468 U+200D U+1F468 U+200D U+1F466 U+200D U+1F466
FAMILY: MAN, MAN, BOY, BOY
๐จโ๐จโ๐งโ๐ง - U+1F468 U+200D U+1F468 U+200D U+1F467 U+200D U+1F467
FAMILY: MAN, MAN, GIRL, GIRL
๐ฉโ๐ฉโ๐งโ๐ฆ - U+1F469 U+200D U+1F469 U+200D U+1F467 U+200D U+1F466
FAMILY: WOMAN, WOMAN, GIRL, BOY
๐ฉโ๐ฉโ๐ฆโ๐ฆ - U+1F469 U+200D U+1F469 U+200D U+1F466 U+200D U+1F466
FAMILY: WOMAN, WOMAN, BOY, BOY
๐ฉโ๐ฉโ๐งโ๐ง - U+1F469 U+200D U+1F469 U+200D U+1F467 U+200D U+1F467
FAMILY: WOMAN, WOMAN, GIRL, GIRL
|
|
Let's make 16px the default font size instead of 10px. This makes our
layout results match those of other engines in many more cases.
Also make the h1-h6 element styles use relative (em) font sizes, also
matching other browsers.
|
|
Also make the font discovery algorithm search subdirectories as well.
This will be used by Ladybird to discover more fonts on non-Serenity
systems. :^)
|
|
Instead of hard-coding the names of system fonts to use for the CSS
generic fonts (like "sans-serif", "monospace", etc.) we now call out
to a Platform::FontPlugin and ask for the generic names.
|
|
We didn't set their display at all before, and since CSS display is not
inherited, anonymous block wrappers were actually "display: inline", but
it kinda worked anyway because we positioned blocks based on their C++
class (BlockContainer) rather than their CSS display value.
Now that we position based on CSS display value, this broke positioning
of anonymous wrapper blocks, and this fixes that.
|
|
Fixes restore/maximize icon not updating when the cursor overlaps
window frame on restoration.
|
|
Instead of letting buttons determine the relative position
of their menus, a workaround only used by Statusbar segments,
open them all uniformly for a nice, consistent UI.
Passing a rect to popup() now routes to open_button_menu(), an
analog to open_menubar_menu(), which adjusts the menu's popup
position in the same way. Fixes button menus obscuring the buttons
which spawn them and jutting out at odd corners depending on screen
position.
|
|
in exclusive, checkable groups. Instead of merely setting the
button checked, call click() so buttons with registered actions
can activate. Fixes ActionGroups like FileManager's view type
checkables not activating when cycled with the keyboard.
|
|
|
|
Unlike regular buttons, unchecked checkables don't need to repaint
on MouseUp to feel responsive when clicking rapidly. In fact, this
can lead to a flickering effect when a bogus unchecked state gets
painted again before the button's checked one.
|
|
This adds 16x16 and 32x32 file type icons for assembly files.
|
|
This adds two new icons for browser context menu items "Close Other
Tabs" and "Download".
This adds existing icons where they were missing in context menu items.
|
|
๐ชฒ - U+1FAB2 BEETLE
๐ฐ - U+1F370 SHORTCAKE
๐ - U+1F698 ONCOMING AUTOMOBILE
๐ - U+1F514 BELL
๐ - U+1F515 BELL WITH SLASH
๐งผ - U+1F9FC SOAP
โ๏ธ - U+2716 MULTIPLY
โ - U+2795 PLUS
โ - U+2796 MINUS
โ - U+2797 DIVIDE
๐ - U+1F4DB NAME BADGE
โ๏ธ - U+2714 CHECK MARK
|
|
๐ฅ - U+1F6A5 HORIZONTAL TRAFFIC LIGHT
๐ฆ - U+1F6A6 VERTICAL TRAFFIC LIGHT
๐ - U+1F4CD ROUND PUSHPIN
๐๏ธ - U+1F5C4 FILE CABINET
|
|
Before this change, block-level boxes were laid out vertically by
placing them after the nearest previous BlockContainer sibling. This
only worked if the preceding block-level box happened to be a
BlockContainer.
This fixes an issue where the screenshot on netsurf-browser.org was not
being laid out properly (it was `img { display: block }` which creates
a block-level ImageBox, and ImageBox is not a BlockContainer but a
ReplacedBox, so the following block-level box was skipping over the
ImageBox and being placed next to whatever was before the ImageBox..)
|
|
Instead of calling Core::EventLoop directly, LibJS now has a virtual
function on VM::CustomData for customizing this behavior.
We use this in LibWeb to plumb the spin request through to the
PlatformEventPlugin.
|
|
Instead of using Core::EventLoop and Core::Timer directly, LibWeb now
goes through a Web::Platform abstraction layer instead.
This will allow us to plug in Qt's event loop (and QTimer) over in
Ladybird, to avoid having to deal with multiple event loops.
|
|
๐ - U+1F358 Rice Cracker
๐ค - U+1F364 Fried Shrimp
๐ป - U+1F37B Clinking beer mugs
๐ฅ - U+1F365 Fish cake with swirl
๐ผ - U+1F37C Baby bottle
|
|
load_any_resources() may get called multiple times during layout, but
once we've started a resource load, we don't need to do it again.
|
|
We were constantly measuring and re-measuring the "alt" attribute text
of ImageBox layout nodes, even when the alt text didn't change. By
caching this, we avoid a *lot* of repeated text measurement work.
|
|
- Use the border box of the floated element when testing if something
needs to flow around it.
- Take the floated element's containing block size into account (instead
of the BFC root) when calculating available space on a line where a
right-side float intrudes.
|