summaryrefslogtreecommitdiff
path: root/atari
diff options
context:
space:
mode:
authorVincent Sanders <vince@kyllikki.org>2014-03-18 22:32:52 +0000
committerVincent Sanders <vince@kyllikki.org>2014-03-18 22:32:52 +0000
commit4d4d74c8cd1a77a46cbe0816cf6150f8b4980947 (patch)
treecdc747443b58963a17b2844da25c7b2fab9deb99 /atari
parentfec9f916b640b8ffc18b7ff9f9d04fd742b32ad1 (diff)
downloadnetsurf-4d4d74c8cd1a77a46cbe0816cf6150f8b4980947.tar.gz
netsurf-4d4d74c8cd1a77a46cbe0816cf6150f8b4980947.tar.bz2
move page search gui callbacks to their own operations table
Diffstat (limited to 'atari')
-rw-r--r--atari/gui.c1
-rw-r--r--atari/search.c19
-rw-r--r--atari/search.h3
3 files changed, 15 insertions, 8 deletions
diff --git a/atari/gui.c b/atari/gui.c
index d83864497..4e077bdab 100644
--- a/atari/gui.c
+++ b/atari/gui.c
@@ -1112,6 +1112,7 @@ int main(int argc, char** argv)
.download = atari_download_table,
.fetch = &atari_fetch_table,
.utf8 = atari_utf8_table,
+ .search = atari_search_table,
};
/* @todo logging file descriptor update belongs in a nslog_init callback */
diff --git a/atari/search.c b/atari/search.c
index 6d8f53bec..f73a04a97 100644
--- a/atari/search.c
+++ b/atari/search.c
@@ -53,13 +53,16 @@ static void nsatari_search_add_recent(const char *string, void *p);
void nsatari_search_set_forward_state(bool active, void *p);
void nsatari_search_set_back_state(bool active, void *p);
-static struct gui_search_callbacks nsatari_search_callbacks = {
- nsatari_search_set_forward_state,
- nsatari_search_set_back_state,
- nsatari_search_set_status,
- nsatari_search_set_hourglass,
- nsatari_search_add_recent
-};
+static struct gui_search_table search_table = {
+ nsatari_search_set_status,
+ nsatari_search_set_hourglass,
+ nsatari_search_add_recent,
+ nsatari_search_set_forward_state,
+ nsatari_search_set_back_state,
+};
+
+struct gui_search_table *atari_search_table = &search_table;
+
/**
@@ -282,7 +285,7 @@ void nsatari_search_perform(struct s_search_form_session *s, OBJECT *obj,
else
s->state.flags &= (~SEARCH_FLAG_FORWARDS);
- browser_window_search(s->bw, &nsatari_search_callbacks, s,
+ browser_window_search(s->bw, s,
s->state.flags,
gemtk_obj_get_text(obj, TOOLBAR_TB_SRCH));
diff --git a/atari/search.h b/atari/search.h
index 00671e4a7..984fd3704 100644
--- a/atari/search.h
+++ b/atari/search.h
@@ -49,6 +49,9 @@ typedef struct s_search_form_session * SEARCH_FORM_SESSION;
struct s_search_form_session * nsatari_search_session_create(OBJECT * obj,
struct browser_window *bw);
+
+struct gui_search_table *atari_search_table;
+
void nsatari_search_session_destroy(struct s_search_form_session *s);
void nsatari_search_perform(struct s_search_form_session *s, OBJECT *obj,
search_flags_t f);