0
0
mirror of https://github.com/rkd77/elinks.git synced 2025-06-30 22:19:29 -04:00

Ecmascript: activate link only when onClick returns true

This commit is contained in:
Witold Filipczyk 2006-05-02 13:47:16 +02:00 committed by Witold Filipczyk
parent 9f69170c2a
commit c3f17eadeb

View File

@ -998,11 +998,9 @@ activate_link(struct session *ses, struct document_view *doc_view,
case LINK_MAP: case LINK_MAP:
case LINK_FIELD: case LINK_FIELD:
case LINK_AREA: case LINK_AREA:
case LINK_BUTTON:
if (goto_current_link(ses, doc_view, do_reload)) if (goto_current_link(ses, doc_view, do_reload))
return FRAME_EVENT_OK; return FRAME_EVENT_OK;
break;
case LINK_BUTTON:
break; break;
case LINK_CHECKBOX: case LINK_CHECKBOX:
link_fc = get_link_form_control(link); link_fc = get_link_form_control(link);
@ -1063,7 +1061,6 @@ activate_link(struct session *ses, struct document_view *doc_view,
enum frame_event_status enum frame_event_status
enter(struct session *ses, struct document_view *doc_view, int do_reload) enter(struct session *ses, struct document_view *doc_view, int do_reload)
{ {
enum frame_event_status ret;
struct link *link; struct link *link;
assert(ses && doc_view && doc_view->vs && doc_view->document); assert(ses && doc_view && doc_view->vs && doc_view->document);
@ -1072,12 +1069,10 @@ enter(struct session *ses, struct document_view *doc_view, int do_reload)
link = get_current_link(doc_view); link = get_current_link(doc_view);
if (!link) return FRAME_EVENT_REFRESH; if (!link) return FRAME_EVENT_REFRESH;
ret = activate_link(ses, doc_view, link, do_reload);
if (ret != FRAME_EVENT_IGNORED)
if (!current_link_evhook(doc_view, SEVHOOK_ONCLICK))
return FRAME_EVENT_REFRESH;
return ret; if (!current_link_evhook(doc_view, SEVHOOK_ONCLICK))
return FRAME_EVENT_REFRESH;
return activate_link(ses, doc_view, link, do_reload);
} }
struct link * struct link *