bool gcore::Thread::cancel() { if (cancelable()) { if (pthread_cancel((pthread_t)mSelf) == 0) { pthread_join((pthread_t)mSelf, NULL); mSelf = 0; mRunning = false; return true; } } return false; }
void TouchEvent::preventDefault() { UIEventWithKeyState::preventDefault(); // A common developer error is to wait too long before attempting to stop // scrolling by consuming a touchmove event. Generate a warning if this // event is uncancelable. if (!cancelable() && view() && view()->frame()) { view()->frame()->console().addMessage(ConsoleMessage::create(JSMessageSource, WarningMessageLevel, "Ignored attempt to cancel a " + type() + " event with cancelable=false, for example because scrolling is in progress and cannot be interrupted.")); } }
bool gcore::Thread::cancel() { if (cancelable()) { if (TerminateThread((HANDLE)mSelf, 0)) { CloseHandle((HANDLE)mSelf); mSelf = 0; mSelfId = 0; mRunning = false; return true; } } return false; }
PassRefPtr<Event> MouseEvent::cloneFor(HTMLIFrameElement* iframe) const { ASSERT(iframe); RefPtr<MouseEvent> clonedMouseEvent = MouseEvent::create(); Frame* frame = iframe->document().frame(); FrameView* frameView = frame ? frame->view() : 0; clonedMouseEvent->initMouseEvent(type(), bubbles(), cancelable(), iframe->document().defaultView(), detail(), screenX(), screenY(), frameView ? adjustedClientX(clientX(), iframe, frameView) : 0, frameView ? adjustedClientY(clientY(), iframe, frameView) : 0, ctrlKey(), altKey(), shiftKey(), metaKey(), button(), // Nullifies relatedTarget. 0); return clonedMouseEvent.release(); }
Ref<Event> MouseEvent::cloneFor(HTMLIFrameElement* iframe) const { ASSERT(iframe); Frame* frame = iframe->document().frame(); FrameView* frameView = frame ? frame->view() : nullptr; Ref<MouseEvent> clonedMouseEvent = MouseEvent::create(type(), bubbles(), cancelable(), iframe->document().defaultView(), detail(), screenX(), screenY(), frameView ? adjustedClientX(clientX(), iframe, frameView) : 0, frameView ? adjustedClientY(clientY(), iframe, frameView) : 0, ctrlKey(), altKey(), shiftKey(), metaKey(), button(), syntheticClickType(), // Nullifies relatedTarget. 0); clonedMouseEvent->setForce(force()); return WTFMove(clonedMouseEvent); }
PassRefPtr<Event> Event::cloneFor(HTMLIFrameElement*) const { return Event::create(type(), bubbles(), cancelable()); }