Commit graph

111 commits

Author SHA1 Message Date
grovesNL
a3e035881b Fill out some more docs 2023-01-29 22:29:17 -03:30
grovesNL
be9b4cb36c Avoid negative width/height in Buffer::set_size
Negative width/height may cause unexpected effects on the layout, which
we can avoid by clamping.
2023-01-26 22:16:23 -03:30
Audrey Dutcher
a5903bb3bf Don't do profile timing on wasm32 2023-01-23 14:18:44 -07:00
Audrey Dutcher
1225106ddc Fix docs 2023-01-19 09:19:54 -07:00
Audrey Dutcher
c6cf57e213 Add enum for cursor affinity; rename constructor to new_with_affinity 2023-01-19 09:19:54 -07:00
Audrey Dutcher
da842ec10d Add cursor affinity 2023-01-19 09:19:54 -07:00
Jeremy Soller
8cc988d374 Run cargo fmt 2023-01-04 20:03:03 -07:00
Jeremy Soller
00bc4d1e88 Fix tests 2023-01-04 20:02:00 -07:00
Audrey Dutcher
210ca61f13 remove highlight_blocks, add LayoutRun::highlight 2023-01-04 18:41:26 -07:00
Audrey Dutcher
961b10d7b1 Add Buffer::highlight_blocks 2023-01-04 18:41:26 -07:00
Audrey Dutcher
92b3758909 Add ExactSizeIterator impl for LayoutRunsIter 2023-01-04 18:41:26 -07:00
Hojjat
b9fef72f76 Added an enum with the option for "No Wraping" 2022-12-20 13:38:34 -07:00
Hojjat
089a926615 Bidi reordering works with wrapping. 2022-12-20 04:48:53 -07:00
Héctor Ramón Jiménez
67950724c3 Add line width field to LayoutLine 2022-12-15 11:17:54 -07:00
Jeremy Soller
ee54e7626b
Vi-style editor and other editor improvements (#40)
* WIP VI wrapper for editor

* WIP: block cursor

* Create Edit trait, run CI on all feature options

* Add prints describing build steps to ci.sh

* Custom rendering for Vi editor

* Clippy fixes

* More clippy fixes

* Show clippy results in CI

* Fix for Redox

* Fix clippy lint

* Add vi feature to enable vi-style editor

* Add escape to libcosmic text box
2022-11-15 12:26:59 -07:00
Hojjat
b253800383
Add Padding to the TextBox (#36)
* WIP: initial text-margin support

* Fix the selection issue when clicking the margins

* Move the margin size into the main

* using padding, consistent with iced text_input

* Added top and bottom margin

* bugfix: selection starting from the top margin works

* bugfix: left half of first glyph was being ignored
2022-11-10 11:55:12 -07:00
Jeremy Soller
bbe7d77b7b
Improvements to syntax editor, integrate with libcosmic editor 2022-11-09 10:44:51 -07:00
Jeremy Soller
268805ba0c no_std support 2022-11-08 13:24:14 -07:00
Hojjat
83307e7969 Switch to peekable to avoid looping the runs again 2022-11-06 11:09:17 -07:00
Hojjat
c1c2248572 bugfix: text selection starting from the bottom 2022-11-06 11:09:17 -07:00
Ian Douglas Scott
0d3fb1dd9d Use ouroboros in FontSystem to avoid lifetime bound
Perhaps not quite what ouroboros is expected to be used for, but it's
not too bad, and avoiding the lifetime bound can be a huge help.
2022-11-04 10:37:32 -06:00
Jeremy Soller
ac354c3a2a
Remove AttrsList lifetime bound 2022-11-04 09:44:54 -06:00
Jeremy Soller
a13fd9c591
Improve docs 2022-10-31 11:36:54 -06:00
Jeremy Soller
92cad6fe13
Decouple editing from buffer 2022-10-31 11:24:36 -06:00
Jeremy Soller
88bd1c9235
Add layout_opt and shape_opt getters to TextBufferLine 2022-10-27 17:40:00 -06:00
Jeremy Soller
cce821e99f
Adjust attribute spans when buffer lines change 2022-10-27 14:51:46 -06:00
Jeremy Soller
8f8cf80bf6
Update documentation 2022-10-27 10:29:19 -06:00
Jeremy Soller
e4c8d4ba6b
Make attribute spans use ranges and update docs 2022-10-27 09:56:53 -06:00
Jeremy Soller
3ece9236b3
Use Color in more places 2022-10-27 09:07:47 -06:00
Jeremy Soller
f133b1fca1
Improve API to set line attributes 2022-10-27 08:37:07 -06:00
Jeremy Soller
1e1164f4b2 Cache syntax highlighting results 2022-10-26 22:25:37 -06:00
Jeremy Soller
87c12b11ae Combine both simple and word wrapping into one layout function 2022-10-26 20:10:38 -06:00
Jeremy Soller
5d1aa8b814 Add simple per-glyph wrapping option 2022-10-26 19:56:13 -06:00
Jeremy Soller
57feeb2901 Preserve cursor glyph when moving up/down 2022-10-26 19:45:28 -06:00
Jeremy Soller
846c646043 Syntax highlighting while editing 2022-10-26 19:31:33 -06:00
Jeremy Soller
559a83faa5 Improve attribute setting 2022-10-26 18:45:31 -06:00
Jeremy Soller
a51f5ac4a8
Highlight empty lines correctly 2022-10-26 17:52:51 -06:00
Jeremy Soller
ea64291abb
Make it possible to set attributes per glyph 2022-10-26 15:16:06 -06:00
Jeremy Soller
4798c7ee1a
Add initial rich text example 2022-10-26 14:16:48 -06:00
Jeremy Soller
119a570ee9
Cache font matches, use usize for line index, use font system for swash 2022-10-26 12:23:03 -06:00
Jeremy Soller
cdc2868c10 Remove completed TODO 2022-10-25 22:10:15 -06:00
Jeremy Soller
80e0a31188 Make font_matches accessible via function only 2022-10-25 21:38:47 -06:00
Jeremy Soller
ea18576032 Make it possible to set and use default family 2022-10-25 21:16:02 -06:00
Jeremy Soller
e53956cb2d Fix scrolling with cursor 2022-10-25 20:49:15 -06:00
Jeremy Soller
c031944b45 Make hit detection public 2022-10-25 20:27:46 -06:00
grovesNL
e32cfedfcf Make font_matches public for now 2022-10-25 19:52:59 -06:00
Jeremy Soller
525c4efaa5
Add ability to set global buffer attributes 2022-10-25 16:29:33 -06:00
Jeremy Soller
59a4f8a4c1
Produce FontMatches inside of Buffer 2022-10-25 16:13:07 -06:00
Jeremy Soller
324c8837fd
Cache fonts 2022-10-25 15:47:55 -06:00
Jeremy Soller
c60aaaf9d2
Ensure orbclient example reshapes 2022-10-25 15:33:48 -06:00