fix selectors

pull/6/head
dvkt 5 years ago
parent 6733984b33
commit 1c7c94df82

@ -76,13 +76,13 @@ pub fn parse_url<'a>(url: &'a str) -> (Type, &'a str, &'a str, &'a str) {
_ => continue,
}
host = &url[start..i];
start = i + 1;
start = if c == '/' { i } else { i + 1 };
}
Parsing::Port => {
if c == '/' {
state = Parsing::Selector;
port = &url[start..i];
start = i + 1;
start = i;
}
}
Parsing::Selector => {}
@ -96,14 +96,22 @@ pub fn parse_url<'a>(url: &'a str) -> (Type, &'a str, &'a str, &'a str) {
};
let mut chars = sel.chars();
if let (Some(fst), Some('/')) = (chars.nth(0), chars.nth(0)) {
match fst {
'0' => typ = Type::Text,
'1' => typ = Type::Menu,
'h' => typ = Type::HTML,
_ => {}
if let (Some('/'), Some(t), Some('/')) = (chars.nth(0), chars.nth(0), chars.nth(0)) {
typ = match t {
'0' => {
sel = &sel[2..];
Type::Text
}
'1' => {
sel = &sel[2..];
Type::Menu
}
'h' => {
sel = &sel[2..];
Type::HTML
}
_ => typ,
}
sel = &sel[2..];
}
(typ, host, port, sel)

@ -48,7 +48,9 @@ impl UI {
pub fn draw(&mut self) {
if self.dirty {
print!("\x1b[2J\x1b[H{}", self.render());
// let prefix = ""; // debug
let prefix = "\x1b[2J\x1b[H"; // clear the screen
print!("{}{}", prefix, self.render());
self.dirty = false;
}
}

Loading…
Cancel
Save