diff options
author | Brent Smith <gnome@nextreality.net> | 2006-02-20 00:16:07 +0000 |
---|---|---|
committer | Brent Smith <bmsmith@src.gnome.org> | 2006-02-20 00:16:07 +0000 |
commit | a071b004e376e0faa54c5024cfccacde62ae1103 (patch) | |
tree | 6b7645e1157a1f14c95625dd3e644e68599e3263 | |
parent | a2732d1864216001d24633d6121871ae41e69c35 (diff) | |
download | yelp-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-- | ChangeLog | 8 | ||||
-rw-r--r-- | src/yelp-search-pager.c | 62 |
2 files changed, 35 insertions, 35 deletions
@@ -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; |