Age | Commit message (Collapse) | Author | |
---|---|---|---|
2019-08-13 | Terminal: Rename Terminal => TerminalWidget | Andreas Kling | |
This makes it a bit less confusing which is what between TerminalWidget and VT::Terminal. | |||
2019-08-13 | LibVT: Rename VT::BufferPosition to VT::Position and move to own file | Andreas Kling | |
2019-08-12 | LibVT: Factor out terminal emulation from Terminal to make it reusable | Andreas Kling | |
Now that we're bringing back the in-kernel virtual console, we should move towards having a single implementation of terminal emulation. This patch rips out the emulation code from the Terminal application and turns it into the beginnings of LibVT. The basic design idea is that users of VT::Terminal will implement and provide a VT::TerminalClient subclass to handle presentation-specific things. We'll need to iterate on this, but it's a start. :^) | |||
2019-08-04 | Terminal: Paint bold text with a bold font. | Andreas Kling | |
This was really straightforward since all the necessary pieces were already in place. This patch just passes a bold font to draw_glyphs() for buffer cells with the bold attribute set. :^) | |||
2019-07-24 | Terminal: Convert Vector<OwnPtr> to NonnullOwnPtrVector. | Andreas Kling | |
2019-07-20 | GWidget: Add set_preferred_size(width, height) overload. | Andreas Kling | |
It was annoying to always write set_preferred_size({ width, height }). :^) | |||
2019-07-18 | LibDraw: Introduce (formerly known as SharedGraphics.) | Andreas Kling | |
Instead of LibGUI and WindowServer building their own copies of the drawing and graphics code, let's it in a separate LibDraw library. This avoids building the code twice, and will encourage better separation of concerns. :^) | |||
2019-07-08 | Terminal: Try to preserve line contents when resizing the terminal window. | Andreas Kling | |
This is still destructive when shrinking, but clearly better than throwing everything away. | |||
2019-07-03 | AK: Rename the common integer typedefs to make it obvious what they are. | Andreas Kling | |
These types can be picked up by including <AK/Types.h>: * u8, u16, u32, u64 (unsigned) * i8, i16, i32, i64 (signed) | |||
2019-07-01 | Terminal: Track which character cells have had something printed in them. | Andreas Kling | |
This helps us figure out where lines end, which we need when computing the selected text for copy-to-clipboard. :^) | |||
2019-06-30 | Terminal: Unbreak single-line text selection. | Andreas Kling | |
2019-06-28 | Terminal: Make it so typing resets the cursor blink timer. | Andreas Kling | |
Patch contributed by "pd" | |||
2019-06-28 | Terminal: Don't write erroneous characters to PTY when modifiers pressed. | Andreas Kling | |
Additionally the Alt modifier now generates the correct characters, as do Insert/Delete/PgUp/PgDown. Patch contributed by "pd" | |||
2019-06-28 | Terminal: Changex internal opacity representation to byte instead of float. | Andreas Kling | |
This lets us avoid some math during paint events. Patch contributed by "pd" | |||
2019-06-23 | Terminal: Don't compute buffer positions outside the possible area. | Andreas Kling | |
2019-06-23 | Terminal: Add basic mouse selection with copy and paste. | Andreas Kling | |
Left mouse button selects (and copies the selection on mouse up). The right mouse button then pastes whatever's on the clipboard. I always liked this behavior in PuTTY, so now we have it here as well :^) | |||
2019-06-22 | Terminal: Fix compiler warnings. | Andreas Kling | |
2019-06-21 | AK: Rename RetainPtr => RefPtr and Retained => NonnullRefPtr. | Andreas Kling | |
2019-06-12 | Terminal: Add support for DCH ('P' final) | Andreas Kling | |
Patch contributed by "pd" | |||
2019-06-11 | Terminal: Add support for REP ('b' final) | Andreas Kling | |
Patch contributed by "pd" | |||
2019-06-06 | Terminal: Reallocate kept lines when resizing the terminal. | Andreas Kling | |
Otherwise we end up with garbage text when making the window bigger. | |||
2019-06-06 | Terminal: Store horizontal tabs in a Vector. | Andreas Kling | |
There's no need to muck around with manual malloc()/free() here. | |||
2019-06-03 | Terminal: Use Vectors and OwnPtrs for Terminal lines. Adjust scroll | Christopher Dumas | |
region behavior | |||
2019-06-03 | Terminal: Implement scroll region termcodes | Christopher Dumas | |
2019-06-01 | Terminal: Fix insufficient repaint after visual bell clears. | Andreas Kling | |
Also make the bell time a little shorter, 500ms kinda wears on you. :^) | |||
2019-06-01 | Terminal: Single settings window & consistant visual bell timing | Christopher Dumas | |
2019-06-01 | Terminal: Audible vs Visible beep option | Christopher Dumas | |
2019-05-30 | Terminal: Fix some missing text attributes | Robin Burchell | |
Probably doesn't actually change much yet since we don't support many text rendering options, but it's at least good to have the options, and to record things we don't yet support too. | |||
2019-05-27 | IRC client setttings, Terminal settings, more WM settings | Christopher Dumas | |
2019-05-17 | Terminal: Uh, also change the one caller of beep() to sysbeep().. | Andreas Kling | |
2019-05-15 | Kernel: Add a beep() syscall that beeps the PC speaker. | Andreas Kling | |
Hook this up in Terminal so that the '\a' character generates a beep. Finally emit an '\a' character in the shell line editing code when backspacing at the start of the line. | |||
2019-05-12 | Change String&& arguments to const String& in a couple of places. | Andreas Kling | |
String&& is more nuisance than anything, and the codegen improvement is basically negligible since the underlying type is already retainable. | |||
2019-05-11 | Terminal: Give the terminal widget a sunken container look. | Andreas Kling | |
This blends perfectly with the new window frames. :^) | |||
2019-05-08 | Replace various copies of parse_uint(String) with String::to_uint(). | Andreas Kling | |
2019-05-07 | Shell: Support home/end keys for line editing. | Andreas Kling | |
2019-05-03 | WindowServer+LibGUI: Allow changing whether windows have alpha channels. | Andreas Kling | |
Use this in Terminal to tell the window server to not bother with the alpha channel in the backing store if we're running without transparency. Semi-transparent terminals look neat but they slow everything down, so this keeps things fast while making it easy to switch to the flashy mode. :^) | |||
2019-04-30 | Terminal: <esc>[m should clear the current attribute. | Andreas Kling | |
This was causing GCC error messages to appear in all-red text. | |||
2019-04-29 | Terminal: Add ability to adjust the terminal's opacity. | Andreas Kling | |
2019-04-20 | AK: Add String::copy(BufferType) helper. | Andreas Kling | |
This will create a String from any BufferType that has data() and size(). | |||
2019-04-20 | Sprinkle use of AK::Vector in various places. | Andreas Kling | |
Some of these are less helpful than others. Avoiding a bunch of mallocs in the event loop wakeup code is definitely nice. | |||
2019-04-10 | LibCore: Move LibGUI/GNotifier to LibCore/CNotifier. | Andreas Kling | |
2019-04-10 | LibCore: Add CEvent and make LibGUI/GEvent inherit from it. | Andreas Kling | |
2019-03-30 | Terminal+LibGUI: Make the terminal cursor blink. | Andreas Kling | |
Added a GTimer class to help with this. It's just a simple GObject subclass that sets up an event loop timer and invokes a callback on timeout. | |||
2019-03-28 | LibGUI: Add a GPainter class that inherits from Painter. | Andreas Kling | |
This gets rid of the last little piece of LibGUI knowledge in Painter. | |||
2019-03-14 | Terminal: Enough compat work for Lynx to actually load web pages. | Andreas Kling | |
2019-03-14 | Terminal: Use TERM=xterm by default, and implement some more escapes. | Andreas Kling | |
2019-03-14 | Terminal: Add some logging for the 'r' final. | Andreas Kling | |
I haven't implemented scrolling regions yet, but this will at least give me some indication that they're being used. | |||
2019-03-10 | LibGUI: Don't fill widgets with background color by defualt. | Andreas Kling | |
2019-03-06 | More work on the variable-width font support. | Andreas Kling | |
Katica is now the default system font, and it looks quite nice. :^) I'm gonna need to refine the GTextBox movement stuff eventually, but it works well-enough for basic editing now. | |||
2019-03-06 | Make a preparation pass for variable-width fonts. | Andreas Kling | |