diff --git a/lapce-ui/src/lib.rs b/lapce-ui/src/lib.rs index 89f0354a..fe7d47ce 100644 --- a/lapce-ui/src/lib.rs +++ b/lapce-ui/src/lib.rs @@ -19,7 +19,6 @@ pub mod scroll; pub mod search; pub mod settings; -pub mod signature; pub mod source_control; pub mod split; pub mod status; diff --git a/lapce-ui/src/signature.rs b/lapce-ui/src/signature.rs deleted file mode 100644 index 5ccec727..00000000 --- a/lapce-ui/src/signature.rs +++ /dev/null @@ -1,65 +0,0 @@ -use lsp_types::ParameterLabel; -use lsp_types::SignatureHelp; - -#[derive(Clone)] -pub struct SignatureState { - pub offset: Option, - pub signature: Option, - pub active: Option<(usize, usize)>, -} - -impl SignatureState { - pub fn new() -> Self { - Self { - offset: None, - signature: None, - active: None, - } - } - - pub fn update(&mut self, offset: usize, commas: Vec) -> Option { - let signature = self.signature.as_ref()?; - let params = signature.signatures[0].parameters.as_ref()?; - if params.is_empty() { - return None; - } - let mut index = commas.len(); - for (i, c) in commas.iter().enumerate() { - if offset <= *c { - index = i; - break; - } - } - - let label = signature.signatures[0].label.clone(); - let active = if index >= params.len() { - None - } else { - match ¶ms[index].label { - ParameterLabel::Simple(s) => { - let start = label.find(s)?; - Some((start, start + s.len())) - } - ParameterLabel::LabelOffsets(offsets) => { - Some((offsets[0] as usize, offsets[1] as usize)) - } - } - }; - - let changed = self.active != active; - self.active = active; - Some(changed) - } - - pub fn clear(&mut self) { - self.offset = None; - self.signature = None; - self.active = None; - } -} - -impl Default for SignatureState { - fn default() -> Self { - Self::new() - } -}