ff2e8fe65f
replace() { if git grep -q "$1")"; then sed -i -e "s#${1}#${2}#g" $(git grep -l "$1"); fi } replace 'k\([A-Za-z]*\)_InputState' 'InputState::k\1' replace '\(\(sk_app::\|\)Window\|Sample\|\)::InputState' 'InputState' Change-Id: I4cc18814fb1fbdd1f240aabba05aae79c54a4841 Reviewed-on: https://skia-review.googlesource.com/c/skia/+/227642 Commit-Queue: Hal Canary <halcanary@google.com> Commit-Queue: Ben Wagner <bungeman@google.com> Auto-Submit: Hal Canary <halcanary@google.com> Reviewed-by: Ben Wagner <bungeman@google.com> |
||
---|---|---|
.. | ||
editor_application.cpp | ||
editor.cpp | ||
editor.h | ||
README.md | ||
run_handler.cpp | ||
run_handler.h | ||
stringslice.cpp | ||
stringslice.h |
#Editor#
This is an experimental Editor layer that abstracts out SkShaper text layeout for easy embedding into an application. The Editor layer is agnostic about the operating system.
+--------------------------------+
|Application |
+-+----+-------------------------+
| |
| |
| +-v-------------------------+
| |Editor |
| +-+----+--------------------+
| | |
| | |
| | +-v--------------------+
| | |SkShaper |
| | +-+--------+-----------+
| | | |
| | | |
+-v----v----v--+ +-v-----------+
|Skia | |HarfBuzz, ICU|
+--------------+ +-------------+
The Application layer must interact with the:
- Windowing system
- File system
- Clipboard
- Keyboard/mouse input.
Try it out:
tools/git-sync-deps
bin/gn gen out/default
ninja -C out/default editor
out/default/editor whitespace.txt