summaryrefslogtreecommitdiff
path: root/Libraries
AgeCommit message (Collapse)Author
2020-04-19LibCore: Check for fork() failureSergey Bugaev
For those good boy points :^)
2020-04-19LibCore+LibGUI: Move DesktopServices to LibCoreSergey Bugaev
2020-04-19LibJS: Improve CallExpression::execute()'s error messagesLinus Groh
2020-04-19LibJS: Add Array.prototype.sliceKesse Jones
2020-04-19WindowServer/LibGUI: Enforce minimum window sizeLinus Groh
2020-04-18LibJS: Use AK::String::index_of() for StringPrototype::index_of()Linus Groh
2020-04-18LibJS: Allow reserved words as keys in object expressions.Stephan Unverwerth
2020-04-18LibGUI: Add GUI::DesktopServices::open(URL)Andreas Kling
This API is used to open a URL in whatever way the desktop system feels is best. If you give it a file:// URL, it will try to work out a good application to open the URL with. For all other protocols, it will open a Browser instance. :^)
2020-04-18LibGUI: Make view widgets fill background by defaultAndreas Kling
Most clients will want background autofill, so let's make it the default mode.
2020-04-18LibGUI: Fix ItemView crash when rubberbanding in main widget viewAndreas Kling
For some reason this was trying to access the Palette of the parent widget which is obviously not going to work if the ItemView itself is the main widget in its window.
2020-04-18LibGUI: Make ItemView respect Widget::fill_with_background_color()Andreas Kling
This makes it possible to create a see-through ItemView. :^)
2020-04-18WindowServer: Add WindowType::DesktopAndreas Kling
This new window type can be used to implement a desktop file manager for example. :^)
2020-04-18LibWeb: Parse <br/> into a self-closed br elementAndreas Kling
We were parsing "<br/>" as an open tag with the name "br/". This fixes that specific scenario. We also rename is_self_closing_tag() to is_void_element() to better fit the specs.
2020-04-18LibJS: Fix parsing of IfStatement, fixes #1829Stephan Unverwerth
2020-04-18LibJS: Move the empty object shape from Interpreter to GlobalObjectAndreas Kling
The big remaining hurdle before a GlobalObject-agnostic Interpreter is the fact that Interpreter owns and vends the GlobalObject :^)
2020-04-18LibJS: Move builtin prototypes to the global objectAndreas Kling
This moves us towards being able to run JavaScript in different global objects without allocating a separate GC heap.
2020-04-18LibGfx: Fix draw_triangle() clipping calculationsStephan Unverwerth
2020-04-18LibJS: Implement nullish coalescing operator (??)Linus Groh
2020-04-18LibGfx: Add Vector3 and Matrix4x4 classesStephan Unverwerth
This adds two templated 3D math classes. They have already been typedf'd as FloatVector3, DoubleVector3, FloatMatrix4x4 and DoubleMatrix4x4
2020-04-18LibGfx: Add draw_triangle() for drawing filled trianglesStephan Unverwerth
2020-04-18LibJS: Use enumerator macro to mark all constructors in GlobalObjectAndreas Kling
We were forgetting to mark the String constructor! So this patch fixes that and ensures we won't forget anyone in the future.
2020-04-18LibJS+LibWeb: Pass prototype to Object constructorAndreas Kling
Everyone who constructs an Object must now pass a prototype object when applicable. There's still a fair amount of code that passes something fetched from the Interpreter, but this brings us closer to being able to detach prototypes from Interpreter eventually.
2020-04-18LibJS: Pass prototype to Function constructorsAndreas Kling
2020-04-18LibJS: Pass prototype to Error constructorsAndreas Kling
2020-04-18LibJS: Pass prototype to Date constructorAndreas Kling
2020-04-18LibJS: Pass prototype to BooleanObject constructorAndreas Kling
2020-04-18LibJS: Pass prototype to StringObject constructorAndreas Kling
2020-04-18LibJS: Pass prototype to NumberObject constructorAndreas Kling
2020-04-18LibJS: Make Array constructor take its prototypeAndreas Kling
Let's start moving towards native JS objects taking their prototype as a constructor argument. This will eventually allow us to move prototypes off of Interpreter and into GlobalObject.
2020-04-18LibC: getprotoent() family of functionsRead H
This commit implements the getprotoent() family of functions, including getprotoent() getprotobyname() getprotobynumber() setprotoent() endprotoent() This implementation is very similar to the getservent family of functions, which is what led to the discovery of a bug in the process of reading the aliases. The ByteBuffer for the alias strings didn't include a null terminating character, this was fixed for both the protoent and servent family of functions by appending a null character to the end of them before adding them to the alias lists.
2020-04-17LibJS: Add Array.prototype.concatKesse Jones
2020-04-17LibJS: Add test for semicolon insertion (#1828)Stephan Unverwerth
2020-04-17LibJS: Fix semicolon insertionStephan Unverwerth
2020-04-17LibJS: Implement automatic semicolon insertionStephan Unverwerth
2020-04-17LibWeb: Implement JS confirm()Nick Tiberi
2020-04-16LibWeb: Implement CanvasRenderingContext2D::stroke_rect() with linesAndreas Kling
Stroking rects by drawing individual lines gives us line width support without having to extend the Painter::draw_rect() code. :^)
2020-04-16LibGfx: Add FloatPoint::to_int_point()Andreas Kling
2020-04-16LibWeb: Add some basic path drawing functionality to the canvas elementAndreas Kling
This patch adds the following methods to CanvasRenderingContext2D: - beginPath() - moveTo(x, y) - lineTo(x, y) - closePath() - stroke() We also add the lineWidth property. :^)
2020-04-16LibGfx: Add Gfx::Path, a basic 2D path with <canvas> semanticsAndreas Kling
This will be used to implement painting of 2D paths. This first patch adds support for line_to(), move_to() and close(). It will try to have the same semantics as the HTML <canvas> element. To stroke a Path, simply pass it to Painter::stroke_path().
2020-04-16LibJS: Dump a JavaScript backtrace when throwing exceptionsAndreas Kling
2020-04-16LibJS: Add String.prototype.substringKesse Jones
2020-04-16LibJS: Remove no-op code in ScriptFunction constructorAndreas Kling
2020-04-16LibJS: Add String.prototype.concatKesse Jones
2020-04-16LibJS: Make Value::m_type default to Type::EmptyAndreas Kling
This is not effectful since all constructors overwrite the type anyway, but it seems reasonable that the default value of m_type would match what Value() would give you.
2020-04-16LibJS: Allow cells to mark null pointersAndreas Kling
This simplifies the cell visiting functions by letting them not worry about the pointers they pass to the visitor being null.
2020-04-16LibC netdb: Requested ChangesRead H
fix all requested changes including: - remove explicit vector initialization - change keep_service_file_open to boolean - closing service file on seek error - change C level char allocation to use ByteBuffer instead - simplified getservby* loops to a single loop - change fill_getserv_buffers return to early-return style
2020-04-16LibC: Service entry APIRead H
This commit implements the getservent family of functions: getservent() setservent() endservent() getservbyname() getservbyport() for accessing the /etc/services file. This commit has addressed the issues identified by utilizing more C++ structures, addressing unchecked error possibilities, strncpy bounds checking, and other issues found in the initial pull request
2020-04-16LibWeb: Scroll back to the top when a new page is loadedJack Byrne
2020-04-16LibDebug: Add ContinueBreakAtSyscall decisionItamar
When the user of the DebugSession uses this decision, the debugged program will be continued until it is either stopped by a singal (e.g as a reuslt of a breakpoint), or enters a syscall.
2020-04-16Userland: Add "functrace" utilityItamar
functrace traces the function calls a program makes. It's like strace, but for userspace. It works by using Debugging functionality to insert breakpoints at call&ret instructions.