Compare commits
2 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 98ac769b29 | |||
| e73793dd6e |
2
Cargo.lock
generated
2
Cargo.lock
generated
@@ -971,7 +971,7 @@ checksum = "04744f49eae99ab78e0d5c0b603ab218f515ea8cfe5a456d7629ad883a3b6e7d"
|
||||
|
||||
[[package]]
|
||||
name = "owlry"
|
||||
version = "0.2.0"
|
||||
version = "0.2.1"
|
||||
dependencies = [
|
||||
"chrono",
|
||||
"clap",
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
[package]
|
||||
name = "owlry"
|
||||
version = "0.2.0"
|
||||
version = "0.2.1"
|
||||
edition = "2024"
|
||||
rust-version = "1.90"
|
||||
description = "A lightweight, owl-themed application launcher for Wayland"
|
||||
|
||||
@@ -264,6 +264,12 @@ impl ProviderManager {
|
||||
results.push((web_result, 9000));
|
||||
}
|
||||
}
|
||||
// Also check for raw query when in :web filter mode
|
||||
else if filter.active_prefix() == Some(ProviderType::WebSearch) && !query.is_empty() {
|
||||
if let Some(web_result) = self.websearch.evaluate_raw(query) {
|
||||
results.push((web_result, 9000));
|
||||
}
|
||||
}
|
||||
|
||||
// Empty query (after checking special providers) - return frecency-sorted items
|
||||
if query.is_empty() {
|
||||
|
||||
@@ -113,14 +113,24 @@ impl WebSearchProvider {
|
||||
return None;
|
||||
}
|
||||
|
||||
let url = self.build_search_url(search_term);
|
||||
self.evaluate_raw(search_term)
|
||||
}
|
||||
|
||||
/// Evaluate a raw search term (for :web filter mode)
|
||||
pub fn evaluate_raw(&self, search_term: &str) -> Option<LaunchItem> {
|
||||
let trimmed = search_term.trim();
|
||||
if trimmed.is_empty() {
|
||||
return None;
|
||||
}
|
||||
|
||||
let url = self.build_search_url(trimmed);
|
||||
|
||||
// Use xdg-open to open the browser
|
||||
let command = format!("xdg-open '{}'", url);
|
||||
|
||||
Some(LaunchItem {
|
||||
id: format!("websearch:{}", search_term),
|
||||
name: format!("Search: {}", search_term),
|
||||
id: format!("websearch:{}", trimmed),
|
||||
name: format!("Search: {}", trimmed),
|
||||
description: Some("Open in browser".to_string()),
|
||||
icon: Some("web-browser".to_string()),
|
||||
provider: ProviderType::WebSearch,
|
||||
|
||||
Reference in New Issue
Block a user