diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/tab-body.c | 34 |
1 files changed, 22 insertions, 12 deletions
diff --git a/src/tab-body.c b/src/tab-body.c index 229e303..843fe5b 100644 --- a/src/tab-body.c +++ b/src/tab-body.c @@ -238,16 +238,21 @@ context_menu_media_cb(WebKitContextMenu *context_menu, GList *media_ctrl_items, } static void -context_menu_editable_cb(WebKitContextMenu *context_menu, GList *edit_items, +context_menu_editable_cb(WebKitContextMenu *context_menu, + GList *spell_repl_items, GList *spell_ctrl_items, GList *edit_items, GList *input_items, MqTabBody __attribute__((unused)) *body) { ITEM_DECLS_NO_CUSTOM - RESTORE_ITEMS(edit_items); /* Cu_t, _Copy, _Paste, _Delete */ - NEW_SEPARATOR_ITEM(); /* --- */ - NEW_STOCK_ITEM(SELECT_ALL); /* Select _All */ - NEW_SEPARATOR_ITEM(); /* --- */ - RESTORE_ITEMS(input_items); /* _Insert Unicode Character */ + RESTORE_ITEMS(spell_repl_items); /* Spelling suggestions */ + NEW_SEPARATOR_ITEM(); /* --- */ + RESTORE_ITEMS(spell_ctrl_items); /* _Ignore Spelling, _Learn Spelling */ + NEW_SEPARATOR_ITEM(); /* --- */ + RESTORE_ITEMS(edit_items); /* Cu_t, _Copy, _Paste, _Delete */ + NEW_SEPARATOR_ITEM(); /* --- */ + NEW_STOCK_ITEM(SELECT_ALL); /* Select _All */ + NEW_SEPARATOR_ITEM(); /* --- */ + RESTORE_ITEMS(input_items); /* _Insert Unicode Character */ } static void context_menu_document_cb(WebKitContextMenu *context_menu, GList *nav_items, @@ -278,7 +283,8 @@ context_menu_cb(WebKitWebView __attribute__((unused)) *web_view, GList *nav_items; GList *edit_items; GList *input_items; - GList *spell_items; + GList *spell_repl_items; + GList *spell_ctrl_items; GList *media_ctrl_items; GList *media_toggle_items; gboolean is_selection; @@ -296,7 +302,8 @@ context_menu_cb(WebKitWebView __attribute__((unused)) *web_view, nav_items = NULL; edit_items = NULL; input_items = NULL; - spell_items = NULL; + spell_repl_items = NULL; + spell_ctrl_items = NULL; media_ctrl_items = NULL; media_toggle_items = NULL; is_selection = FALSE; @@ -328,10 +335,12 @@ context_menu_cb(WebKitWebView __attribute__((unused)) *web_view, break; case WKCMA(SPELLING_GUESS): case WKCMA(NO_GUESSES_FOUND): + PRESERVE_ITEM(spell_repl_items); + break; case WKCMA(IGNORE_SPELLING): case WKCMA(LEARN_SPELLING): case WKCMA(IGNORE_GRAMMAR): - PRESERVE_ITEM(spell_items); + PRESERVE_ITEM(spell_ctrl_items); break; case WKCMA(OPEN_VIDEO_IN_NEW_WINDOW): case WKCMA(COPY_VIDEO_LINK_TO_CLIPBOARD): @@ -359,7 +368,8 @@ context_menu_cb(WebKitWebView __attribute__((unused)) *web_view, nav_items = g_list_reverse(nav_items); edit_items = g_list_reverse(edit_items); input_items = g_list_reverse(input_items); - spell_items = g_list_reverse(spell_items); + spell_repl_items = g_list_reverse(spell_repl_items); + spell_ctrl_items = g_list_reverse(spell_ctrl_items); media_ctrl_items = g_list_reverse(media_ctrl_items); media_toggle_items = g_list_reverse(media_toggle_items); @@ -394,8 +404,8 @@ context_menu_cb(WebKitWebView __attribute__((unused)) *web_view, context_handled = TRUE; } if (context & WEBKIT_HIT_TEST_RESULT_CONTEXT_EDITABLE) { - context_menu_editable_cb(context_menu, edit_items, input_items, - body); + context_menu_editable_cb(context_menu, spell_repl_items, + spell_ctrl_items, edit_items, input_items, body); context_handled = TRUE; } if (!context_handled && |