예제 #1
0
void V8Document::createTouchMethodPrologueCustom(
    const v8::FunctionCallbackInfo<v8::Value>& info,
    Document*) {
  v8::Local<v8::Value> v8Window = info[0];
  if (isUndefinedOrNull(v8Window)) {
    UseCounter::countIfNotPrivateScript(
        info.GetIsolate(), currentExecutionContext(info.GetIsolate()),
        UseCounter::DocumentCreateTouchWindowNull);
  } else if (!toDOMWindow(info.GetIsolate(), v8Window)) {
    UseCounter::countIfNotPrivateScript(
        info.GetIsolate(), currentExecutionContext(info.GetIsolate()),
        UseCounter::DocumentCreateTouchWindowWrongType);
  }

  v8::Local<v8::Value> v8Target = info[1];
  if (isUndefinedOrNull(v8Target)) {
    UseCounter::countIfNotPrivateScript(
        info.GetIsolate(), currentExecutionContext(info.GetIsolate()),
        UseCounter::DocumentCreateTouchTargetNull);
  } else if (!toEventTarget(info.GetIsolate(), v8Target)) {
    UseCounter::countIfNotPrivateScript(
        info.GetIsolate(), currentExecutionContext(info.GetIsolate()),
        UseCounter::DocumentCreateTouchTargetWrongType);
  }

  if (info.Length() < 7) {
    UseCounter::countIfNotPrivateScript(
        info.GetIsolate(), currentExecutionContext(info.GetIsolate()),
        UseCounter::DocumentCreateTouchLessThanSevenArguments);
  }
}
예제 #2
0
void JSDictionary::convertValue(ExecState*, JSValue value, RefPtr<EventTarget>& result)
{
    result = toEventTarget(value);
}