From f99c0e2c1538d3c6e4d857a2062e408905922207 Mon Sep 17 00:00:00 2001 From: Emanuel Rylke Date: Sat, 6 Dec 2014 15:06:13 +0100 Subject: [PATCH] Implement Page(Up|Down) functionality for TextInput. --- components/script/textinput.rs | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/components/script/textinput.rs b/components/script/textinput.rs index 6196a003c2f..c925c0a5d82 100644 --- a/components/script/textinput.rs +++ b/components/script/textinput.rs @@ -163,9 +163,9 @@ impl TextInput { self.edit_point.index = 0; self.edit_point.line = 0; return; - } else if adjust > 0 && self.edit_point.line >= self.lines.len() - adjust as uint { - self.edit_point.index = self.current_line_length(); + } else if adjust > 0 && self.edit_point.line + adjust as uint >= self.lines.len() { self.edit_point.line = self.lines.len() - 1; + self.edit_point.index = self.current_line_length(); return; } @@ -268,6 +268,14 @@ impl TextInput { self.edit_point.index = self.current_line_length(); Nothing } + "PageUp" => { + self.adjust_vertical(-28); + Nothing + } + "PageDown" => { + self.adjust_vertical(28); + Nothing + } "Tab" => TriggerDefaultAction, _ => Nothing, }