// Copyright 2004-present Facebook. All Rights Reserved. package com.facebook.react.uimanager.events; import com.facebook.react.bridge.Arguments; import com.facebook.react.bridge.WritableMap; import com.facebook.react.uimanager.PixelUtil; /** * Event dispatched when total width or height of a view's children changes */ public class ContentSizeChangeEvent extends Event<ContentSizeChangeEvent> { public static final String EVENT_NAME = "topContentSizeChange"; private final int mWidth; private final int mHeight; public ContentSizeChangeEvent(int viewTag, int width, int height) { super(viewTag); mWidth = width; mHeight = height; } @Override public String getEventName() { return EVENT_NAME; } @Override public void dispatch(RCTEventEmitter rctEventEmitter) { WritableMap data = Arguments.createMap(); data.putDouble("width", PixelUtil.toDIPFromPixel(mWidth)); data.putDouble("height", PixelUtil.toDIPFromPixel(mHeight)); rctEventEmitter.receiveEvent(getViewTag(), EVENT_NAME, data); } }