servo/components/script
bors-servo cf121ad8df Auto merge of #10895 - mbrubeck:byteindex, r=pcwalton
Use byte indices instead of char indices for text runs

Replace character indices with UTF-8 byte offsets throughout all code dealing with text runs.  This eliminates a lot of complexity when converting from one to the other, and interoperates better with the rest of the Rust ecosystem.

For most code this is just a simple replacement of char indices with byte indices.  In a few places like glyph storage and text fragment scanning, it also lets us get rid of code that existed only to map between bytes and chars.

Also includes some related fixes to text shaping, discovered while working on this conversion.  See the commit messages for details.

r? @pcwalton

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/10895)
<!-- Reviewable:end -->
2016-04-28 20:22:09 -07:00
..
docs
dom Auto merge of #10895 - mbrubeck:byteindex, r=pcwalton 2016-04-28 20:22:09 -07:00
parse Auto merge of #10647 - ConnorGBrewster:parse_xml, r=jdm 2016-04-27 07:50:54 -07:00
task_source refactors entities from script_thread into script_runtime 2016-04-06 12:46:49 +05:30
build.rs
Cargo.toml Auto merge of #10895 - mbrubeck:byteindex, r=pcwalton 2016-04-28 20:22:09 -07:00
clipboard_provider.rs Remove unused imports in script 2016-01-17 12:41:28 +05:30
cors.rs Upgrade to rust-url 1.0 and hyper 0.9 2016-04-23 20:27:58 +02:00
devtools.rs Auto merge of #10327 - frewsxcv:get-prefix, r=ms2ger 2016-04-02 14:19:39 +05:30
document_loader.rs Add referrer policy pass-through and referrer header logic 2016-04-25 16:41:06 -04:00
layout_interface.rs Auto merge of #9968 - izgzhen:scroll, r=asajeffrey 2016-04-20 18:40:26 +05:30
lib.rs Replace range::Range with std::ops::Range in script 2016-04-28 14:54:07 -07:00
makefile.cargo
mem.rs Bump heapsize to 0.3 2016-02-13 11:13:19 +01:00
network_listener.rs refactors entities from script_thread into script_runtime 2016-04-06 12:46:49 +05:30
origin.rs Upgrade to rust-url 1.0 and hyper 0.9 2016-04-23 20:27:58 +02:00
page.rs Auto merge of #8481 - frewsxcv:iterablepage-iter, r=Ms2ger 2015-11-12 18:29:12 +05:30
reporter.rs Report CSS errors to script task for further processing. 2016-02-11 14:48:47 -05:00
script_runtime.rs Update js. 2016-04-20 11:44:32 +02:00
script_thread.rs script: Make iframes know their pipeline IDs at all times, even after 2016-04-28 10:53:13 -07:00
textinput.rs Replace range::Range with std::ops::Range in script 2016-04-28 14:54:07 -07:00
timers.rs Use num-traits in script. 2016-04-20 15:23:43 +02:00
unpremultiplytable.rs
webdriver_handlers.rs Remove get_* on getters as per RFC 0344. 2016-04-10 22:49:35 -04:00