summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrent Smith <gnome@nextreality.net>2006-02-20 00:16:07 +0000
committerBrent Smith <bmsmith@src.gnome.org>2006-02-20 00:16:07 +0000
commita071b004e376e0faa54c5024cfccacde62ae1103 (patch)
tree6b7645e1157a1f14c95625dd3e644e68599e3263
parenta2732d1864216001d24633d6121871ae41e69c35 (diff)
downloadyelp-a071b004e376e0faa54c5024cfccacde62ae1103.tar.gz
If the beagle daemon is not running, fall back to basic search support and
2006-02-19 Brent Smith <gnome@nextreality.net> * src/yelp-search-pager.c: (search_pager_process), (search_pager_process_idle): If the beagle daemon is not running, fall back to basic search support and print a warning on the console to the user; Patch from Joe Shaw, fixes #331598
-rw-r--r--ChangeLog8
-rw-r--r--src/yelp-search-pager.c62
2 files changed, 35 insertions, 35 deletions
diff --git a/ChangeLog b/ChangeLog
index 965f7dbc..1d9085d6 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+2006-02-19 Brent Smith <gnome@nextreality.net>
+
+ * src/yelp-search-pager.c: (search_pager_process),
+ (search_pager_process_idle):
+ If the beagle daemon is not running, fall back to basic search support
+ and print a warning on the console to the user; Patch from Joe Shaw,
+ fixes #331598
+
2006-02-19 Don Scorgie <dscorgie@cvs.gnome.org>
* stylesheets/Makefile.am:
diff --git a/src/yelp-search-pager.c b/src/yelp-search-pager.c
index 293bccae..888d6193 100644
--- a/src/yelp-search-pager.c
+++ b/src/yelp-search-pager.c
@@ -373,17 +373,6 @@ search_pager_process (YelpPager *pager)
{
d (g_print ("search_pager_process\n"));
-#ifdef ENABLE_BEAGLE
- if (beagle_client == NULL) {
- GError *error = NULL;
- g_set_error (&error, YELP_ERROR, YELP_ERROR_PROC,
- _("Your search could not be processed. There "
- "is no connection to the beagle daemon."));
- yelp_pager_error (YELP_PAGER (pager), error);
- return FALSE;
- }
-#endif /* ENABLE_BEAGLE */
-
yelp_pager_set_state (pager, YELP_PAGER_STATE_PARSING);
g_signal_emit_by_name (pager, "parse");
@@ -625,39 +614,42 @@ search_pager_process_idle (YelpSearchPager *pager)
xmlDocSetRootElement (priv->search_doc, priv->root);
#ifdef ENABLE_BEAGLE
- query = beagle_query_new ();
+ if (beagle_client != NULL) {
+ query = beagle_query_new ();
- beagle_query_set_max_hits (query, 10000);
- beagle_query_add_text (query, priv->search_terms);
- beagle_query_add_mime_type (query, "text/html");
- beagle_query_add_mime_type (query, "application/xhtml+xml");
- beagle_query_add_mime_type (query, "text/xml");
- beagle_query_add_mime_type (query, "application/xml");
- beagle_query_add_mime_type (query, "application/docbook+xml");
- beagle_query_add_mime_type (query, "text/x-docbook-entry");
+ beagle_query_set_max_hits (query, 10000);
+ beagle_query_add_text (query, priv->search_terms);
+ beagle_query_add_source (query, "documentation");
- priv->hits = g_ptr_array_new ();
+ priv->hits = g_ptr_array_new ();
- g_signal_connect (query, "hits-added",
- G_CALLBACK (hits_added_cb),
- pager);
+ g_signal_connect (query, "hits-added",
+ G_CALLBACK (hits_added_cb),
+ pager);
- g_signal_connect (query, "finished",
- G_CALLBACK (finished_cb),
- pager);
+ g_signal_connect (query, "finished",
+ G_CALLBACK (finished_cb),
+ pager);
- beagle_client_send_request_async (beagle_client, BEAGLE_REQUEST (query), &error);
+ beagle_client_send_request_async (beagle_client, BEAGLE_REQUEST (query), &error);
- if (error) {
- d(g_print ("error: %s\n", error->message));
- }
+ if (error) {
+ d(g_print ("error: %s\n", error->message));
+ }
- g_clear_error (&error);
+ g_clear_error (&error);
+ } else {
+ g_warning ("beagled not running, using basic search support.");
+ }
#endif /* ENABLE_BEAGLE */
-#ifndef ENABLE_BEAGLE
- gtk_idle_add ((GtkFunction) slow_search_setup,
- pager);
+#ifdef ENABLE_BEAGLE
+ if (beagle_client == NULL) {
+#endif
+ gtk_idle_add ((GtkFunction) slow_search_setup,
+ pager);
+#ifdef ENABLE_BEAGLE
+ }
#endif
return FALSE;