}
} else {
LogDebug("ContextMenu Enable!!");
- for (unsigned int idx = 0; idx < ewk_context_menu_item_count(menu);) {
+ int menu_num = ewk_context_menu_item_count(menu);
+ unsigned int idx = 0;
+ do {
Ewk_Context_Menu_Item* item = ewk_context_menu_nth_item_get(menu, idx);
- Assert(item);
+ if (!item) {
+ idx++;
+ continue;
+ }
Ewk_Context_Menu_Item_Tag tag = ewk_context_menu_item_tag_get(item);
switch (tag) {
case EWK_CONTEXT_MENU_ITEM_TAG_OPEN_IMAGE_IN_NEW_WINDOW:
ewk_context_menu_item_remove(menu, item);
- break;
+ continue;
+
+ case EWK_CONTEXT_MENU_ITEM_TAG_OPEN_LINK_IN_NEW_WINDOW:
+ ewk_context_menu_item_remove(menu, item);
+ continue;
+
+ case EWK_CONTEXT_MENU_ITEM_TAG_OPEN_FRAME_IN_NEW_WINDOW:
+ ewk_context_menu_item_remove(menu, item);
+ continue;
+
+ case EWK_CONTEXT_MENU_ITEM_TAG_OPEN_MEDIA_IN_NEW_WINDOW:
+ ewk_context_menu_item_remove(menu, item);
+ continue;
case EWK_CONTEXT_MENU_ITEM_TAG_SEARCH_WEB:
ewk_context_menu_item_remove(menu, item);
- break;
+ continue;
default:
idx++;
break;
}
- }
+ } while (idx < menu_num);
}
}