Change hidden super class to use first non-hidden super class

When a subclass has a hidden super class, we now use the first super
class which passes checkLevel as the new super class.

(cherry-pick of d894afa28c3fba1aa71058601693617746494a22.)

Change-Id: I8e92ac18575f86081192443e0055a2c42d28c3c3
Merge "Change hidden super class to use first non-hidden super class"
am ce9e9aad: Merge "Change hidden super class to use first non-hidden super class"

* commit 'ce9e9aadc5fd3033d67b247b3d6c66318749d52f':
  Change hidden super class to use first non-hidden super class
Provide superclassType along with superclass

Follow up to previous change which fixed the API docs but not the API stubs:

    commit d894afa28c3fba1aa71058601693617746494a22
    Author: Mathieu Chartier <mathieuc@google.com>
    Date:   Fri Sep 21 15:42:59 2012 -0700

        Change hidden super class to use first non-hidden super class

        When a subclass has a hidden super class, we now use the first super
        class which passes checkLevel as the new super class.

(cherry pick of 0d7a3dd87f2173e8e7d0813c52c042d932b61cff.)

Change-Id: I09e2158328e8fc227c31c6763a30522f073ac2a8
Merge "Provide superclassType along with superclass"
am 3ee7bb80: Merge "Provide superclassType along with superclass"

* commit '3ee7bb80f19079ea5a3ce303ea60e825aa65a3a2':
  Provide superclassType along with superclass
Check superclasses recursively for changed superclasses.

We now check superclasses recursively instead of just doing a string comparison.
This means that we no longer treat cases where the new superclass extends the old
superclass as an error.

Fixes https://android-review.googlesource.com/#/c/58400/1

Change-Id: I77ebb7312d0de83faed7dce0195682848256af73
Merge "Check superclasses recursively for changed superclasses."
am 4c54273b: Merge "Check superclasses recursively for changed superclasses."

* commit '4c54273b5fcc7012024858387dc36033d6d37d50':
  Check superclasses recursively for changed superclasses.
Fix a failing test.

We fixed the behavior with 'synchronized' a long time ago, but didn't
update the test.

Also add a reminder of how to run the tests, in lieu of adding an easy
way to run the tests.

Change-Id: I628ca5b054f777b1b19823cede05e196f8e6a685
Merge "Fix a failing test."
am 5d01254b: Merge "Fix a failing test."

* commit '5d01254b0cc6c1fe5f01ad6ac631ae631ce39744':
  Fix a failing test.
Check that return types are assignable instead of exact.

We now check that the new return type is assignable to the old
return type instead of just comparing the types as strings when
checking the consistency of two APIs.

Fixes:
https://android-review.googlesource.com/#/c/58843/

Change-Id: I6a18a76e5296d58c05f1bb59341cdaa820f0c540
Merge "Check that return types are assignable instead of exact."
am 73609593: Merge "Check that return types are assignable instead of exact."

* commit '736095934f50fede95f2cb1bb54cc24493c6e69a':
  Check that return types are assignable instead of exact.
Add Gradle build file to make Doclava.

Change-Id: I6148ca5b215ab6dd8d4e9a5cef8e63d29668d232
fix doclava to tag enums with 'since' info

In order for the output to behave properly, this CL depends
on the following change that adds the enum values to the public
API list for all API levels lower than 14.
I1f88e8f9f3e2655d17eea628611318e207cbb535

bug: 10220616

Change-Id: I424e71d8a8b69c1c348e10b60b60f77aa0b2468d
am 18904806: fix doclava to tag enums with \'since\' info

* commit '189048062a7df2d2fba4ff075c6416bfbf05a094':
  fix doclava to tag enums with 'since' info
am 09ce528e: am 18904806: fix doclava to tag enums with \'since\' info

* commit '09ce528ec5786254f6f1af6359c344d673ca80ad':
  fix doclava to tag enums with 'since' info
doc change: Samples browsing: starter templates and navtree gen support.

Change-Id: I03f5eec1dcb71e96fed2ba0119a0b2c0bba56f49