aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/config/mod.rs7
-rw-r--r--src/input.rs12
2 files changed, 17 insertions, 2 deletions
diff --git a/src/config/mod.rs b/src/config/mod.rs
index 94e74e41..14ebc87d 100644
--- a/src/config/mod.rs
+++ b/src/config/mod.rs
@@ -868,8 +868,9 @@ impl<'a> de::Deserialize<'a> for ActionWrapper {
fn expecting(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
f.write_str(
"Paste, Copy, PasteSelection, IncreaseFontSize, DecreaseFontSize, \
- ResetFontSize, ScrollPageUp, ScrollPageDown, ScrollToTop, ScrollToBottom, \
- ClearHistory, Hide, ClearLogNotice, SpawnNewInstance, None or Quit",
+ ResetFontSize, ScrollPageUp, ScrollPageDown, ScrollLineUp, ScrollLineDown, \
+ ScrollToTop, ScrollToBottom, ClearHistory, Hide, ClearLogNotice, \
+ SpawnNewInstance, None or Quit",
)
}
@@ -886,6 +887,8 @@ impl<'a> de::Deserialize<'a> for ActionWrapper {
"ResetFontSize" => Action::ResetFontSize,
"ScrollPageUp" => Action::ScrollPageUp,
"ScrollPageDown" => Action::ScrollPageDown,
+ "ScrollLineUp" => Action::ScrollLineUp,
+ "ScrollLineDown" => Action::ScrollLineDown,
"ScrollToTop" => Action::ScrollToTop,
"ScrollToBottom" => Action::ScrollToBottom,
"ClearHistory" => Action::ClearHistory,
diff --git a/src/input.rs b/src/input.rs
index 8ce8f2cd..9619ffa7 100644
--- a/src/input.rs
+++ b/src/input.rs
@@ -220,6 +220,12 @@ pub enum Action {
/// Scroll exactly one page down
ScrollPageDown,
+ /// Scroll one line up
+ ScrollLineUp,
+
+ /// Scroll one line down
+ ScrollLineDown,
+
/// Scroll all the way to the top
ScrollToTop,
@@ -317,6 +323,12 @@ impl Action {
Action::ScrollPageDown => {
ctx.scroll(Scroll::PageDown);
},
+ Action::ScrollLineUp => {
+ ctx.scroll(Scroll::Lines(1));
+ },
+ Action::ScrollLineDown => {
+ ctx.scroll(Scroll::Lines(-1));
+ },
Action::ScrollToTop => {
ctx.scroll(Scroll::Top);
},