public static String getActions()

in stetho/src/main/java/com/facebook/stetho/inspector/elements/android/AccessibilityNodeInfoWrapper.java [175:255]


  public static String getActions(View view) {
    AccessibilityNodeInfoCompat node = createNodeInfoFromView(view);
    try {
      final StringBuilder actionLabels = new StringBuilder();
      final String separator = ", ";

      for (AccessibilityActionCompat action : node.getActionList()) {
        if (actionLabels.length() > 0) {
          actionLabels.append(separator);
        }
        switch (action.getId()) {
          case AccessibilityNodeInfoCompat.ACTION_FOCUS:
            actionLabels.append("focus");
            break;
          case AccessibilityNodeInfoCompat.ACTION_CLEAR_FOCUS:
            actionLabels.append("clear-focus");
            break;
          case AccessibilityNodeInfoCompat.ACTION_SELECT:
            actionLabels.append("select");
            break;
          case AccessibilityNodeInfoCompat.ACTION_CLEAR_SELECTION:
            actionLabels.append("clear-selection");
            break;
          case AccessibilityNodeInfoCompat.ACTION_CLICK:
            actionLabels.append("click");
            break;
          case AccessibilityNodeInfoCompat.ACTION_LONG_CLICK:
            actionLabels.append("long-click");
            break;
          case AccessibilityNodeInfoCompat.ACTION_ACCESSIBILITY_FOCUS:
            actionLabels.append("accessibility-focus");
            break;
          case AccessibilityNodeInfoCompat.ACTION_CLEAR_ACCESSIBILITY_FOCUS:
            actionLabels.append("clear-accessibility-focus");
            break;
          case AccessibilityNodeInfoCompat.ACTION_NEXT_AT_MOVEMENT_GRANULARITY:
            actionLabels.append("next-at-movement-granularity");
            break;
          case AccessibilityNodeInfoCompat.ACTION_PREVIOUS_AT_MOVEMENT_GRANULARITY:
            actionLabels.append("previous-at-movement-granularity");
            break;
          case AccessibilityNodeInfoCompat.ACTION_NEXT_HTML_ELEMENT:
            actionLabels.append("next-html-element");
            break;
          case AccessibilityNodeInfoCompat.ACTION_PREVIOUS_HTML_ELEMENT:
            actionLabels.append("previous-html-element");
            break;
          case AccessibilityNodeInfoCompat.ACTION_SCROLL_FORWARD:
            actionLabels.append("scroll-forward");
            break;
          case AccessibilityNodeInfoCompat.ACTION_SCROLL_BACKWARD:
            actionLabels.append("scroll-backward");
            break;
          case AccessibilityNodeInfoCompat.ACTION_CUT:
            actionLabels.append("cut");
            break;
          case AccessibilityNodeInfoCompat.ACTION_COPY:
            actionLabels.append("copy");
            break;
          case AccessibilityNodeInfoCompat.ACTION_PASTE:
            actionLabels.append("paste");
            break;
          case AccessibilityNodeInfoCompat.ACTION_SET_SELECTION:
            actionLabels.append("set-selection");
            break;
          default:
            CharSequence label = action.getLabel();
            if (label != null) {
              actionLabels.append(label);
            } else {
              actionLabels.append("unknown");
            }
            break;
        }
      }

      return actionLabels.length() > 0 ? actionLabels.toString() : null;
    } finally {
      node.recycle();
    }
  }