summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2020-09-25Meta+LibHTTP through LibWeb: Make clang-format-10 cleanBen Wiederhake
2020-09-25Meta+LibC through LibHTTP: Make clang-format-10 cleanBen Wiederhake
Why break at LibHTTP? Because "Meta+Libraries" would be insanely large, and breaking between LibHTTP and LibJS makes the commits roughly evenly large.
2020-09-25Meta+Kernel: Make clang-format-10 cleanBen Wiederhake
2020-09-25Meta+Games: Make clang-format-10 cleanBen Wiederhake
2020-09-25Meta+DevTools: Make clang-format-10 cleanBen Wiederhake
2020-09-25Meta+Demos: Make clang-format-10 cleanBen Wiederhake
2020-09-25Meta+Applications: Make clang-format-10 cleanBen Wiederhake
2020-09-25Meta+AK: Make clang-format-10 cleanBen Wiederhake
2020-09-25LibGUI: Register the "text" property on GUI::TextEditorAndreas Kling
2020-09-25LibGUI: Register the "text" property on GUI::LabelAndreas Kling
2020-09-24LibGUI: Move keyboard item activation up to AbstractViewAndreas Kling
All views want the same behavior, so move this to the base class. :^)
2020-09-24LibGUI: Stop editing in views when the view is hiddenAndreas Kling
This fixes an issue in FileManager where an editor opened in the table view mode would remain open after switching to the icon mode.
2020-09-24UserspaceEmulator: Use Core::ArgsParserMaciej Zygmanowski
2020-09-24LibGUI: Make inline editing work in ColumnsViewAndreas Kling
All it took was overriding content_rect() :^)
2020-09-24LibGUI: Move editing key handling up to AbstractViewAndreas Kling
We want all views to respond to the editing key as long as the relevant edit trigger is activated.
2020-09-24LibGUI: Support inline editing in GUI::IconViewAndreas Kling
IconView now responds to the editing key (F2) if the view is editable. It does feel a little bit weird to have content_rect() return the text rect for an item, and not the whole item rect. This internal API could probably be better.
2020-09-24FileManager: Teach DirectoryView subviews to create editing delegatesAndreas Kling
This enables inline editing of filenames for table views, where this is already supported. More work in LibGUI will be required to support the feature in icon and columns views.
2020-09-24LibGUI: Support editing filenames through FileSystemModel :^)Andreas Kling
2020-09-24LibGUI: Make SortingProxyModel forward is_editable() and set_data()Andreas Kling
This will allow us to edit models through a SortingProxyModel. :^)
2020-09-24Kernel: Remove a whole bunch of unnecessary includes in Process.cppAndreas Kling
2020-09-24LibWeb: Add a separate UA style sheet for documents in quirks modeAndreas Kling
We need to make some additional tweaks to the default UA style when displaying documents in quirks mode.
2020-09-23Applications+IRCClient: Use new format functions.asynts
2020-09-23AK: Add outf, warnf and dbgf.asynts
2020-09-23AK: Resolve format related circular dependencies properly.asynts
With this commit, <AK/Format.h> has a more supportive role and isn't used directly. Essentially, there now is a public 'vformat' function ('v' for vector) which takes already type erased parameters. The name is choosen to indicate that this function behaves similar to C-style functions taking a va_list equivalent. The interface for frontend users are now 'String::formatted' and 'StringBuilder::appendff'.
2020-09-23AK: Allow calling format without arguments.asynts
2020-09-23js: Use VM::exception() instead of Interpreter::exception()Andreas Kling
The VM is always there, but we only have an Interpreter while we are running code.
2020-09-23UserspaceEmulator+LibX86: Clean up some obnoxious template spamAndreas Kling
Don't require clients to templatize modrm().read{8,16,32,64}() with the ValueWithShadow type when we can figure it out automatically. The main complication here is that ValueWithShadow is a UE concept while the MemoryOrRegisterReference inlines exist at the lower LibX86 layer and so doesn't have direct access to those types. But that's nothing we can't solve with some simple template trickery. :^)
2020-09-23UserspaceEmulator: Fix off-by-one in code cache accessNico Weber
m_cached_code_end points at the first invalid byte, so we need to update the cache if the last byte we want to read points at the end or past it. Previously we updated the cache 1 byte prematurely in read16, read32, read64 (but not in read8). Noticed by reading the code (the code looked different from read8() and the other 3). I didn't find anything that actually hit this case.
2020-09-23Base: Fixup forgotten 'example' heading name in Shell man pageAnotherTest
As noticed in #3578.
2020-09-23UserspaceEmulator+LibX86: Add support for 64-bit memory reads and writes (#3584)Nico Weber
This is useful for reading and writing doubles for #3329. It is also useful for emulating 64-bit binaries. MemoryOrRegisterReference assumes that 64-bit values are always memory references since that's enough for fpu support. If we ever want to emulate 64-bit binaries, that part will need minor updating.
2020-09-23LibGUI: Use on_up_pressed/on_down_pressed events in SpinBoxTibor Nagy
Fixes keyboard increment/decrement of SpinBox values. After PR #2412 the TextBox class started not propagating arrow key events to the parent widgets because it handles them itself now. It also added two new events for these arrow keys, so use them instead in SpinBox.
2020-09-22Themes: Set the ruler color in "Sunshine" to cold grayTibor Nagy
2020-09-22LibWeb: Disallow cross-origin access to <iframe>.contentDocumentAndreas Kling
With this patch, we now enforce basic same-origin policy for this one <iframe> attribute. To make it easier to add more attributes like this, I've added an extended IDL attribute ("[ReturnNullIfCrossOrigin]") that does exactly what it sounds like. :^)
2020-09-22LibWeb: Add Origin::is_same(const Origin&)Andreas Kling
Getting ready for some extremely basic same-origin policy stuff, this initial implementation simply checks that two origins have identical protocol, host and port.
2020-09-22LibWeb: Add WindowObject::origin()Andreas Kling
This is a convenience getter to retrieve the security origin of a DOM window's document.
2020-09-22LibWeb: Dispatch DOM "load" event on <iframe> elementsAndreas Kling
2020-09-22LibWeb: Rename HTMLIFrameElement::hosted_frame() => content_frame()Andreas Kling
This matches the standard API names contentWindow and contentDocument.
2020-09-22LibJS: Let the VM cache an empty ("") PrimitiveStringAndreas Kling
Empty string is extremely common and we can avoid a lot of heap churn by simply caching one in the VM. Primitive strings are immutable anyway so there is no observable behavior change outside of fewer collections.
2020-09-22LibJS: Move well-known symbols to the VMAndreas Kling
No need to instantiate unique symbols for each Interpreter; they can be VM-global. This reduces the memory cost and startup time anyway.
2020-09-22LibJS: Use VM::exception() instead of Interpreter::exception() a bunchAndreas Kling
There's a lot more of these things to fix. We'll also want to move from passing Interpreter& around to VM& instead wherever that is enough.
2020-09-22LibJS: Add a way to get from a Cell to the VMAndreas Kling
2020-09-22LibJS: Move the current exception from Interpreter to VMAndreas Kling
This will allow us to throw exceptions even when there is no active interpreter in the VM.
2020-09-22AK: Add missing overload to format.asynts
I had this in #3580 but I must have lost it during rebasing.
2020-09-22SystemMonitor: Wrap file descriptor and unveiled paths model into a ↵Tibor Nagy
SortingProxyModel
2020-09-22SystemMonitor: Fix assert when sorting by the "Page map" columnTibor Nagy
2020-09-22SystemMonitor: Wrap adapters and sockets model into a SortingProxyModelTibor Nagy
2020-09-22SystemMonitor: Add sorting key to the devices modelTibor Nagy
2020-09-22AK: Use format in String::number.asynts
2020-09-22AK: Consider long and unsigned long as integral types.asynts
Two things I hate about C++: 1. 'int', 'signed int' and 'unsigned int' are two distinct types while 'char, 'signed char' and 'unsigned char' are *three* distinct types. This is because 'signed int' is an alias for 'int' but 'signed char' can't be an alias for 'char' because on some weird systems 'char' is unsigned. One might think why not do it the other way around, make 'int' an alias for 'signed int' and 'char' an alias for whatever that is on the platform, or make 'char' signed on all platforms. But who am I to ask? 2. 'unsigned long' and 'unsigned long long' are always different types, even if both are 64 bit numbers. This commit fixes a few bugs that coming from this. See Also: 1b3169f405ac9250b65ee3608e2962f51d2d8e3c.
2020-09-22AK: Add StringBuilder::appendff using the new format.asynts
StringBuilder::appendf was already used, thus this name. If we some day replace all usages of printf, we could rename this method.