summaryrefslogtreecommitdiff
path: root/DevTools
AgeCommit message (Collapse)Author
2020-06-03HackStudio: Support debugging variables with Enum typesFalseHonesty
Variables with enum types can now be both viewed and modified in the variables view!
2020-05-31HackStudio: Allow changing variable values in debuggerFalseHonesty
This patch adds a context menu to variables in the debugger variable tree view that has an option to set the value of a variable. An input box will pop up asking for the new value of the variable, which is then parsed and used to set the actual variable.
2020-05-30LibGUI+HackStudio: Fix cursor appearance and crash while debuggingFalseHonesty
HackStudio uses a TreeView to display the list of current variables while debugging, and when the program completes, it sets that view's model to a null model. This would trip an assertion if the TreeView had something selected at the time, so this patch lessens the assertion into a simple null check. Additionally, the cursor would look laggy when moving about the editor because the code was waiting for a window repaint to update the cursor's look when it makes more sense to update the cursor when it actually moves. This change also requires the base GUI::TextEditor to expose a getter to tell if its currently in a drag selection. Finally, requesting a context menu in the line ruler on the side of the editor would also place/remove breakpoints, which was counter intuitive, so this requires a left click to modify breakpoint placement.
2020-05-30LibMarkdown: Change MD Document parse API to return a RefPtrFalseHonesty
Markdown documents are now obtained via the static Document::parse method, which returns a RefPtr<Document>, or nullptr on failure.
2020-05-29Meta: Add a script check the presence of "#pragma once" in header filesEmanuele Torre
.. and make travis run it. I renamed check-license-headers.sh to check-style.sh and expanded it so that it now also checks for the presence of "#pragma once" in .h files. It also checks the presence of a (single) blank line above and below the "#pragma once" line. I also added "#pragma once" to all the files that need it: even the ones we are not check. I also added/removed blank lines in order to make the script not fail. I also ran clang-format on the files I modified.
2020-05-29LibCore+Inspector: Move RPC sockets to /tmp/rpcSergey Bugaev
We have a hierarchical filesystem, let's make use of it :^)
2020-05-28LibWeb: Rename Web::HtmlView => Web::PageViewAndreas Kling
This widget doesn't just view HTML, it views a web page. :^)
2020-05-27LibGUI: Add up & down arrow hooks and input history to TextBoxFalseHonesty
This patch adds the ability to enable "input history" on a textbox, allowing to navigate between the history with the arrow keys. Also removes a custom TextBox subclass from HackStudio that added the exact same hooks, and moves it to use the now standard ones.
2020-05-27LibGUI: Change GUI::KeyEvent::key() type to KeyCodeSergey Bugaev
...instead of a plain int. Yay for some type safety.
2020-05-26AK: Rename FileSystemPath -> LexicalPathSergey Bugaev
And move canonicalized_path() to a static method on LexicalPath. This is to make it clear that FileSystemPath/canonicalized_path() only perform *lexical* canonicalization.
2020-05-21LibGUI: Get rid of Model::ColumnMetadata and always use auto-sizingAndreas Kling
Auto-sizing of view columns is now enabled by default. This removes the last remaining need for ColumnMetadata, so this patch gets rid of it.
2020-05-21LibGUI: Add Model::Role::TextAlignment and remove from ColumnMetadataAndreas Kling
2020-05-21LibGUI: Models should always specify font via Model::Role::FontAndreas Kling
This gets rid of one field in ColumnData. The goal is to get rid of all fields and lose ColumnData entirely.
2020-05-18HackStudio: Don't use an OOB TextRange when looking for hovered textAndreas Kling
We could going +1 past the end of a TextDocumentLine here. This caused us to crash in the brave new world, so we could find it. :^)
2020-05-16LibIPC: Allow opt-in UTF-8 validation on message parametersAndreas Kling
You can now mark String message parameters with the [UTF8] attribute. This will cause the generated decoder to perform UTF-8 validation and reject the message if the given parameter is not a valid UTF-8 string. This frees up the receiving side from having to do this validation at a higher level.
2020-05-15ProfileViewer: Fix opening the kernel imageSergey Bugaev
The kernel image is now at /boot/Kernel (not /boot/kernel), so adjust the paths accordingly.
2020-05-14Build: Switch to CMake :^)Sergey Bugaev
Closes https://github.com/SerenityOS/serenity/issues/2080
2020-05-12LibGUI: Include keyboard modifier state with button on_click callsAndreas Kling
This will allow you us to implement special behavior when Ctrl+clicking a button.
2020-05-12LibIPC+IPCCompiler: Templatize encoding/decoding of Optional<T>Andreas Kling
This was the last one! IPCCompiler no longer has any type-specific encoding/decoding logic! :^)
2020-05-12LibGfx+IPCCompiler: Add IPC encoders for Color and ShareableBitmapAndreas Kling
2020-05-12LibIPC+LibGfx: Templatize IPC encoding as well as decodingAndreas Kling
Now most classes dictate how they are serialized and deserialized when transmitted across LibIPC sockets. This also makes the IPC compiler a bit simpler. :^)
2020-05-12HackStudio: Don't crash when navigating backtrace with up/down keysAndreas Kling
It's up to BacktraceModel::index() to validate its inputs.
2020-05-09Meta: Add script to enforce license headers & run it on TravisLinus Groh
2020-05-09HackStudio: Update variables view based on the selected backtrace frameItamar
2020-05-09HackStudio: Show a backtrace in the debug information tabItamar
2020-05-09HackStudio: Reorganize debugger-related filesItamar
The debugger's files are now placed under HackStudio/Debugger
2020-05-09LibVT+Terminal: Support hyperlinks in the terminal :^)Andreas Kling
We now support basic hyperlinking in the terminal with <OSC>;8;;URL<ST> Links are opened via LaunchServer on Ctrl+LeftMouse.
2020-05-08HackStudio: Support variable inspection in nested scopesItamar
2020-05-08HackStudio: Close the debug tab when debugged program exitsItamar
2020-05-07HackStudio: Gracefully handle unfound source filesItamar
2020-05-07HackStudio: Apply INI syntax highlighter when opening a .ini fileLinus Groh
2020-05-07HackStudio: Rename ProjectType::{Javascript -> JavaScript}Linus Groh
2020-05-06Misc: Replace "String(string_view)" with "string_view.to_string()"Linus Groh
StringView::to_string() was added in 917ccb1 but not actually used anywhere yet.
2020-05-05HackStudio: Show local variables in the debuggerItamar
We now have a Debug Information tab, which displays the variables in the current scope in a tree view.
2020-05-05HackStudio: Take scrolling into consideration when painting breakpointsItamar
Also, we now scroll to the currently executed line when execution is paused in the debugger.
2020-05-03LibTextCodec: Start fleshing out a simple text codec libraryAndreas Kling
We're starting with a very basic decoding API and only ISO-8859-1 and UTF-8 decoding (and UTF-8 decoding is really a no-op since String is expected to be UTF-8.)
2020-05-03LibIPC: Add a simple IPC::Dictionary type (String key -> String value)Andreas Kling
2020-05-03IPCCompiler: Add support for Optional<T> (so long as T is trivial)AnotherTest
2020-05-02IPCCompiler: Add support for Vector<i32>Andreas Kling
It would be a lot nicer to support arbitrary Vector<T> but for now I'm only adding Vector<i32> since I need it for something..
2020-04-28LibMarkdown: Drop MD prefixes and move into "Markdown" namespace :^)Andreas Kling
2020-04-25HackStudio: Toolbar icon overhaulAndreas Kling
2020-04-25HackStudio: Add cpp debuggerItamar
The HackStudio debugger integrates with LibDebug to provide source-level debugging. The user can set breakpoints at various positions in the source code, and then run the program in debug mode. When the program is stopped, the current execution position is displayed, and the user can insert/remove breakpoints, continue execution, or single step the program.
2020-04-25HackStudio: GUI support for setting breakpoints on source code linesItamar
2020-04-23Applications: Tweak main layout spacing and backgroundAndreas Kling
2020-04-23LibGUI: Add a ToolBarContainer widget and put most ToolBars in oneAndreas Kling
This mimics the Explorer toolbar container from Windows 2000 and looks pretty neat! :^)
2020-04-21LibGUI: Make it easier to create checkable GUI::ActionsAndreas Kling
This patch adds GUI::Action::create_checkable() helpers that work just like the existing create() helpers, but the actions become checkable(!) Clients are no longer required to manage the checked state of their actions manually, but instead they will be checked/unchecked as needed by GUI::Action itself before the activation hook is fired.
2020-04-21LibGUI: Make MenuBar a Core::ObjectAndreas Kling
This makes it show up in Inspector with all the menus inside it. :^)
2020-04-20LibELF: Make ELF::Loader RefCountedItamar
2020-04-18ProfileViewer: Make the invert menu item visible again :^)Emanuel Sprung
2020-04-12ProfileViewer: Switching to percent mode should take effect immediatelyAndreas Kling