/* * Copyright 2008 Google Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); you may not * use this file except in compliance with the License. You may obtain a copy of * the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the * License for the specific language governing permissions and limitations under * the License. */ package com.google.gwt.user.client.impl; import com.google.gwt.user.client.Element; /** * Opera implementation of {@link com.google.gwt.user.client.impl.DOMImpl}. */ public class DOMImplOpera extends DOMImplStandard { /** * As Opera sinks events very quickly, adding guards to prevent the sinking of * events actually slows Opera down. */ @Override protected native void sinkEventsImpl(Element elem, int bits) /*-{ elem.__eventBits = bits; elem.onclick = (bits & 0x00001) ? @com.google.gwt.user.client.impl.DOMImplStandard::dispatchEvent : null; elem.ondblclick = (bits & 0x00002) ? @com.google.gwt.user.client.impl.DOMImplStandard::dispatchEvent : null; elem.onmousedown = (bits & 0x00004) ? @com.google.gwt.user.client.impl.DOMImplStandard::dispatchEvent : null; elem.onmouseup = (bits & 0x00008) ? @com.google.gwt.user.client.impl.DOMImplStandard::dispatchEvent : null; elem.onmouseover = (bits & 0x00010) ? @com.google.gwt.user.client.impl.DOMImplStandard::dispatchEvent : null; elem.onmouseout = (bits & 0x00020) ? @com.google.gwt.user.client.impl.DOMImplStandard::dispatchEvent : null; elem.onmousemove = (bits & 0x00040) ? @com.google.gwt.user.client.impl.DOMImplStandard::dispatchEvent : null; elem.onkeydown = (bits & 0x00080) ? @com.google.gwt.user.client.impl.DOMImplStandard::dispatchEvent : null; elem.onkeypress = (bits & 0x00100) ? @com.google.gwt.user.client.impl.DOMImplStandard::dispatchEvent : null; elem.onkeyup = (bits & 0x00200) ? @com.google.gwt.user.client.impl.DOMImplStandard::dispatchEvent : null; elem.onchange = (bits & 0x00400) ? @com.google.gwt.user.client.impl.DOMImplStandard::dispatchEvent : null; elem.onfocus = (bits & 0x00800) ? @com.google.gwt.user.client.impl.DOMImplStandard::dispatchEvent : null; elem.onblur = (bits & 0x01000) ? @com.google.gwt.user.client.impl.DOMImplStandard::dispatchEvent : null; elem.onlosecapture = (bits & 0x02000) ? @com.google.gwt.user.client.impl.DOMImplStandard::dispatchEvent : null; elem.onscroll = (bits & 0x04000) ? @com.google.gwt.user.client.impl.DOMImplStandard::dispatchEvent : null; elem.onload = (bits & 0x08000) ? @com.google.gwt.user.client.impl.DOMImplStandard::dispatchUnhandledEvent : null; elem.onerror = (bits & 0x10000) ? @com.google.gwt.user.client.impl.DOMImplStandard::dispatchEvent : null; elem.onmousewheel = (bits & 0x20000) ? @com.google.gwt.user.client.impl.DOMImplStandard::dispatchEvent : null; elem.oncontextmenu = (bits & 0x40000) ? @com.google.gwt.user.client.impl.DOMImplStandard::dispatchEvent : null; elem.onpaste = (bits & 0x80000) ? @com.google.gwt.user.client.impl.DOMImplStandard::dispatchEvent : null; }-*/; }