Commit Graph

  • a0664dbbf0 Optimize calculating dirty region when we know the entire screen is dirty Kovid Goyal 2016-10-21 17:48:19 +05:30
  • c31421daab Micro-optimization Kovid Goyal 2016-10-21 17:40:17 +05:30
  • 051ddce63a Add support for bold and italic fonts Kovid Goyal 2016-10-21 17:38:04 +05:30
  • 2153e56020 Render to an offscreen buffer Kovid Goyal 2016-10-21 17:19:33 +05:30
  • 6acddc3e6d ... Kovid Goyal 2016-10-21 15:48:36 +05:30
  • 90e803c542 Reset should also restore the fg/bg colors to default Kovid Goyal 2016-10-21 13:26:42 +05:30
  • f25abac41d Implement changing of default colors Kovid Goyal 2016-10-21 13:12:06 +05:30
  • fedfdf00a9 Speed up painting by detecting the most common background color and using it as the overall background color on each paint event Kovid Goyal 2016-10-21 12:26:03 +05:30
  • 77eb005af1 ... Kovid Goyal 2016-10-21 11:09:51 +05:30
  • 8c28434d41 Dont dirty the tracker on object creation needlessly Kovid Goyal 2016-10-21 10:03:44 +05:30
  • 4df05d71d6 Nicer message on assert Kovid Goyal 2016-10-21 10:02:25 +05:30
  • d7787b38fc Micro-optimization Kovid Goyal 2016-10-21 10:01:15 +05:30
  • 0d51392e66 Implement setting of cursor color Kovid Goyal 2016-10-21 09:23:03 +05:30
  • 864106a974 Re-arrange methods for greater readability Kovid Goyal 2016-10-21 08:48:02 +05:30
  • c9167b51fc Nicer syntax for running a non-default program Kovid Goyal 2016-10-21 08:41:11 +05:30
  • f86f28a4bd ... Kovid Goyal 2016-10-21 08:31:23 +05:30
  • 86789c5d84 Removed unused junk from the terminfo file Kovid Goyal 2016-10-21 08:30:18 +05:30
  • b8df0e3382 Remove bce from the terminfo file as we do not do background color erase Kovid Goyal 2016-10-21 08:02:10 +05:30
  • 53f5f34e03 ... Kovid Goyal 2016-10-21 08:00:34 +05:30
  • 682400c3e7 Implement the alternate screen buffer Kovid Goyal 2016-10-21 06:58:34 +05:30
  • 369bb39d2a oops Kovid Goyal 2016-10-21 06:38:07 +05:30
  • b833451018 ... Kovid Goyal 2016-10-21 06:27:22 +05:30
  • a4bef64de6 Implement changing cursor shape Kovid Goyal 2016-10-21 06:23:05 +05:30
  • 38dfe12d4e Turn off secondary DA response as it causes the terminal to freeze until we implement the proper responses Kovid Goyal 2016-10-21 05:57:53 +05:30
  • e50d811da7 Read DCS control sequences Kovid Goyal 2016-10-21 04:24:20 +05:30
  • 067662de94 Sanitize title and icon names Kovid Goyal 2016-10-21 03:53:31 +05:30
  • 9e40ec413e Implement middle-click to paste selection and also update window title/icon Kovid Goyal 2016-10-21 01:52:02 +05:30
  • 404e074d64 Make DebugStream also execute commands, not just dump them Kovid Goyal 2016-10-21 00:55:15 +05:30
  • 5bd728fe2f ... Kovid Goyal 2016-10-21 00:05:50 +05:30
  • 088f6aad25 Fix rendering of cursor Kovid Goyal 2016-10-20 23:54:32 +05:30
  • 226e333e9e Refactor to make TerminalWidget self contained Kovid Goyal 2016-10-20 23:40:24 +05:30
  • 5088f9b8e5 Add DECPAM and DECPNM Kovid Goyal 2016-10-20 21:37:13 +05:30
  • f9cc8f6584 Implement handling for special keys Kovid Goyal 2016-10-20 15:25:29 +05:30
  • e010d13994 Fix Tab key causing entire screen to redraw Kovid Goyal 2016-10-20 14:54:51 +05:30
  • 01885ae2a3 Reduce the update debounce interval for smoother interactive editing Kovid Goyal 2016-10-20 14:27:43 +05:30
  • 1e555e91ba ... Kovid Goyal 2016-10-20 14:22:31 +05:30
  • dd767bdf91 Tighten up dirty_cells() Kovid Goyal 2016-10-20 14:21:25 +05:30
  • ca30bba165 ... Kovid Goyal 2016-10-20 13:10:00 +05:30
  • 050cf22f24 Only redraw the screen once every 50ms Kovid Goyal 2016-10-20 13:00:44 +05:30
  • 275161e0da ... Kovid Goyal 2016-10-20 12:13:29 +05:30
  • 37ac5d4194 Use a rendered text cache for faster painting Kovid Goyal 2016-10-20 12:00:14 +05:30
  • efeb2ebdaa Speed up dirty_cells Kovid Goyal 2016-10-20 11:13:04 +05:30
  • eaa6c7656a Add an option to dump profiling data Kovid Goyal 2016-10-20 10:04:59 +05:30
  • c0a9e75c63 Speed up apply_cursor() Kovid Goyal 2016-10-20 10:04:05 +05:30
  • 08f1ecc362 Speed up painting of cells by doing the minimum work for empty cells Kovid Goyal 2016-10-20 09:35:53 +05:30
  • 0c5f41b2b3 timeit() context manager to measure time for executing a block of code Kovid Goyal 2016-10-20 09:13:33 +05:30
  • 2e2ccbb750 Fix rendering of cursor Kovid Goyal 2016-10-20 08:40:38 +05:30
  • 176676aadd Wrong argument order for TIOCSWINSZ Kovid Goyal 2016-10-20 08:18:20 +05:30
  • 4a5795c469 ... Kovid Goyal 2016-10-20 07:57:57 +05:30
  • 98482c745a Fix index colors Kovid Goyal 2016-10-20 07:57:03 +05:30
  • 2d9ae7c01f Shutdown cleanly Kovid Goyal 2016-10-20 07:56:48 +05:30
  • 0e89f3cda1 Ensure linebuf is the correct size on resize Kovid Goyal 2016-10-20 07:44:37 +05:30
  • ad3c08e1cb Start work on keyboard handling Kovid Goyal 2016-10-20 07:35:17 +05:30
  • 37db3c1e01 Fix displaying on unhandled exceptions Kovid Goyal 2016-10-20 07:34:28 +05:30
  • 5aa718bea4 Implement basic rendering Kovid Goyal 2016-10-20 06:50:50 +05:30
  • 7103e6f659 Preserve cursor poistion on resize Kovid Goyal 2016-10-20 06:49:47 +05:30
  • be5a1e69a8 ... Kovid Goyal 2016-10-20 06:43:34 +05:30
  • 297fb09e71 Remove unused code Kovid Goyal 2016-10-20 05:33:14 +05:30
  • d95383fa43 Dont mark cells the cursor leaves as dirty Kovid Goyal 2016-10-20 05:29:32 +05:30
  • c0c466a492 More work on the Screen class Kovid Goyal 2016-10-20 05:23:47 +05:30
  • b354e95401 Implement cursor movement APIs Kovid Goyal 2016-10-19 20:15:07 +05:30
  • fea7c2dcb0 Implement erase_in_screen() Kovid Goyal 2016-10-19 13:49:27 +05:30
  • fd7a6b20e0 ... Kovid Goyal 2016-10-19 13:49:15 +05:30
  • bbdfce2141 Micro-optimization Kovid Goyal 2016-10-19 11:53:14 +05:30
  • 56bff2f4a7 Implement character manipulation APIs Kovid Goyal 2016-10-19 11:25:55 +05:30
  • 3ae0e4e5ac Add support for unicode combining chars and wide chars Kovid Goyal 2016-10-18 20:30:18 +05:30
  • 2aa047a09d Merge bordering as well as overlapping cell change ranges Kovid Goyal 2016-10-18 12:15:14 +05:30
  • 355bfce189 Implement the fast draw path for single width characters Kovid Goyal 2016-10-18 11:04:30 +05:30
  • 63d228f21b ... Kovid Goyal 2016-10-18 09:26:54 +05:30
  • cca33a5550 Ensure terminfo definition is available to child process Kovid Goyal 2016-10-17 23:12:29 +05:30
  • 3bb429dfa8 Add a terminfo file for kitty Kovid Goyal 2016-10-17 18:19:59 +05:30
  • 5d7b644000 More convenient API for getting QColors from attrs Kovid Goyal 2016-10-17 14:26:46 +05:30
  • ac5a3bb6c7 Store bg and fg colors in a single array Kovid Goyal 2016-10-17 14:18:15 +05:30
  • 44e8238eaf API to set text in Line efficiently Kovid Goyal 2016-10-17 13:50:53 +05:30
  • b02dc836fb Use a regex for faster filtering of uinicode data Kovid Goyal 2016-10-17 10:41:55 +05:30
  • f345ac1bdd A function to efficiently check for the common case pure ascii strings Kovid Goyal 2016-10-17 09:11:10 +05:30
  • 3bc7fc1933 Use lib wcwidth() when Qt not available Kovid Goyal 2016-10-17 08:54:11 +05:30
  • 2b3855eea9 More efficient memory layout for Line Kovid Goyal 2016-10-17 08:24:16 +05:30
  • 9de6387e58 Finish tests for Line and Cursor Kovid Goyal 2016-10-17 07:05:54 +05:30
  • ce8319de94 Micro-optimization Kovid Goyal 2016-10-17 00:20:09 +05:30
  • 4921b3d437 Add support for the secondary device attributes control code (DA2) Kovid Goyal 2016-10-17 00:05:36 +05:30
  • e08385f991 Test for apply_cursor and cursor_from Kovid Goyal 2016-10-16 22:44:30 +05:30
  • b9c15ef8e3 Tests for Cursor Kovid Goyal 2016-10-16 20:47:00 +05:30
  • adaf748852 Framework for testing Kovid Goyal 2016-10-16 20:36:27 +05:30
  • a24c6ad991 ... Kovid Goyal 2016-10-16 20:12:36 +05:30
  • 3fc1755d8d De-couple write_to_child Kovid Goyal 2016-10-16 20:00:15 +05:30
  • f7eaf3fee5 Implement writing to child process Kovid Goyal 2016-10-16 19:38:35 +05:30
  • 29ba13835a Run the child process Kovid Goyal 2016-10-16 17:59:19 +05:30
  • 1065a88cef Create the pty Kovid Goyal 2016-10-16 16:51:45 +05:30
  • 8564c92cef Allow running programs other than the shell Kovid Goyal 2016-10-16 16:47:27 +05:30
  • 0259d88f37 Start work on screen implementation Kovid Goyal 2016-10-16 16:41:10 +05:30
  • 23bc25eb64 Get rid of numpy Kovid Goyal 2016-10-15 18:16:49 +05:30
  • c12a3ff826 Implement re-wrapping of lines Kovid Goyal 2016-10-15 17:52:58 +05:30
  • 1875ea7eb4 Basic text rendering works Kovid Goyal 2016-10-15 16:47:17 +05:30
  • 0336873afc Implement painting of cells Kovid Goyal 2016-10-15 14:26:53 +05:30
  • 59f92f9db8 An efficient datatype to store lines Kovid Goyal 2016-10-15 13:41:29 +05:30
  • 3069faff5c Look for config file in stabdard location on startup Kovid Goyal 2016-10-14 18:30:09 +05:30
  • 789e75afac Allow running python commands in the kitty context from the CLI Kovid Goyal 2016-10-14 18:16:23 +05:30
  • 4666b31f8a Load config from file Kovid Goyal 2016-10-14 15:10:48 +05:30
  • 90679edcc6 Application skeleton Kovid Goyal 2016-10-14 14:38:25 +05:30