diff --git a/publish/src/app.rs b/publish/src/app.rs index aadf27d..8c3d869 100644 --- a/publish/src/app.rs +++ b/publish/src/app.rs @@ -20,7 +20,6 @@ use oxigraph::io::RdfFormat; use oxigraph::model::vocab::{rdf, rdfs}; use oxigraph::model::{BaseDirection, Dataset, NamedNode, Quad, Term}; use tracing::{debug_span, error, field, trace}; -use tracing_futures::Instrument; use crate::navigator::Navigator; use crate::rdf::curie::CurieHelper; use crate::rdf::language; @@ -413,22 +412,10 @@ impl Publisher { .and_then(|info| self.ontology.category_id(&info.iri)); let query = new_query.clone(); - /*let search_task = tokio::task::spawn_blocking(move || { - index.query(category_id, query.as_str(), Schema::all_fields(), 25) - });*/ - /*task = Task::future(async { - match search_task.await { - Ok(Ok(results)) => Message::SetSearchResults(results), - Ok(Err(err)) => Message::ShowError(err.to_string()), - Err(err) => Message::ShowError(err.to_string()), - } - });*/ - search_state.query = new_query; - task = Task::done(Message::SetSearchResults( - self.index.query(category_id, query.as_str(), Schema::all_fields(), 25) - .expect("Unable to complete search") - )); + let results = self.index.query(category_id, query.as_str(), Schema::all_fields(), 10) + .expect("Unable to complete search"); + task = Task::done(Message::SetSearchResults(results)); }; } Message::SetSearchResults(results) => { @@ -873,10 +860,10 @@ impl Publisher { let content = navigation_area(column![ row![ + reindex_ontology_button, + add_row_button, back_button, forward_button, - add_row_button, - reindex_ontology_button, address_input, save_button, ], diff --git a/publish/src/widget/navigation_area.rs b/publish/src/widget/navigation_area.rs index 9ee56f0..d162963 100644 --- a/publish/src/widget/navigation_area.rs +++ b/publish/src/widget/navigation_area.rs @@ -1,5 +1,5 @@ -use iced::advanced::{mouse, text, Layout, Shell, Widget}; -use iced::{Element, Event, Length, Rectangle, Size}; +use iced::advanced::{mouse, text, Layout, Shell, Widget, overlay}; +use iced::{Element, Event, Length, Rectangle, Size, Vector}; use iced::advanced::layout::{Limits, Node}; use iced::advanced::renderer::Style; use iced::advanced::widget::{Operation, Tree}; @@ -134,4 +134,38 @@ where _ => {} } } + + fn mouse_interaction( + &self, + tree: &Tree, + layout: Layout<'_>, + cursor: mouse::Cursor, + viewport: &Rectangle, + renderer: &Renderer, + ) -> mouse::Interaction { + self.content.as_widget().mouse_interaction( + &tree.children[0], + layout, + cursor, + viewport, + renderer, + ) + } + + fn overlay<'b>( + &'b mut self, + tree: &'b mut Tree, + layout: Layout<'b>, + renderer: &Renderer, + viewport: &Rectangle, + translation: Vector, + ) -> Option> { + self.content.as_widget_mut().overlay( + &mut tree.children[0], + layout, + renderer, + viewport, + translation, + ) + } } \ No newline at end of file