bin: Browser state improvements
This adds a generic browser state that can be used in selection interfaces.
5 files changed
+200
-204
233b3bcb
→
1114112b
modified bin/commands/issue/select.rs
@@ -36,8 +36,8 @@ use tui::{BoxedAny, Channel, Exit, PageStack};
|
|
|
|
|
|
| - | |
| - | |
| + | |
| + | |
|
|
|
|
|
@@ -96,60 +96,6 @@ impl From<Section> for usize {
|
|
|
|
|
|
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
|
|
|
|
|
@@ -213,7 +159,7 @@ pub struct HelpState {
|
|
|
|
|
|
| - | |
| + | |
|
|
|
|
|
@@ -269,13 +215,7 @@ impl TryFrom<(&Context, &TerminalInfo)> for State {
|
|
|
|
|
|
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| + | |
|
|
|
|
|
@@ -315,7 +255,7 @@ impl store::State<Selection> for State {
|
|
|
|
|
|
| - | |
| + | |
|
|
|
|
|
@@ -328,7 +268,7 @@ impl store::State<Selection> for State {
|
|
|
|
|
|
| - | |
| + | |
|
|
|
|
|
@@ -337,8 +277,8 @@ impl store::State<Selection> for State {
|
|
|
|
|
|
| - | |
| - | |
| + | |
| + | |
|
|
|
|
|
@@ -369,19 +309,8 @@ impl store::State<Selection> for State {
|
|
|
|
|
|
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| + | |
| + | |
|
|
|
|
|
@@ -392,9 +321,8 @@ impl store::State<Selection> for State {
|
|
|
|
|
|
| - | |
|
|
| - | |
| + | |
|
|
|
|
|
@@ -448,7 +376,7 @@ fn browser_page(channel: &Channel<Message>) -> Widget<State, Message> {
|
|
|
|
|
|
| - | |
| + | |
|
|
|
|
|
@@ -487,7 +415,7 @@ fn browser_page(channel: &Channel<Message>) -> Widget<State, Message> {
|
|
|
|
|
|
| - | |
| + | |
|
|
|
|
|
@@ -521,7 +449,7 @@ fn browser_page(channel: &Channel<Message>) -> Widget<State, Message> {
|
|
|
|
|
|
| - | |
| + | |
|
|
|
|
|
modified bin/commands/issue/select/ui.rs
@@ -52,7 +52,7 @@ impl<'a> From<&State> for BrowserProps<'a> {
|
|
|
|
|
|
| - | |
| + | |
|
|
|
|
|
@@ -104,8 +104,8 @@ impl<'a> From<&State> for BrowserProps<'a> {
|
|
|
|
|
|
| - | |
| - | |
| + | |
| + | |
|
|
|
|
|
@@ -147,8 +147,8 @@ impl Browser {
|
|
|
|
|
|
| - | |
| - | |
| + | |
| + | |
|
|
|
|
|
@@ -182,7 +182,7 @@ impl Browser {
|
|
|
|
|
|
| - | |
| + | |
|
|
|
|
|
modified bin/commands/patch/select.rs
@@ -27,10 +27,11 @@ use tui::{BoxedAny, Channel, Exit, PageStack};
|
|
|
|
|
|
| - | |
| + | |
|
|
|
|
| - | |
| + | |
| + | |
|
|
|
|
|
@@ -52,25 +53,6 @@ pub enum AppPage {
|
|
|
|
|
|
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
|
|
|
|
|
@@ -79,7 +61,7 @@ pub struct HelpState {
|
|
|
|
|
|
| - | |
| + | |
|
|
|
|
|
@@ -103,13 +85,7 @@ impl TryFrom<&Context> for State {
|
|
|
|
|
|
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| + | |
|
|
|
|
|
@@ -118,8 +94,10 @@ impl TryFrom<&Context> for State {
|
|
|
|
|
|
| - | |
| - | |
| + | |
| + | |
| + | |
| + | |
|
|
|
|
|
@@ -134,48 +112,56 @@ impl store::State<Selection> for State {
|
|
|
|
|
|
| - | |
| - | |
| - | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
|
|
|
|
|
|
| - | |
| + | |
|
|
|
|
|
|
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| + | |
| + | |
|
|
|
|
|
|
| - | |
| - | |
| + | |
| + | |
|
|
|
|
|
|
| - | |
| - | |
| - | |
| - | |
| - | |
| + | |
| + | |
|
|
|
|
|
|
| - | |
|
|
|
|
|
|
|
|
| - | |
|
|
|
|
|
@@ -222,7 +208,7 @@ fn browser_page(_state: &State, channel: &Channel<Message>) -> Widget<State, Mes
|
|
|
|
|
|
| - | |
| + | |
|
|
|
|
|
@@ -255,8 +241,15 @@ fn browser_page(_state: &State, channel: &Channel<Message>) -> Widget<State, Mes
|
|
|
|
|
|
| - | |
| + | |
|
|
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
|
|
|
|
|
@@ -265,7 +258,7 @@ fn browser_page(_state: &State, channel: &Channel<Message>) -> Widget<State, Mes
|
|
|
|
|
|
| - | |
| + | |
|
|
|
|
|
@@ -329,7 +322,7 @@ fn help_page(_state: &State, channel: &Channel<Message>) -> Widget<State, Messag
|
|
|
|
|
|
| - | |
| + | |
|
|
|
|
|
modified bin/commands/patch/select/ui.rs
@@ -26,10 +26,8 @@ use tui::ui::widget::list::{Table, TableProps};
|
|
|
|
|
|
| - | |
| + | |
|
|
| - | |
| - | |
|
|
|
|
|
@@ -38,12 +36,8 @@ type Widget = widget::Widget<State, Message>;
|
|
|
|
|
|
| - | |
| - | |
|
|
|
|
| - | |
| - | |
|
|
|
|
|
@@ -63,7 +57,7 @@ impl<'a> From<&State> for BrowserProps<'a> {
|
|
|
|
|
|
| - | |
| + | |
|
|
|
|
|
@@ -85,9 +79,7 @@ impl<'a> From<&State> for BrowserProps<'a> {
|
|
|
|
|
|
| - | |
|
|
| - | |
|
|
|
|
|
@@ -113,8 +105,8 @@ impl<'a> From<&State> for BrowserProps<'a> {
|
|
|
|
|
|
| - | |
| - | |
| + | |
| + | |
|
|
|
|
|
@@ -144,7 +136,7 @@ impl Browser {
|
|
|
|
|
|
| - | |
| + | |
|
|
|
|
|
@@ -153,8 +145,8 @@ impl Browser {
|
|
|
|
|
|
| - | |
| - | |
| + | |
| + | |
|
|
|
|
|
@@ -184,7 +176,7 @@ impl Browser {
|
|
|
|
|
|
| - | |
| + | |
|
|
|
|
|
@@ -218,45 +210,7 @@ impl View for Browser {
|
|
|
|
|
|
| - | |
|
|
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
|
|
|
|
|
modified bin/ui/widget.rs
@@ -1,4 +1,5 @@
|
|
| + | |
|
|
|
|
|
@@ -9,6 +10,7 @@ use ratatui::Frame;
|
|
|
|
|
|
| + | |
|
|
|
|
|
@@ -16,6 +18,125 @@ use tui::ui::{layout, span};
|
|
|
|
|
|
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
|
|
|
|
|