Age | Commit message (Collapse) | Author | |
---|---|---|---|
2020-03-13 | Applications: Use "Document - AppName" window title format | Tibor Nagy | |
Fixes #1444 | |||
2020-03-13 | LibGUI: Add missing copyright headers | Oriko | |
2020-03-13 | LibJS: Fix endless loop in string lexing | Oriko | |
2020-03-13 | HackStudio: Use Javascript syntax highlighter | Oriko | |
2020-03-13 | TextEditor: Use Javascript syntax highlighter | Oriko | |
2020-03-13 | LibGUI: Add Javascript syntax highlighter | Oriko | |
2020-03-13 | LibGUI: Abstract token pair matching | Oriko | |
2020-03-13 | LibJS: Fix lexing of the last character in a file | Stephan Unverwerth | |
Before this commit the last character in a file would be swallowed. This also fixes parsing of empty files which would previously ASSERT. | |||
2020-03-13 | HackStudio: Add Javascript projects | Oriko | |
2020-03-13 | HackStudio: Fix the wrong cursor being drawn | Oriko | |
2020-03-13 | LibJS: Add parsed parameters to FunctionDeclaration | Linus Groh | |
2020-03-13 | LibJS: Don't allow the redeclaration of a `var` variable using let/const | 0xtechnobabble | |
Previously, we were allowing the redeclaration of a variable with `let` or `const` if it was declared initially using `var`, we should not tolerate any form of variable redeclaration using let/const. | |||
2020-03-13 | LibJS: Add Object::put_native_function() for convenience | Andreas Kling | |
This makes it a little bit nicer to add native function properties to JavaScript objects. Thanks to Sergey for suggesting it! :^) | |||
2020-03-13 | LibJS: Make it possible to go from a Cell* to its Heap& | Andreas Kling | |
This patch makes all HeapBlock allocations aligned to their block size, enabling us to find the HeapBlock* for a given Cell* by simply masking bits off of the cell address. Use this to make a simple Heap& getter for Cell, which lets us avoid plumbing the Heap& everywhere. | |||
2020-03-13 | LibJS: Split Function into subclasses NativeFunction and ScriptFunction | Andreas Kling | |
Both types of functions are now Function and implement calling via: virtual Value call(Interpreter&, Vector<Value> arguments); This removes the need for CallExpression::execute() to care about which kind of function it's calling. :^) | |||
2020-03-13 | Solitaire: Fix automatic moving of cards | Till Mayer | |
A previous change trying to fix an assertion error completely broke the automatic moving of cards, this commit will fix this problem | |||
2020-03-13 | Solitaire: Minor tweaks to animation x_velocity and bouncyness | Till Mayer | |
2020-03-13 | Solitaire: Add about dialog and 32x32 icon | Till Mayer | |
2020-03-12 | LibJS: Move GlobalObject to its own Object subclass | Andreas Kling | |
This is mostly for tidiness at the moment. | |||
2020-03-12 | LibJS: Replace $gc() hack with a NativeFunction on the global object | Andreas Kling | |
To make this work, also start passing Interpreter& to native functions. | |||
2020-03-12 | LibJS: Fix broken parsing of 0-argument CallExpression | Andreas Kling | |
2020-03-12 | LibJS: Allow implicit Value construction from GC-allocated things | Andreas Kling | |
2020-03-12 | LibJS: Add NativeFunction, a callable wrapper around a C++ lambda | Andreas Kling | |
This can be used to implement arbitrary functionality, callable from JavaScript. To make this work, I had to change the way CallExpression passes arguments to the callee. Instead of a HashMap<String, Value>, we now pass an ordered list of Argument { String name; Value value; }. This patch includes a native "print(argument)" function. :^) | |||
2020-03-12 | LibJS: Fix NumericLiteral::dump() output | Andreas Kling | |
2020-03-12 | LibJS: Parse CallExpression arguments | Andreas Kling | |
2020-03-12 | LibJS: Dump CallExpression arguments (if any) | Andreas Kling | |
2020-03-12 | HackStudio: Abstract over syntax highlighter | Oriko | |
2020-03-12 | HackStudio: Underline header links | Oriko | |
2020-03-12 | LibGUI: Add underlines to highlighting | Oriko | |
2020-03-12 | LibGUI: Take scroll offset into account on ItemView rubberband selection | Tibor Nagy | |
Same kind of issue as #1271. | |||
2020-03-12 | LibJS: Implement const variable declarations | 0xtechnobabble | |
This also tightens the means of redeclaration of a variable by proxy, since we now have a way of knowing how a variable was initially declared, we can check if it was declared using `let` or `const` and not tolerate redeclaration like we did previously. | |||
2020-03-12 | LibJS: Implement update expressions | 0xtechnobabble | |
Note that currently only the non-prefixed variant is supported (i.e i++ not ++i), this variant returns the value of the argument before the update. | |||
2020-03-12 | LibJS/Parser: Parse let declarations | 0xtechnobabble | |
2020-03-12 | LibJS: Tweak AssignmentOp names | Andreas Kling | |
2020-03-12 | LibJS: Fix some coding style mistakes in Lexer | Andreas Kling | |
2020-03-12 | Meta: Add for-loop JavaScript test program | Conrad Pankoff | |
2020-03-12 | LibJS: Implement for statement | Conrad Pankoff | |
2020-03-12 | LibJS: Parse === and !== binary operators | Conrad Pankoff | |
2020-03-12 | LibJS: Parse > and < binary operators | Conrad Pankoff | |
2020-03-12 | LibJS: Implement +=, -=, *=, and /= assignment operators | Conrad Pankoff | |
2020-03-12 | LibJS: Implement <= and >= binary operators | Conrad Pankoff | |
2020-03-12 | LibJS: Implement multiplication and division operators | Conrad Pankoff | |
2020-03-12 | LibJS: Add test for function with arguments | howar6hill | |
2020-03-12 | LibJS: Implement basic MemberExpression parsing | Andreas Kling | |
At last we can parse "hello friends".length :^) | |||
2020-03-12 | LibJS: Implement basic lexing + parsing of StringLiteral | Andreas Kling | |
This still includes the double-quote characters (") but at least the AST comes out right. | |||
2020-03-12 | HackStudio: Add header navigation | Oriko | |
2020-03-12 | LibGUI: Parse #include statements separately | Oriko | |
2020-03-12 | ACPI: Examine bit width in Generic address structure before asserting | Liav A | |
Also, the switch-case flow is simplified for IO access within a Generic address strucuture's handling. | |||
2020-03-12 | ACPI: Keep common flags in structures for later usage | Liav A | |
2020-03-12 | Ext2FS: Reset the found_a_group flag | marprok | |