Andreas Kling
2aaf12e9cd
LibGUI: More tweaks for the FilePicker UI layout
2021-04-09 21:53:43 +02:00
Andreas Kling
da7dbc116e
LibGUI: Use "Tray" look & feel for the common locations frame :^)
2021-04-09 21:53:43 +02:00
Andreas Kling
11bea5d633
LibGfx+Base: Add Tray/TrayText theme colors and Gfx::ButtonStyle::Tray
...
A "Tray" is a sunken container area for widgets. The first intended
client of this style is the GUI::FilePicker's common locations frame.
Thanks to @nvella for coming up with the term "Tray" :^)
2021-04-09 21:53:43 +02:00
Andreas Kling
3e43b1f173
LibGUI: Tweak FilePickerDialog UI layout
2021-04-09 21:53:43 +02:00
Jelle Raaijmakers
db321db5f4
LibRegex: Parse \0
as a zero-byte instead of 0x30 ("0")
...
This was causing some regexes to trip up. Fixes #6202 .
2021-04-09 21:53:14 +02:00
Andreas Kling
c2b760e335
Terminal+LibVT: Add Alt shortcuts to menu actions
2021-04-09 17:08:49 +02:00
Andreas Kling
afb6e3a79d
LibGUI: Give Alt shortcuts to all the CommonActions :^)
2021-04-09 17:08:49 +02:00
Andreas Kling
eecf60767a
LibGfx: Make draw_ui_text() underlines take glyph spacing into account
...
Without this, the underline was ending up too far to the left.
2021-04-09 17:08:49 +02:00
Andreas Kling
2b9bc605d2
LibGfx: Add a Gfx::TextAlignment parameter to Painter::draw_ui_text()
2021-04-09 17:08:49 +02:00
Andreas Kling
b7a25bfaac
LibGfx: Adjust parameter order for Painter::draw_ui_text()
...
Let's put the rect first so it's the same as draw_text().
2021-04-09 17:08:49 +02:00
Amjad Alsharafi
b758654840
LibJS: Added tests for constructing TypeArray from another
2021-04-09 09:05:19 +02:00
Amjad Alsharafi
5d44544401
LibJS: Added construction of TypedArray from another
2021-04-09 09:05:19 +02:00
Dmitrii Trifonov
323b7021bc
LibGfx: Added dirty and raw cyrillic support for bitmap fonts.
...
This is a very quick and diry hack to implement support for cyrillic bitmap fonts.
2021-04-09 08:33:12 +02:00
Hendiadyoin1
c0c4e99c74
LibJS: Use dbgln_if in Heap.cpp
2021-04-08 23:57:16 +02:00
Hendiadyoin1
e8ef10e2a6
Kernel/LibC: Make memset implementations the same
...
I dont know why we do a fast path in the Kernel, but not in Userspace
Also simplified the byte explosion in memset to "explode_byte"
it even seemed so, that we missed the highest byte when memseting something
2021-04-08 23:57:16 +02:00
Andreas Kling
ce80f0d552
LibC: Fix coding style in scanf helpers
2021-04-08 20:32:44 +02:00
Idan Horowitz
34c05a744f
LibGfx: Update to PNGLoader to modern dbgln_if and if constexpr logging
2021-04-07 19:36:24 +02:00
Idan Horowitz
8a0f1d87c0
LibGfx: Fix IHDR filter method field validation
...
As per the PNG specification: "Filter method is a single-byte
integer that indicates the preprocessing method applied to the
image data before compression. At present, only filter method 0
(adaptive filtering with five basic filter types) is defined."
2021-04-07 19:36:24 +02:00
Idan Horowitz
f0bd17e610
LibGfx: Zero out dummy filter scanline
...
As per the PNG specification: "For all x < 0, assume Raw(x) = 0 and
Prior(x) = 0. On the first scanline of an image (or of a pass of an
interlaced image), assume Prior(x) = 0 for all x."
2021-04-07 19:36:24 +02:00
Linus Groh
57c6264877
LibTLS: Hide some debug spam, use more dbgln_if and if constexpr
...
The debug console was full of 'Update hash with message of size x'.
2021-04-07 19:21:26 +02:00
Andreas Kling
2f9321a0d4
LibWeb: Implement window.top
...
This simply returns the main frame's window object. If accessed inside
the main frame, it will return itself.
2021-04-07 11:19:51 +02:00
Linus Groh
f3264b0dbd
LibJS: Implement Object.isFrozen() and Object.isSealed()
2021-04-07 09:05:01 +02:00
Linus Groh
9af07c7803
LibJS: Implement Object.freeze() and Object.seal()
2021-04-07 09:05:01 +02:00
Linus Groh
1c3eef5317
LibJS: Use MarkedValueList for internal own properties getter functions
...
Letting these create and return a JS::Array directly is pretty awkward
since we then need to go through the indexed properties for iteration.
Just use a MarkedValueList (i.e. Vector<Value>) for this and add a new
Array::create_from() function to turn the Vector into a returnable
Array as we did before.
This brings it a lot closer to the spec as well, which uses the
CreateArrayFromList abstract operation to do exactly this.
There's an optimization opportunity for the future here, since we know
the Vector's size we could prepare the newly created Array accordingly,
e.g. by switching to generic storage upfront if needed.
2021-04-07 09:05:01 +02:00
AnotherTest
a42886d8ff
LibGUI: Update the autocomplete suggestions after processing keys
...
Previously, this was updating the suggestions before processing the keys
and whatever changes they caused, making the suggestions stale until the
periodic auto-autocomplete timer fired (if enabled).
2021-04-07 08:48:50 +02:00
Luke
d215578f55
LibWeb: Implement "select" portion of reset_the_insertion_mode_appropriately
...
Required by Dromaeo. With this, it no longer crashes.
2021-04-06 23:47:05 +02:00
tuqqu
7bd0384fa6
LibJS: Support mapFn argument of Array.from
2021-04-06 22:25:05 +02:00
thankyouverycool
e8c1288e2c
LibGUI: Add autosize to CheckBox
2021-04-06 22:24:05 +02:00
thankyouverycool
8afe013069
LibGUI:: Let open/save specify starting directory in FilePicker
2021-04-06 22:24:05 +02:00
Itamar
9e2e36724d
LibCpp: Add TemplatizedName
...
This type represents templatized names, and replaces our previous use
of 'TemplatizedType' and 'TemplatizedFunctionCall'.
Also, we now parse function calls as secondary expressions.
2021-04-06 21:51:58 +02:00
Itamar
510b5073de
LanguageServers/Cpp: Refactor logic of find declaration
2021-04-06 21:51:58 +02:00
Itamar
e16036b9cc
LibCpp: Introduce DummyASTNode
...
This allows us to use pase_* methods inside match_* methods,
without adding any actual AST nodes to the m_nodes list.
2021-04-06 21:51:58 +02:00
Itamar
aa717e6a62
LibCpp: Parse C-Style parse expressions
2021-04-06 21:51:58 +02:00
Itamar
ec2c54ee2e
LibCpp: Parse "arrow" operator
2021-04-06 21:51:58 +02:00
Itamar
44833f1621
LibCpp: Parse braced initialization list
2021-04-06 21:51:58 +02:00
Itamar
d482b3fd60
LibCpp: Parse empty for loops
2021-04-06 21:51:58 +02:00
Itamar
fc503b1368
LibCpp: Parse sizeof() expression
2021-04-06 21:51:58 +02:00
Itamar
8bcf5daf3f
LibCpp: Handle 'struct' prefix before a type
2021-04-06 21:51:58 +02:00
Itamar
575d6a8ee1
LibCpp: Parse Bitwise & Logical Or & And operators
2021-04-06 21:51:58 +02:00
Itamar
8962581c9c
LibCpp: Parse C++ cast expressions
...
parse static_cast, reinterpret_cast, dynamic_cast & const_cast
2021-04-06 21:51:58 +02:00
Itamar
646aaa111b
LibCpp: Support parsing templatized function calls
2021-04-06 21:51:58 +02:00
Itamar
fe4122bbae
LibCpp: Support parsing '!=" operator
2021-04-06 21:51:58 +02:00
Itamar
68e9a05472
LibCpp: Parse character literals
2021-04-06 21:51:58 +02:00
Itamar
3295609aea
LibCpp: Add AST::Name
...
A Name node is basically an identifier with an optional scope,
e.g Core::File.
2021-04-06 21:51:58 +02:00
Itamar
29b6915db9
LibCpp: Parse templatized types
...
We can now parse things like Vector<int>
2021-04-06 21:51:58 +02:00
Itamar
9954a1837f
LibCpp: Parse nullptr literal
2021-04-06 21:51:58 +02:00
Itamar
cbb49f26d9
LibCpp: Support parsing binary "==" Operator
2021-04-06 21:51:58 +02:00
Itamar
1f9f6ea9d6
LibCpp: Support parsing function qualifiers
2021-04-06 21:51:58 +02:00
Itamar
ee35fc0da3
LibCpp: Support parsing empty return statements
2021-04-06 21:51:58 +02:00
Itamar
0babb39cae
LibCpp: Parse variable declarations in global scope
2021-04-06 21:51:58 +02:00