Timothy Flynn
1400a85fae
LibJS: Remove unused CodeGenerationError::to_deprecated_string
2023-02-17 09:14:23 -05:00
Timothy Flynn
88814acbd3
LibJS+Everywhere: Convert JS::Error to String
...
This includes an Error::create overload to create an Error from a UTF-8
StringView. If creating a String from that view fails, the factory will
return an OOM InternalError instead. VM::throw_completion can also make
use of this overload via its perfect forwarding.
2023-02-17 09:14:23 -05:00
Timothy Flynn
153b793638
LibJS: Add a throwable StringBuilder::join method
2023-02-17 09:14:23 -05:00
Timothy Flynn
4d10911f96
LibJS: Pre-allocate the out-of-memory error string on the VM
...
If we are out of memory, we can't try to allocate a string that could
fail as well. When Error is converted to String, this would result in an
endless OOM-throwing loop. Instead, pre-allocate the string on the VM,
and use it to construct the Error.
Note that as of this commit, the OOM string is still a DeprecatedString.
This is just preporatory for Error's conversion to String.
2023-02-17 09:14:23 -05:00
Timothy Flynn
93ad25fbe5
LibJS: Add to_string definitions to CodeGenerationError and ParserError
2023-02-17 09:14:23 -05:00
Fausto Tommasi
f7458b3e17
LibGUI: Update TextEditor to delete emoji based on gbp cluster
...
Updated TextDocument and TextEditor to use calls to
`find_grapheme_segmentation_boundary` in order to make "correct-feeling"
deletions on backspace and delete keys being pressed
2023-02-17 07:50:09 -05:00
Lucas CHOLLET
782b1d20f5
LibGfx: Remove Bitmap::load_from_fd_and_close()
...
The method was only used in `load_from_file(StringView path)` and
replacing it with `load_from_file(NonnullOwnPtr<Core::File>)` is very
straightforward.
2023-02-17 10:36:03 +01:00
Ali Mohammad Pur
b409a40377
LibJS: Actually escape \n|\r|LS|PS when escaping RegExp.source
...
We were previously encoding them as `\<literal newline>`, which is just
all sorts of wrong :P
2023-02-16 23:32:35 +01:00
Ali Mohammad Pur
bcfbe0fbf7
LibJS: Manually loop over escaped regex pattern instead of ::replace()
...
This makes it ever-so-slightly faster, but more importantly, it fixes
the bug where a `/\//` regex's `source` property would return `\\/`
("\\\\/") instead of `\/` due to the existing '/' -> '\/' replace()
call.
2023-02-16 21:03:19 +01:00
Ali Mohammad Pur
a8bcb901c0
LibJS: Escape printed strings making them proper string literals
...
Previously we just printed '"' string-contents '"', which was not a
proper string literal.
2023-02-16 21:03:19 +01:00
Lucas CHOLLET
e8249d735d
LibFileSystemAccessClient: Remove the deprecated API
...
Concerned functions are:
- try_request_file_read_only_approved_deprecated
- try_request_file_deprecated
- try_open_file_deprecated
- try_save_file_deprecated
It also allows some simplifications in the implementation of the client.
2023-02-16 20:11:52 +01:00
Timothy Flynn
ba40ef1f3a
LibJS: Remove Value::to_deprecated_string_without_side_effects
2023-02-16 14:32:22 +01:00
Timothy Flynn
527edb55ad
LibWeb: Convert usages of Value::TDSWOSE to Value::TSWOSE
2023-02-16 14:32:22 +01:00
Timothy Flynn
24e9cea524
LibJS: Convert remaining usages of Value::TDSWOSE to Value::TSWOSE
...
Note the couple of cases using MUST are just debugging statements.
2023-02-16 14:32:22 +01:00
Timothy Flynn
c17589a402
LibJS: Change Print's print_type helper to accept a StringView
...
There's no benefit to accepting a fly string, and this will soon be
needed to be used with String.
2023-02-16 14:32:22 +01:00
Timothy Flynn
bb64b49749
LibJS: Remove unused Reference::to_deprecated_string
2023-02-16 14:32:22 +01:00
Timothy Flynn
36d72a7f4c
LibJS: Convert CanonicalNumericIndexString to use NumberToString
2023-02-16 14:32:22 +01:00
Timothy Flynn
9a5a4302d9
LibJS: Convert PropertyDescriptor's formatter to String
...
And generally propagate OOM.
2023-02-16 14:32:22 +01:00
Timothy Flynn
a73b8292ed
LbJS: Convert exception-related usages of Value::TDSWOSE to String
...
TDSWOSE being to_deprecated_string_without_side_effects.
2023-02-16 14:32:22 +01:00
Timothy Flynn
3ffb6d9b5a
LibJS: Define Value::to_string_without_side_effects for String
2023-02-16 14:32:22 +01:00
Timothy Flynn
dc4207323b
LibJS: Remove the VM parameter from the NumberToString AO
...
This will be needed by Value::to_string_without_side_effects, which can
be called in contexts without a VM (e.g. in AK::Format specializations).
So to_string_without_side_effects will need to be callable without a VM,
thus NumberToString must be as well.
2023-02-16 14:32:22 +01:00
Timothy Flynn
7a7a649f5b
LibJS: Define BigInt::to_string to complement to_deprecated_string
2023-02-16 14:32:22 +01:00
Timothy Flynn
b245300ba1
LibJS+Everywhere: Deprecate Value::to_string_without_side_effects
2023-02-16 14:32:22 +01:00
Lucas CHOLLET
b13695c9f4
LibGfx: Add a stream compatible overload of Bitmap::load_from_file()
2023-02-16 10:56:01 +00:00
Lucas CHOLLET
5b6e93f96a
LibCore: Add MappedFile::map_from_file()
...
This method relies on `map_from_fd_and_close()` but takes a `File`
instead of a fd.
2023-02-16 10:56:01 +00:00
Lucas CHOLLET
3a95c8111d
LibCore: Allow MappedFile
to make File
leak its fd
2023-02-16 10:56:01 +00:00
Lucas CHOLLET
0f4a8731fd
LibCore: Forward declare MappedFile
2023-02-16 10:56:01 +00:00
Cameron Youell
cb96c892cc
LibGUI: Add highlighting to UrlBox
2023-02-16 10:47:22 +00:00
Cameron Youell
dad70d8d6e
LibGUI: Account for glyph_spacing()
in spans
2023-02-16 10:47:22 +00:00
Timothy Flynn
32a01a60e7
LibUnicode: Remove non-iterative text segmentation algorithms
...
They are now unused.
2023-02-16 11:18:53 +01:00
Timothy Flynn
6ce7ec2eb3
LibUnicode: Use iterative text segmentation algorithms for titlecasing
2023-02-16 11:18:53 +01:00
Timothy Flynn
7cb956d17b
LibJS: Use iterative text segmentation algorithms for Intl.Segmenter
...
This uses the find-next and find-previous APIs instead of storing all
indices as a vector.
2023-02-16 11:18:53 +01:00
Ben Wiederhake
9a7b3c145f
Everywhere: Change all XXX into FIXME or remove as appropriate
2023-02-15 23:33:25 +01:00
Timon Kruiper
00c21c5424
LibELF: Implement _invoke_entry for aarch64
2023-02-15 22:53:19 +01:00
Timon Kruiper
ed3be5b7f5
LibELF+LibC: Add support for aarch64 relocations
...
This commit adds the used relocation types to elf.h, and handles the
types in DynamicLoader and DynamicObject. No new functionalitty has to
be added, as the same code can be reused between aarch64 and x86_64.
2023-02-15 22:53:19 +01:00
Timon Kruiper
cff6af9f75
LibC: Add general implementation for memcpy and memset
2023-02-15 22:53:19 +01:00
Timon Kruiper
4b0f8e9a20
LibELF+LibC: Add support for relative relocations in aarch64 binaries
...
This commit adds R_AARCH64_RELATIVE to elf.h and uses it in
ELF::perform_relative_relocations to correctly verify the relocation
type. This is the only change needed to support relative relocations for
aarch64.
2023-02-15 22:53:19 +01:00
Nico Weber
ecc321e099
LibGfx: Move QOIWriter implementation-only things into cpp file
...
No behavior change.
2023-02-15 20:32:08 +01:00
Sam Atkins
85f3de6331
LibWeb: Port CSS/Serialize.{h,cpp} to new Strings, and propagate errors
2023-02-15 12:48:26 -05:00
Sam Atkins
a0b1eddc56
LibWeb: Port CSS::MediaQuery to new Strings
2023-02-15 12:48:26 -05:00
Sam Atkins
a381ce9519
LibWeb: Port CSS::Supports to new Strings
2023-02-15 12:48:26 -05:00
Sam Atkins
fc3540c4b1
LibWeb: Port CSS::UnicodeRange to new Strings
2023-02-15 12:48:26 -05:00
Sam Atkins
316092d185
LibWeb: Use StringView in CSS::PreferredColorScheme
...
This doesn't need to hold the string data.
2023-02-15 12:48:26 -05:00
Sam Atkins
dca19b764b
LibWeb: Port CSS::Display to new Strings
2023-02-15 12:48:26 -05:00
Sam Atkins
41c4cc95e4
LibWeb: Port CSS::Parser::Rule to new Strings
...
`Rule::to_deprecated_string()` and
`DeclarationOrAtRule::to_deprecated_string()` are not used anywhere, so
we can just delete them.
2023-02-15 12:48:26 -05:00
Sam Atkins
bee32b6cd2
LibWeb: Port CSS::Parser::Declaration to new Strings
2023-02-15 12:48:26 -05:00
Sam Atkins
a168cda4a7
LibWeb: Port CSS::Parser::ComponentValue to new Strings
2023-02-15 12:48:26 -05:00
Sam Atkins
05c1b09621
LibWeb: Port CSS::Parser::Function to new Strings
2023-02-15 12:48:26 -05:00
Sam Atkins
86d23c63a4
LibWeb: Port CSS::Parser::Block to new Strings
2023-02-15 12:48:26 -05:00
Sam Atkins
e338ef4914
LibWeb: Port ComputedValues to new Strings
2023-02-15 12:48:26 -05:00