mirror of
https://github.com/servo/servo.git
synced 2025-08-03 04:30:10 +01:00
Auto merge of #10035 - saurvs:master, r=jdm
Resets selection in textinput when its content is changed. Fixes https://github.com/servo/servo/issues/10005. <!-- 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/10035) <!-- Reviewable:end -->
This commit is contained in:
commit
909ff4446a
3 changed files with 29 additions and 1 deletions
|
@ -497,6 +497,7 @@ impl<T: ClipboardProvider> TextInput<T> {
|
|||
};
|
||||
self.edit_point.line = min(self.edit_point.line, self.lines.len() - 1);
|
||||
self.edit_point.index = min(self.edit_point.index, self.current_line_length());
|
||||
self.selection_begin = None;
|
||||
}
|
||||
|
||||
pub fn get_absolute_insertion_point(&self) -> usize {
|
||||
|
|
|
@ -34784,7 +34784,16 @@
|
|||
},
|
||||
"local_changes": {
|
||||
"deleted": [],
|
||||
"items": {},
|
||||
"items": {
|
||||
"testharness": {
|
||||
"html/semantics/forms/textfieldselection/selection-after-content-change.html": [
|
||||
{
|
||||
"path": "html/semantics/forms/textfieldselection/selection-after-content-change.html",
|
||||
"url": "/html/semantics/forms/textfieldselection/selection-after-content-change.html"
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"reftest_nodes": {}
|
||||
},
|
||||
"reftest_nodes": {
|
||||
|
|
|
@ -0,0 +1,18 @@
|
|||
<!doctype html>
|
||||
<meta charset="utf-8">
|
||||
<title>Selection indices after content change</title>
|
||||
<script src="/resources/testharness.js"></script>
|
||||
<script src="/resources/testharnessreport.js"></script>
|
||||
<script>
|
||||
test(function() {
|
||||
var input = document.createElement("input");
|
||||
input.focus();
|
||||
input.value = "something something something dark side";
|
||||
input.setSelectionRange(4,20);
|
||||
assert_equals(input.selectionStart, 4);
|
||||
assert_equals(input.selectionEnd, 20);
|
||||
input.value = "It's a trap!";
|
||||
assert_equals(input.selectionStart, input.value.length);
|
||||
assert_equals(input.selectionEnd, input.value.length);
|
||||
}, "Selection indices after reseting content");
|
||||
</script>
|
Loading…
Add table
Add a link
Reference in a new issue