summaryrefslogtreecommitdiffstats
path: root/src/interactive/widgets/mark.rs
diff options
context:
space:
mode:
authorSebastian Thiel <sthiel@thoughtworks.com>2019-06-08 05:00:01 +0530
committerSebastian Thiel <sthiel@thoughtworks.com>2019-06-08 05:05:16 +0530
commitb4a2e0ee8f267ee50f92433e826fa9e42ff618db (patch)
tree5a9676e7204d8fba0a8adbd975c8afeca35b100b /src/interactive/widgets/mark.rs
parentb4669c0214a1bc858cf437a65583af7e4b9ec277 (diff)
Pune/India: more prominent selection in mark pane
Diffstat (limited to 'src/interactive/widgets/mark.rs')
-rw-r--r--src/interactive/widgets/mark.rs37
1 files changed, 26 insertions, 11 deletions
diff --git a/src/interactive/widgets/mark.rs b/src/interactive/widgets/mark.rs
index 5f0255d..ec115cf 100644
--- a/src/interactive/widgets/mark.rs
+++ b/src/interactive/widgets/mark.rs
@@ -1,5 +1,6 @@
-use crate::interactive::{
- fit_string_graphemes_with_ellipsis, widgets::COLOR_MARKED_LIGHT, CursorDirection,
+use crate::{
+ interactive::widgets::{COLOR_BYTESIZE_SELECTED, COLOR_MARKED_LIGHT},
+ interactive::{fit_string_graphemes_with_ellipsis, CursorDirection},
};
use dua::{
path_of,
@@ -146,9 +147,15 @@ impl MarkPane {
.sorted_by_key(|v| &v.index)
.enumerate()
.map(|(idx, v)| {
- let modifier = match selected {
- Some(selected) if idx == selected => Modifier::BOLD,
- _ => Modifier::empty(),
+ let (default_style, is_selected) = match selected {
+ Some(selected) if idx == selected => (
+ Style {
+ bg: Color::White,
+ ..Default::default()
+ },
+ true,
+ ),
+ _ => (Style::default(), false),
};
let (path, path_len) = {
let path = format!(" {} ", v.path.display());
@@ -168,9 +175,12 @@ impl MarkPane {
let path = Text::Styled(
path.into(),
Style {
- fg: COLOR_MARKED_LIGHT,
- modifier,
- ..Style::default()
+ fg: if is_selected {
+ Color::Black
+ } else {
+ COLOR_MARKED_LIGHT
+ },
+ ..default_style
},
);
let bytes = Text::Styled(
@@ -181,11 +191,15 @@ impl MarkPane {
)
.into(),
Style {
- fg: Color::Green,
- ..Default::default()
+ fg: if is_selected {
+ COLOR_BYTESIZE_SELECTED
+ } else {
+ Color::Green
+ },
+ ..default_style
},
);
- let spacer = Text::Raw(
+ let spacer = Text::Styled(
format!(
"{:-space$}",
"",
@@ -194,6 +208,7 @@ impl MarkPane {
.saturating_sub(format.total_width())
)
.into(),
+ default_style,
);
vec![path, spacer, bytes]
});