mirror of
https://github.com/YGGverse/Yoda.git
synced 2026-03-31 08:35:28 +00:00
minor optimizations
This commit is contained in:
parent
bf039dd947
commit
12edd5a4f4
1 changed files with 16 additions and 14 deletions
|
|
@ -397,7 +397,7 @@ impl Gemini {
|
||||||
)),
|
)),
|
||||||
);
|
);
|
||||||
m_copy.append(
|
m_copy.append(
|
||||||
Some("Copy Link Text Selected"),
|
Some("Copy Text Selected"),
|
||||||
Some(&format!(
|
Some(&format!(
|
||||||
"{link_context_group_id}.{}",
|
"{link_context_group_id}.{}",
|
||||||
action_link_copy_text_selected.name()
|
action_link_copy_text_selected.name()
|
||||||
|
|
@ -490,6 +490,7 @@ impl Gemini {
|
||||||
if let Some(uri) = links.get(&tag) {
|
if let Some(uri) = links.get(&tag) {
|
||||||
let request_str = uri.to_str();
|
let request_str = uri.to_str();
|
||||||
let request_var = request_str.to_variant();
|
let request_var = request_str.to_variant();
|
||||||
|
let is_prefix_link = is_prefix_link(&request_str);
|
||||||
|
|
||||||
// Open in the new tab
|
// Open in the new tab
|
||||||
action_link_tab.set_state(&request_var);
|
action_link_tab.set_state(&request_var);
|
||||||
|
|
@ -521,27 +522,28 @@ impl Gemini {
|
||||||
}
|
}
|
||||||
|
|
||||||
// Copy link text (if) selected
|
// Copy link text (if) selected
|
||||||
if let Some((sel_start, sel_end)) = buffer.selection_bounds() {
|
action_link_copy_text_selected.set_enabled(
|
||||||
let selected_tag_text = buffer.text(&sel_start, &sel_end, false);
|
if let Some((start, end)) = buffer.selection_bounds() {
|
||||||
action_link_copy_text_selected
|
let selected = buffer.text(&start, &end, false);
|
||||||
.set_state(&selected_tag_text.to_variant());
|
action_link_copy_text_selected
|
||||||
action_link_copy_text_selected
|
.set_state(&selected.to_variant());
|
||||||
.set_enabled(!selected_tag_text.is_empty());
|
!selected.is_empty()
|
||||||
} else {
|
} else {
|
||||||
action_link_copy_text_selected.set_enabled(false);
|
false
|
||||||
}
|
},
|
||||||
|
);
|
||||||
|
|
||||||
// Bookmark
|
// Bookmark
|
||||||
action_link_bookmark.set_state(&request_var);
|
action_link_bookmark.set_state(&request_var);
|
||||||
action_link_bookmark.set_enabled(is_prefixable_link(&request_str));
|
action_link_bookmark.set_enabled(is_prefix_link);
|
||||||
|
|
||||||
// Download (new tab)
|
// Download (new tab)
|
||||||
action_link_download.set_state(&request_var);
|
action_link_download.set_state(&request_var);
|
||||||
action_link_download.set_enabled(is_prefixable_link(&request_str));
|
action_link_download.set_enabled(is_prefix_link);
|
||||||
|
|
||||||
// View as Source (new tab)
|
// View as Source (new tab)
|
||||||
action_link_source.set_state(&request_var);
|
action_link_source.set_state(&request_var);
|
||||||
action_link_source.set_enabled(is_prefixable_link(&request_str));
|
action_link_source.set_enabled(is_prefix_link);
|
||||||
|
|
||||||
// Toggle
|
// Toggle
|
||||||
link_context
|
link_context
|
||||||
|
|
@ -639,7 +641,7 @@ fn is_internal_link(request: &str) -> bool {
|
||||||
|| request.starts_with("source:")
|
|| request.starts_with("source:")
|
||||||
}
|
}
|
||||||
|
|
||||||
fn is_prefixable_link(request: &str) -> bool {
|
fn is_prefix_link(request: &str) -> bool {
|
||||||
request.starts_with("gemini://")
|
request.starts_with("gemini://")
|
||||||
|| request.starts_with("nex://")
|
|| request.starts_with("nex://")
|
||||||
|| request.starts_with("file://")
|
|| request.starts_with("file://")
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue