WindowChangeEvent.java 829B

12345678910111213141516171819202122232425262728293031
  1. package com.th3rdwave.safeareacontext;
  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. /* package */ class WindowChangeEvent extends Event<WindowChangeEvent> {
  7. private static final String EVENT_NAME = "topWindowChange";
  8. private Rect mFrame;
  9. WindowChangeEvent(int viewTag, Rect frame) {
  10. super(viewTag);
  11. mFrame = frame;
  12. }
  13. @Override
  14. public String getEventName() {
  15. return EVENT_NAME;
  16. }
  17. @Override
  18. public void dispatch(RCTEventEmitter rctEventEmitter) {
  19. WritableMap event = Arguments.createMap();
  20. event.putMap("frame", SerializationUtils.rectToJsMap(mFrame));
  21. rctEventEmitter.receiveEvent(getViewTag(), getEventName(), event);
  22. }
  23. }