summaryrefslogtreecommitdiff
path: root/Userland
AgeCommit message (Collapse)Author
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-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-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-11config: Port to LibMain :^)Kenneth Myhra
2021-12-11dd: Port to LibMain :^)Kenneth Myhra
2021-12-11date: Port to LibMain :^)Kenneth Myhra
2021-12-11LibCore: Add syscall wrapper for clock_settime()Kenneth Myhra
2021-12-11cut: Port to LibMain :^)Kenneth Myhra
2021-12-11cpp-processor: Port to LibMain :^)Kenneth Myhra
2021-12-11cpp-parser: Port to LibMain :^)Kenneth Myhra
2021-12-11cpp-lexer: Port to LibMain :^)Kenneth Myhra
2021-12-11comm: Port to LibMain :^)Kenneth Myhra
2021-12-11clear: Port to LibMain :^)Kenneth Myhra
2021-12-11cksum: Port to LibMain :^)Kenneth Myhra
2021-12-11chres: Port to LibMain :^)Kenneth Myhra
2021-12-11chown: Port to LibMain :^)Kenneth Myhra
2021-12-11LibCore: Add syscall wrapper for getgrnam()Kenneth Myhra
2021-12-11LibCore: Add syscall wrapper for getpwnam()Kenneth Myhra
2021-12-11chgrp: Port to LibMain :^)Kenneth Myhra
2021-12-11LibCore: Add syscall wrapper for chown()Kenneth Myhra
2021-12-11checksum: Port to LibMain :^)Kenneth Myhra
2021-12-11cal: Port to LibMain :^)Kenneth Myhra
2021-12-11Mail: Ask the user if they want to see the mail settingsUndefine
2021-12-11LibGL: Improve mipmap lookup in Texture2DJelle Raaijmakers
We can get rid of a `VERIFY` since we already do this in `Array::at()`. Also move `::mipmap()` to the header file so it is inlined in `Sampler2D`.
2021-12-11LibGL: Always inline `to_rgba32()`Jelle Raaijmakers
This function popped up in profiles.
2021-12-11LibGL: Fix scissor box coordinate systemJelle Raaijmakers
We were working with (0, 0) being the top-left of the render target, but `glScissor` documentation states that this should be the bottom-left instead.
2021-12-11LibGL: Remove unused default from rasterizer scissor_boxJelle Raaijmakers
Its value is always set in the constructor.
2021-12-11LibGL: Use simpler syntax for `GL_SCISSOR_BOX` retrievalJelle Raaijmakers
2021-12-11LibGL: Make `glDeleteTextures` skip over 0 namesJelle Raaijmakers
As stated in the manual: glDeleteTextures silently ignores 0's and names that do not correspond to existing textures. If we do not skip these 0 names, they end up as invalid free texture names in our name allocator.
2021-12-11LibGL: Remove unnecessary `break;` from SoftwareGLContextJelle Raaijmakers
2021-12-11LibGL: Fix a number of enum values in `gl.h`Jelle Raaijmakers
Their values should match the enum values as defined by the Khronos Group.
2021-12-11LibGL: Implement `GL_(UN)PACK_ALIGNMENT`Jelle Raaijmakers
These enums are used to indicate byte-alignment when reading from and to textures. The `GL_UNPACK_ROW_LENGTH` value was reimplemented to support overriding the source data row width.
2021-12-11LibGL: Use `Array::back()` for last mipmap selectionJelle Raaijmakers
2021-12-11Piano: Add track controls to the player widgetJose Flores
Adds the ability to add a track and cycle through the tracks from player widget. Also displays the current track being played or edited in a dropdown that allows for quick track selection.
2021-12-11Playground: Remove redundant pledge()bugreport0
2021-12-11Inspector: Update pledge() idiombugreport0
2021-12-11CrashReporter: Remove redundant pledge()bugreport0
2021-12-11passwd: Port to LibMainDavid Lindbom
2021-12-11Everywhere: Fix -Winconsistent-missing-override warnings from ClangDaniel Bertalan
This option is already enabled when building Lagom, so let's enable it for the main build too. We will no longer be surprised by Lagom Clang CI builds failing while everything compiles locally. Furthermore, the stronger `-Wsuggest-override` warning is enabled in this commit, which enforces the use of the `override` keyword in all classes, not just those which already have some methods marked as `override`. This works with both GCC and Clang.
2021-12-11LibJS+LibUnicode: Generate unique numeric symbol listsTimothy Flynn
There are 443 number system objects generated, each of which held an array of number system symbols. Of those 443 arrays, only 39 are unique. To uniquely store these, this change moves the generated NumericSymbol enumeration to the public LibUnicode/NumberFormat.h header with a pre- defined set of symbols that we need. This is to ensure the generated, unique arrays are created in a known order with known symbols. While it is unfortunate to no longer discover these symbols at generation time, it does allow us to ignore unwanted symbols and perform less string-to- enumeration conversions at lookup time.
2021-12-11passwd: Remove redundant pledge()bugreport0
2021-12-10LibJS: Use AK::NaN<double> in Date::date_value() to fix build errorLinus Groh
This was not happening locally for me, neither when building Lagom on Linux nor with the SerenityOS toolchain... error: implicit conversion from ‘float’ to ‘double’ to match other result of conditional [-Werror=double-promotion]