code: private Drawable tileifyIndeterminate(Drawable drawable) {
          if (drawable instanceof AnimationDrawable) {
              AnimationDrawable background = (AnimationDrawable) drawable;
              final int N = background.getNumberOfFrames();
              AnimationDrawable newBg = new AnimationDrawable();
              newBg.setOneShot(background.isOneShot());
  
              for (int i = 0; i < N; i++) {
                  Drawable frame = tileify(background.getFrame(i), true);
                  frame.setLevel(10000);
                  newBg.addFrame(frame, background.getDuration(i));
              }
              newBg.setLevel(10000);
              drawable = newBg;
          }
          return drawable;
      }
docs: Convert a AnimationDrawable for use as a barberpole animation.
  Each frame of the animation is wrapped in a ClipDrawable and
  given a tiling BitmapShader.