react-native-webview.git

TopShouldStartLoadWithRequestEvent.java 1.1KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. package com.reactnativecommunity.webview.events;
  2. import com.facebook.react.bridge.Arguments;
  3. import com.facebook.react.bridge.WritableMap;
  4. import com.facebook.react.uimanager.events.Event;
  5. import com.facebook.react.uimanager.events.RCTEventEmitter;
  6. public class TopShouldStartLoadWithRequestEvent extends Event<TopMessageEvent> {
  7. public static final String EVENT_NAME = "topShouldStartLoadWithRequest";
  8. private final String mUrl;
  9. public TopShouldStartLoadWithRequestEvent(int viewId, String url) {
  10. super(viewId);
  11. mUrl = url;
  12. }
  13. @Override
  14. public String getEventName() {
  15. return EVENT_NAME;
  16. }
  17. @Override
  18. public boolean canCoalesce() {
  19. return false;
  20. }
  21. @Override
  22. public short getCoalescingKey() {
  23. // All events for a given view can be coalesced.
  24. return 0;
  25. }
  26. @Override
  27. public void dispatch(RCTEventEmitter rctEventEmitter) {
  28. WritableMap data = Arguments.createMap();
  29. data.putString("url", mUrl);
  30. data.putString("navigationType", "other");
  31. rctEventEmitter.receiveEvent(getViewTag(), EVENT_NAME, data);
  32. }
  33. }