summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2021-12-12LibGL: Implement `glLineWidth`Jelle Raaijmakers
2021-12-12LibGL: Implement `glLoadMatrixd`Jelle Raaijmakers
2021-12-12LibGL: Implement `glIsList`Jelle Raaijmakers
2021-12-12LibGL: Implement `glTranslated`Jelle Raaijmakers
2021-12-12LibGL: Implement `glClearStencil`Jelle Raaijmakers
2021-12-12LibGL: Implement `glScaled`Jelle Raaijmakers
2021-12-12LibGL: Add stubs for `glMaterialf` and `glMaterialfv`Jelle Raaijmakers
2021-12-12LibGL: Implement `glRasterPos2i`Jelle Raaijmakers
2021-12-12LibGL: Implement `glNormal3f` and `glNormal3fv`Jelle Raaijmakers
2021-12-12LibGL: Implement `glStencil*` functionsJelle Raaijmakers
This implements the context state for stencil testing functions and operations. No rasterization is implemented.
2021-12-12LibGL: Implement `GL_STENCIL_TEST`Jelle Raaijmakers
Only the state is implemented; not the rasterization phase.
2021-12-12LibGL: Implement `glListBase`Jelle Raaijmakers
2021-12-12LibGL: Implement `glCallLists`Jelle Raaijmakers
2021-12-12LibGL: Implement `glTexCoord2fv`Jelle Raaijmakers
2021-12-12LibGL: Implement `glColor3ub`Jelle Raaijmakers
2021-12-12LibGL: Add stubs for `glLightf` and `glLightfv`Jelle Raaijmakers
2021-12-12LibGL: Implement `glMultMatrixf`Jelle Raaijmakers
2021-12-12LibGL: Implement `glGetDoublev`Jelle Raaijmakers
2021-12-12LibGL: Define `GL_ES_VERSION_2_0`Jelle Raaijmakers
GLES 2.0 is a subset of OpenGL, so we allow applications to compile against LibGL as if it fully supports GLES 2.0. Additionally, we set the definitions to an integer value of `1` so applications that check for availability like this... int main() { return GL_ES_VERSION_2_0; } ...can actually compile. At least ScummVM uses this, and Mesa defines their constants in the same way: https://gitlab.freedesktop.org/mesa/mesa/-/blob/44b9e11ddbb5f693e299fae034163e7687043862/include/GL/gl.h#L105
2021-12-12Kernel: Remove sys$select() syscallJean-Baptiste Boric
Now that the userland has a compatiblity wrapper for select(), the kernel doesn't need to implement this syscall natively. The poll() interface been around since 1987, any code still using select() should be slapped silly. Note: the SerenityOS source tree mostly uses select() and not poll() despite SerenityOS having support for poll() since early 2019...
2021-12-12strace: Remove formatting support for SC_selectJean-Baptiste Boric
2021-12-12strace: Add formatting support for SC_pollJean-Baptiste Boric
2021-12-12strace: Sort syscalls formatters in alphabetic orderJean-Baptiste Boric
2021-12-12UserspaceEmulator: Remove support for SC_select syscallJean-Baptiste Boric
2021-12-12UserspaceEmulator: Add support for SC_poll syscallJean-Baptiste Boric
2021-12-12UserspaceEmulator: Sort syscalls in alphabetic orderJean-Baptiste Boric
2021-12-12LibC: Rewrite pselect() as a wrapper for ppoll()Jean-Baptiste Boric
2021-12-12Kernel: Split off sys$poll() into Syscalls/poll.cppJean-Baptiste Boric
2021-12-12LibWeb: Implement TextEncoder.prototype.encodingLinus Groh
2021-12-12LibWeb: Implement TextEncoder.prototype.encode()Linus Groh
2021-12-12LibWeb: Add the TextEncoder interfaceLinus Groh
This is from the Encoding Standard (https://encoding.spec.whatwg.org), and therefore gets its own namespace and subdirectory within LibWeb :^)
2021-12-12Docs: Fixed grammar "diagnose what is the problem"Jonta
2021-12-12AK: Fix preprocessor OS checkMartin Blicha
Instead of checking __linux__ macro directly, the code should check if this macro is defined. This is already done correctly a couple of lines above. I ran into this when trying to build libjs-test262 on MacOS where I got the following error message error: "__linux__" is not defined, evaluates to 0 [-Werror=undef]
2021-12-12Spreadsheet: Avoid using Value.to_string_without_side_effects()Ali Mohammad Pur
We should use .to_string() and handle the possible exceptions. This makes the displayed cell contents so much more informative than '[object Object]' :^)
2021-12-12Spreadsheet: Replace hacky JS VM configuration with a more correct oneAli Mohammad Pur
Now we give each sheet its own interpreter and realm, and only make them share the VM. This is to prepare for the next commit, which will be refactoring a bunch of things to propagate exceptions via ThrowCompletionOr<T>.
2021-12-12Spreadsheet: Replace the help button's text with something we can renderAli Mohammad Pur
2021-12-12Spreadsheet: Reimplement ranges as lazy objects instead of arraysAli Mohammad Pur
Doing so makes it possible to talk about theoretically infinite ranges like "all of column A".
2021-12-12Spreadsheet: Don't recreate the global environment on every evaluationAli Mohammad Pur
The worksheet's realm does not change, and is not shared, so we can safely leave the global environment be. This fixes lexical scoping in the spreadsheet's runtime file.
2021-12-12Ports: Don't return errno value as pointer in openssh portSahan Fernando
2021-12-12Userland: Use File::lines() range-based for loop where appropriateSahan Fernando
2021-12-12LibCore: Add support for range-based for loops on LineIteratorsSahan Fernando
2021-12-12LibCore: Fix bug in IODevice::LineIterator causing skipped linesSahan Fernando
2021-12-12Tests: Add tests for sigwait/sigwaitinfo/sigtimedwaitIdan Horowitz
2021-12-12LibC: Implement sigwait()Idan Horowitz
This is done internally by just calling the more modern sigtimedwait syscall and then massaging the results to fit sigwait's interface.
2021-12-12LibC: Implement sigwaitinfo()Idan Horowitz
This is implemented as a simple wrapper around sigtimedwait()
2021-12-12Kernel+LibC: Implement sigtimedwait()Idan Horowitz
This includes a new Thread::Blocker called SignalBlocker which blocks until a signal of a matching type is pending. The current Blocker implementation in the Kernel is very complicated, but cleaning it up is a different yak for a different day.
2021-12-12Kernel: Flip incorrect bitwise set/clear of signal maskIdan Horowitz
2021-12-12Kernel: Unblock threads only on unmasked signalsIdan Horowitz
Signals that were explicitly masked should not unblock threads.
2021-12-12Kernel: Preserve pending signals across execve(2)sIdan Horowitz
As required by posix. Also rename Thread::clear_signals to Thread::reset_signals_for_exec since it doesn't actually clear any pending signals, but rather does execve related signal book-keeping.
2021-12-12Kernel: Remove alternative signal stack settings on execve(2)Idan Horowitz
A successful call to execve(2) removes any existing alternate signal stack.