@Override
    protected void onPopulateEventForVirtualView(int virtualViewId, AccessibilityEvent event) {
      if (mVirtualViews == null || mVirtualViews.size() <= virtualViewId) {
        // TODO(clholgat): Remove this work around when the Android bug is fixed.
        // crbug.com/420177
        event.setContentDescription(PLACE_HOLDER_STRING);
        return;
      }
      VirtualView view = mVirtualViews.get(virtualViewId);

      event.setContentDescription(view.getAccessibilityDescription());
      event.setClassName(CompositorViewHolder.class.getName());
    }
    @Override
    protected void onPopulateNodeForVirtualView(
        int virtualViewId, AccessibilityNodeInfoCompat node) {
      if (mVirtualViews == null || mVirtualViews.size() <= virtualViewId) {
        // TODO(clholgat): Remove this work around when the Android bug is fixed.
        // crbug.com/420177
        node.setBoundsInParent(mPlaceHolderRect);
        node.setContentDescription(PLACE_HOLDER_STRING);
        return;
      }
      VirtualView view = mVirtualViews.get(virtualViewId);
      view.getTouchTarget(mTouchTarget);

      node.setBoundsInParent(rectToPx(mTouchTarget));
      node.setContentDescription(view.getAccessibilityDescription());
      node.addAction(AccessibilityNodeInfoCompat.ACTION_CLICK);
      node.addAction(AccessibilityNodeInfoCompat.ACTION_FOCUS);
      node.addAction(AccessibilityNodeInfoCompat.ACTION_LONG_CLICK);
    }