summaryrefslogtreecommitdiff
path: root/amiga/search.c
diff options
context:
space:
mode:
authorMichael Drake <tlsa@netsurf-browser.org>2013-05-07 14:41:40 +0100
committerMichael Drake <tlsa@netsurf-browser.org>2013-05-07 14:41:40 +0100
commit3afd9c97310d58c0c6588d18887244328590731e (patch)
tree133917633f801613e8742d8b313faee3c4f47e71 /amiga/search.c
parent0647d69a8b8663fcc09af118dde6b256624fe232 (diff)
downloadnetsurf-3afd9c97310d58c0c6588d18887244328590731e.tar.gz
netsurf-3afd9c97310d58c0c6588d18887244328590731e.tar.bz2
Remove search context from browser window, simplify search interface for front ends.
Added content interface for search. Removed bw->cur_search search context. Desktop layer now does nothing except pass search requests from front end onto the bw's current_content via the content interface. Search API reduced to a pair of functions at each level: {desktop|content|html|textplain}_search and {desktop|content|html|textplain}_search_clear Updated front ends to use simplified search API. Only tested GTK and RO builds. These confine the search stuff to render/. However search still uses struct selection. The handling for which is still spread over desktop/ and render/. Also the render/search code itself still fiddles inside html and textplain privates.
Diffstat (limited to 'amiga/search.c')
-rwxr-xr-xamiga/search.c28
1 files changed, 9 insertions, 19 deletions
diff --git a/amiga/search.c b/amiga/search.c
index 12fe582cb..dd2aa2320 100755
--- a/amiga/search.c
+++ b/amiga/search.c
@@ -86,15 +86,11 @@ static struct gui_search_callbacks ami_search_callbacks = {
*/
void ami_search_open(struct gui_window *gwin)
{
- if (browser_window_search_create_context(gwin->shared->bw,
- &ami_search_callbacks, NULL) == false)
- return;
-
search_insert = true;
if(fwin)
{
- browser_window_search_destroy_context(fwin->gwin->shared->bw);
+ browser_window_search_clear(fwin->gwin->shared->bw);
ami_search_set_forward_state(true, NULL);
ami_search_set_back_state(true, NULL);
fwin->gwin->shared->searchwin = NULL;
@@ -181,7 +177,7 @@ void ami_search_open(struct gui_window *gwin)
void ami_search_close(void)
{
- browser_window_search_destroy_context(fwin->gwin->shared->bw);
+ browser_window_search_clear(fwin->gwin->shared->bw);
ami_search_set_forward_state(true, NULL);
ami_search_set_back_state(true, NULL);
fwin->gwin->shared->searchwin = NULL;
@@ -206,7 +202,7 @@ BOOL ami_search_event(void)
switch(result & WMHI_GADGETMASK)
{
case GID_SEARCHSTRING:
- browser_window_search_destroy_context(
+ browser_window_search_clear(
fwin->gwin->shared->bw);
ami_search_set_forward_state(
true, NULL);
@@ -229,13 +225,10 @@ BOOL ami_search_event(void)
search_insert = true;
flags = SEARCH_FLAG_FORWARDS |
ami_search_flags();
- if (browser_window_search_verify_new(
+ browser_window_search(
fwin->gwin->shared->bw,
- &ami_search_callbacks, NULL))
- browser_window_search_step(
- fwin->gwin->shared->bw,
- flags,
- ami_search_string());
+ &ami_search_callbacks, NULL,
+ flags, ami_search_string());
ActivateWindow(fwin->gwin->shared->win);
break;
@@ -243,13 +236,10 @@ BOOL ami_search_event(void)
search_insert = true;
flags = ~SEARCH_FLAG_FORWARDS &
ami_search_flags();
- if (browser_window_search_verify_new(
+ browser_window_search(
fwin->gwin->shared->bw,
- &ami_search_callbacks, NULL))
- browser_window_search_step(
- fwin->gwin->shared->bw,
- flags,
- ami_search_string());
+ &ami_search_callbacks, NULL,
+ flags, ami_search_string());
ActivateWindow(fwin->gwin->shared->win);
break;
}