@@ -238,10 +238,28 @@ impl Renderer {
238 pub fn render_prompt(&mut self, view: &View, prompt: &Prompt) {
238 pub fn render_prompt(&mut self, view: &View, prompt: &Prompt) {
239 // completion
239 // completion
240 if prompt.completion.is_some() {
240 if prompt.completion.is_some() {
241+ let completion = prompt.completion.clone().unwrap();
242+ // TODO: find out better way of clearing individual lines of the screen
244+ self.surface.set_string(
247+ " ".repeat(self.size.0 as usize),
241 self.surface.set_style(
251 self.surface.set_style(
242 Rect::new(0, self.size.1 - 6, self.size.0, 4),
252 Rect::new(0, self.size.1 - 6, self.size.0, 4),
243 view.theme.get("ui.statusline"),
253 view.theme.get("ui.statusline"),
255+ for i in (0..completion.len()) {
256+ self.surface.set_string(
258+ self.size.1 - 6 + i as u16,
246 // render buffer text
264 // render buffer text
247 self.surface
265 self.surface
@@ -395,6 +413,7 @@ impl Application {
395 ":".to_owned(),
413 ":".to_owned(),
396 |_input: &str| {
414 |_input: &str| {
397 let placeholder_list = vec![
415 let placeholder_list = vec![
398 String::from("aaa"),
417 String::from("aaa"),
399 String::from("bbb"),
418 String::from("bbb"),
400 String::from("ccc"),
419 String::from("ccc"),