@Override public void onBrowserEvent(Context context, Element parent, String value, NativeEvent event, ValueUpdater<String> valueUpdater) { super.onBrowserEvent(context, parent, value, event, valueUpdater); // Ignore events that don't target the input. InputElement input = getInputElement(parent); Element target = event.getEventTarget().cast(); if (!input.isOrHasChild(target)) { return; } String eventType = event.getType(); Object key = context.getKey(); if (BrowserEvents.CHANGE.equals(eventType)) { finishEditing(parent, value, key, valueUpdater); } else if (BrowserEvents.KEYUP.equals(eventType)) { // Record keys as they are typed. ViewData vd = getViewData(key); if (vd == null) { vd = new ViewData(value); setViewData(key, vd); } vd.setCurrentValue(input.getValue()); } }
@Override protected void finishEditing(Element parent, String value, Object key, ValueUpdater<String> valueUpdater) { String newValue = getInputElement(parent).getValue(); // Get the view data. ViewData vd = getViewData(key); if (vd == null) { vd = new ViewData(value); setViewData(key, vd); } vd.setCurrentValue(newValue); // Fire the value updater if the value has changed. if (valueUpdater != null && !vd.getCurrentValue().equals(vd.getLastValue())) { vd.setLastValue(newValue); valueUpdater.update(newValue); } // Blur the element. super.finishEditing(parent, newValue, key, valueUpdater); }
@Override public void onBrowserEvent(Context context, Element parent, String value, NativeEvent event, ValueUpdater<String> valueUpdater) { super.onBrowserEvent(context, parent, value, event, valueUpdater); // Ignore events that don't target the input. InputElement input = getInputElement(parent); Element target = event.getEventTarget().cast(); if (!input.isOrHasChild(target)) { return; } String eventType = event.getType(); Object key = context.getKey(); if (BrowserEvents.CHANGE.equals(eventType)) { finishEditing(parent, value, key, valueUpdater); } else if (BrowserEvents.KEYUP.equals(eventType)) { // Record keys as they are typed. ViewData vd = getViewData(key); if (vd == null) { vd = new ViewData(value); setViewData(key, vd); } vd.setCurrentValue(input.getValue()); } }
@Override public void onBrowserEvent(Context context, Element parent, String value, NativeEvent event, ValueUpdater<String> valueUpdater) { super.onBrowserEvent(context, parent, value, event, valueUpdater); // Ignore events that don't target the input. InputElement input = getInputElement(parent); Element target = event.getEventTarget().cast(); if (!input.isOrHasChild(target)) { return; } String eventType = event.getType(); Object key = context.getKey(); if (BrowserEvents.CHANGE.equals(eventType)) { finishEditing(parent, value, key, valueUpdater); } else if (BrowserEvents.KEYUP.equals(eventType)) { // Record keys as they are typed. ViewData vd = getViewData(key); if (vd == null) { vd = new ViewData(value); setViewData(key, vd); } vd.setCurrentValue(input.getValue()); } }
@Override protected void finishEditing(Element parent, String value, Object key, ValueUpdater<String> valueUpdater) { String newValue = getInputElement(parent).getValue(); // Get the view data. ViewData vd = getViewData(key); if (vd == null) { vd = new ViewData(value); setViewData(key, vd); } vd.setCurrentValue(newValue); // Fire the value updater if the value has changed. if (valueUpdater != null && !vd.getCurrentValue().equals(vd.getLastValue())) { vd.setLastValue(newValue); valueUpdater.update(newValue); } // Blur the element. super.finishEditing(parent, newValue, key, valueUpdater); }
@Override protected void finishEditing(Element parent, String value, Object key, ValueUpdater<String> valueUpdater) { String newValue = getInputElement(parent).getValue(); // Get the view data. ViewData vd = getViewData(key); if (vd == null) { vd = new ViewData(value); setViewData(key, vd); } vd.setCurrentValue(newValue); // Fire the value updater if the value has changed. if (valueUpdater != null && !vd.getCurrentValue().equals(vd.getLastValue())) { vd.setLastValue(newValue); valueUpdater.update(newValue); } // Blur the element. super.finishEditing(parent, newValue, key, valueUpdater); }