summaryrefslogtreecommitdiff
path: root/desktop
diff options
context:
space:
mode:
Diffstat (limited to 'desktop')
-rw-r--r--desktop/browser.c16
-rw-r--r--desktop/browser.h8
2 files changed, 24 insertions, 0 deletions
diff --git a/desktop/browser.c b/desktop/browser.c
index c9e36ee71..d2f56b98c 100644
--- a/desktop/browser.c
+++ b/desktop/browser.c
@@ -443,6 +443,22 @@ char * browser_window_get_selection(struct browser_window *bw)
return content_get_selection(bw->selection.bw->current_content);
}
+/* exported interface, documented in browser.h */
+bool browser_window_can_search(struct browser_window *bw)
+{
+ if (bw == NULL || bw->current_content == NULL)
+ return false;
+
+ /* TODO: We shouldn't have to know about specific content types
+ * here. There should be a content_is_searchable() call. */
+ if (content_get_type(bw->current_content) != CONTENT_HTML &&
+ content_get_type(bw->current_content) !=
+ CONTENT_TEXTPLAIN)
+ return false;
+
+ return true;
+}
+
/**
* Set or remove a selection.
*
diff --git a/desktop/browser.h b/desktop/browser.h
index f4943172e..68545dd20 100644
--- a/desktop/browser.h
+++ b/desktop/browser.h
@@ -462,6 +462,14 @@ browser_editor_flags browser_window_get_editor_flags(struct browser_window *bw);
*/
char * browser_window_get_selection(struct browser_window *bw);
+/**
+ * Find out if given browser window can be searched
+ *
+ * \param bw browser window to look at
+ * \return true iff browser window is searchable
+ */
+bool browser_window_can_search(struct browser_window *bw);
+
/**
* Dump debug info concerning the browser window's contents to file