Commit Graph

  • 4056f2abf9 new screen supports resize without reflow Mitchell Hashimoto 2022-08-31 20:48:48 -07:00
  • 621b067e83 update overlay but we still can't use master Mitchell Hashimoto 2022-08-31 19:58:44 -07:00
  • cf969b27eb screen2: dynamically allow scrollback when its needed Mitchell Hashimoto 2022-08-31 19:54:10 -07:00
  • a192249c77 circbuf rotateToZero does nothing if its already at zero Mitchell Hashimoto 2022-08-31 19:33:28 -07:00
  • 50612002a8 circbuf resize operation Mitchell Hashimoto 2022-08-31 17:17:43 -07:00
  • b7b83db119 fix some circbuf bugs (add tests) and add rotation Mitchell Hashimoto 2022-08-31 17:08:02 -07:00
  • cb06bf4873 use non-extern unions so we get safety checks Mitchell Hashimoto 2022-08-31 16:01:16 -07:00
  • 10ec5f509e circbuf doesn't use zeroes, it takes a default value Mitchell Hashimoto 2022-08-31 15:27:45 -07:00
  • e8009f89cf add cursor to new screen Mitchell Hashimoto 2022-08-31 15:13:30 -07:00
  • c7b7e3cb44 screen2: selection Mitchell Hashimoto 2022-08-31 14:58:43 -07:00
  • f6f8fee804 screen2: scrolling (to a certain extent), copying in tests Mitchell Hashimoto 2022-08-31 11:44:39 -07:00
  • 001ec979a2 big API surface for screen2, can test write/read now Mitchell Hashimoto 2022-08-30 17:33:25 -07:00
  • 19b46b6084 starting the new screen implementation Mitchell Hashimoto 2022-08-30 16:39:49 -07:00
  • f2af0983cf dedicated circular buffer Mitchell Hashimoto 2022-08-30 16:35:44 -07:00
  • 953f1aeb29 pkg/harfbuzz: fixing some APIs Mitchell Hashimoto 2022-08-30 10:02:40 -07:00
  • 36140d3ee9 TODO Mitchell Hashimoto 2022-08-29 20:26:02 -07:00
  • 39376feae0 font: shape API, calls shape and outputs some debug Mitchell Hashimoto 2022-08-29 20:15:29 -07:00
  • 5a232e0c3e utf8proc: add grapheme break API Mitchell Hashimoto 2022-08-29 20:13:13 -07:00
  • dafc99746d font: Face initializes a hb_font alongside every face Mitchell Hashimoto 2022-08-29 16:46:53 -07:00
  • 0505018186 Line segmentation into text runs Mitchell Hashimoto 2022-08-29 16:39:48 -07:00
  • f73783a521 pkg/harfbuzz: add guessSegmentProperties Mitchell Hashimoto 2022-08-29 14:52:16 -07:00
  • 2cab94e64d move cell metrics calculation out into src/font Mitchell Hashimoto 2022-08-29 11:44:05 -07:00
  • bd9c048c02 use new font.GroupCache, remove unused font structs Mitchell Hashimoto 2022-08-29 11:34:21 -07:00
  • a0aa100815 font: GroupCache is like Group, but with caching... Mitchell Hashimoto 2022-08-29 11:10:50 -07:00
  • a75035c042 font: introduce Group which will eventually replace FallbackSet Mitchell Hashimoto 2022-08-29 10:16:53 -07:00
  • 985b329c8a src/font: change Face to require font to init Mitchell Hashimoto 2022-08-29 08:48:40 -07:00
  • f1abca51f7 convert src/font to use new pkg/freetype Mitchell Hashimoto 2022-08-28 22:22:16 -07:00
  • 28e9619361 allow non-printables even if modifiers are pressed Mitchell Hashimoto 2022-08-28 21:12:58 -07:00
  • 672f6e720c pkg/freetype: finish APIs we need Mitchell Hashimoto 2022-08-28 21:06:36 -07:00
  • 8ef3018189 pkg/freetype: loading glyphs Mitchell Hashimoto 2022-08-28 21:02:39 -07:00
  • a2b06d7705 pkg/freetype: more face APIs Mitchell Hashimoto 2022-08-28 17:18:23 -07:00
  • 7af9091497 pkg/freetype: Library and Face Mitchell Hashimoto 2022-08-28 17:07:27 -07:00
  • 483bb90cf9 shader: only downsample glyph if its bigger than width plus padding Mitchell Hashimoto 2022-08-28 16:57:30 -07:00
  • d8a06e7768 clean up some imports Mitchell Hashimoto 2022-08-28 14:50:22 -07:00
  • f42bac6bc4 pkg/harfbuzz: use extern funcs for freetype interop Mitchell Hashimoto 2022-08-28 14:47:47 -07:00
  • c377e19bd0 pkg/harfbuzz: shape Mitchell Hashimoto 2022-08-28 12:11:26 -07:00
  • 1f2d2e926c pkg/harfbuzz: buffer get glyph positions and info Mitchell Hashimoto 2022-08-28 12:05:00 -07:00
  • 0b4344693a pkg/harfbuzz: buffer set direction, script, and language Mitchell Hashimoto 2022-08-28 11:54:38 -07:00
  • 3c077ee19b pkg/harfbuzz: buffer init, add Mitchell Hashimoto 2022-08-28 11:42:57 -07:00
  • 5d42e2711f pkg/harfbuzz: face, font, freetype Mitchell Hashimoto 2022-08-28 11:21:35 -07:00
  • 3d68c72912 pkg/harfbuzz: some blob APIs Mitchell Hashimoto 2022-08-28 10:54:42 -07:00
  • 44dfe54fe8 output harfbuzz version on startup Mitchell Hashimoto 2022-08-28 10:26:49 -07:00
  • 755760a79e pkg/harfbuzz: some functions and tests Mitchell Hashimoto 2022-08-28 10:24:07 -07:00
  • 367aba62c4 Add harfbuzz build (not used yet) Mitchell Hashimoto 2022-08-28 10:09:39 -07:00
  • 8ff98446a9 sgr parsing bright colors now sets color properly Mitchell Hashimoto 2022-08-27 10:55:10 -07:00
  • 1609c8e775 hook up scroll down and up CSI codes (SD/SU) Mitchell Hashimoto 2022-08-27 10:46:11 -07:00
  • cd74902f89 Charsets Mitchell Hashimoto 2022-08-27 10:33:38 -07:00
  • 1be4626726 update TODO Mitchell Hashimoto 2022-08-27 10:29:52 -07:00
  • 312d589a2e implement locking shift Mitchell Hashimoto 2022-08-27 10:20:54 -07:00
  • 4a247e3bb8 single shift 2/3 Mitchell Hashimoto 2022-08-27 10:16:21 -07:00
  • bee82d58dc Shift Out/Shift In (invoke charset into GL) Mitchell Hashimoto 2022-08-27 10:08:01 -07:00
  • 7626f194e9 basic charset mapping, support configuration, print tests Mitchell Hashimoto 2022-08-27 09:42:05 -07:00
  • 75b63f3df3 british charset Mitchell Hashimoto 2022-08-27 08:41:06 -07:00
  • 40ca2a69fb starting charset tables Mitchell Hashimoto 2022-08-26 20:00:25 -07:00
  • 1f4572b3d2 update TODO Mitchell Hashimoto 2022-08-26 15:20:21 -07:00
  • 50409271a3 Mouse Reporting #8 Mitchell Hashimoto 2022-08-26 15:10:14 -07:00
  • ff460887b5 fix miscompilation around sgr mode Mitchell Hashimoto 2022-08-26 15:07:22 -07:00
  • fe6ba02709 sgr pixels mouse report format Mitchell Hashimoto 2022-08-26 14:59:44 -07:00
  • 1039ad76bf urxvt reporting format Mitchell Hashimoto 2022-08-26 14:57:35 -07:00
  • f551c0ef66 SGR reporting Mitchell Hashimoto 2022-08-26 14:55:18 -07:00
  • b46fe522d5 UTF-8 mouse reporting Mitchell Hashimoto 2022-08-26 14:42:20 -07:00
  • ab305add6c any event mouse tracking Mitchell Hashimoto 2022-08-26 14:26:42 -07:00
  • bd5dd69538 normal event (motion) mouse tracking Mitchell Hashimoto 2022-08-26 14:17:42 -07:00
  • 9aa5378ffa Track/cache button state and mods state Mitchell Hashimoto 2022-08-26 13:55:24 -07:00
  • a4bab6592d normal events can now track scroll Mitchell Hashimoto 2022-08-26 12:24:24 -07:00
  • 3096b32f13 mouse normal events in x10 format Mitchell Hashimoto 2022-08-26 12:15:13 -07:00
  • 93f45af41b X10 click-only mouse reporting Mitchell Hashimoto 2022-08-26 12:04:54 -07:00
  • 43b7727cf8 change u1 in mode to bool Mitchell Hashimoto 2022-08-26 11:27:44 -07:00
  • f9274bdafc define mouse events, all TODO Mitchell Hashimoto 2022-08-26 10:46:22 -07:00
  • dc6fc5c1c3 implement faint colors (SGR 2) Mitchell Hashimoto 2022-08-26 11:13:34 -07:00
  • 65df657b4e make cell attrs bools instead of u1s Mitchell Hashimoto 2022-08-26 11:09:48 -07:00
  • 469515c02b bind function keys (F1 to F12) Mitchell Hashimoto 2022-08-26 10:27:41 -07:00
  • 4ffd5cd994 SGR 39/49 (reset fg/bg, respectively) Mitchell Hashimoto 2022-08-26 09:56:17 -07:00
  • a1130095f8 note charsets are TODO Mitchell Hashimoto 2022-08-26 09:27:51 -07:00
  • 551de6eda4 update TODO Mitchell Hashimoto 2022-08-25 16:45:39 -07:00
  • c7a5045bd4 missed comment Mitchell Hashimoto 2022-08-25 16:24:20 -07:00
  • 84b75967a2 scale the cursor position from screen coords to pixels Mitchell Hashimoto 2022-08-25 16:09:54 -07:00
  • a9b34b43c5 code for getting physical DPI Mitchell Hashimoto 2022-08-25 15:53:29 -07:00
  • 9601920b4d font size is now in font points, determine size based on window DPI Mitchell Hashimoto 2022-08-25 12:29:28 -07:00
  • 46bbab5d10 ignore zero-width characters for now Mitchell Hashimoto 2022-08-24 13:48:22 -07:00
  • d0f888daae update TODO, we fixed atlas resizing Mitchell Hashimoto 2022-08-24 12:41:51 -07:00
  • f4b1783c1f atlas tracks modified/resize state, reallocate on GPU if resized Mitchell Hashimoto 2022-08-24 12:41:31 -07:00
  • d8248ef0ae fix data corruption on growing the Atlas Mitchell Hashimoto 2022-08-24 12:14:02 -07:00
  • 4751e3185d update TODO Mitchell Hashimoto 2022-08-24 11:32:47 -07:00
  • 76bce8893c Keybindings, support arrow keys, home/end, page up/down Mitchell Hashimoto 2022-08-24 11:24:30 -07:00
  • 5713c2f468 move input test to qualified Mitchell Hashimoto 2022-08-24 11:17:28 -07:00
  • 3b5a9caff5 hook up more control keys: home, end, page up, page down Mitchell Hashimoto 2022-08-24 11:16:36 -07:00
  • 80376ce6da hook up keybindings for copy/paste and arrow keys Mitchell Hashimoto 2022-08-24 11:08:39 -07:00
  • e6f09093dd unify non-printables up by bindings Mitchell Hashimoto 2022-08-24 10:21:27 -07:00
  • b33268cee3 only handle non-printables on press/release, and BS is 0x7F Mitchell Hashimoto 2022-08-24 10:18:05 -07:00
  • 622537d665 look up keybindings on keypress, clean up how non-printables are handled Mitchell Hashimoto 2022-08-24 10:02:13 -07:00
  • 2800a46854 keybind parsing in CLI args Mitchell Hashimoto 2022-08-24 09:31:14 -07:00
  • 222f70857a move input stuff to src/input Mitchell Hashimoto 2022-08-23 19:52:14 -07:00
  • bc9f81e8d2 binding parse action with parameter Mitchell Hashimoto 2022-08-23 17:48:52 -07:00
  • 7303909d01 key.Binding and basic parsing Mitchell Hashimoto 2022-08-23 17:40:36 -07:00
  • 5d8915cc9a remove unused zig file Mitchell Hashimoto 2022-08-23 15:30:13 -07:00
  • 8e1e8cfc51 pin new zig-overlay repo Mitchell Hashimoto 2022-08-23 10:23:02 -07:00
  • 3774972caf update mach Mitchell Hashimoto 2022-08-23 10:07:18 -07:00
  • 5c61bfbe8f fix stage2 compiler error Mitchell Hashimoto 2022-08-21 21:38:24 -07:00
  • 13225a2d78 remove done shader TODO Mitchell Hashimoto 2022-08-20 17:39:34 -07:00