├── .gitignore ├── .travis.yml ├── LICENSE.txt ├── README.md ├── README.md.template ├── api ├── .gitignore ├── build.gradle ├── consumer-proguard-rules.pro └── src │ └── main │ ├── AndroidManifest.xml │ └── java │ └── io │ └── sweers │ └── barber │ ├── AndroidAttr.java │ ├── AttrSetKind.java │ ├── Barber.java │ ├── Kind.java │ ├── Required.java │ ├── StyledAttr.java │ ├── WeakHashSet.java │ └── package-info.java ├── compiler ├── .gitignore ├── build.gradle ├── libs │ └── android-23.jar └── src │ └── main │ ├── java │ └── io │ │ └── sweers │ │ └── barber │ │ ├── BarberProcessor.java │ │ └── Barbershop.java │ └── resources │ └── META-INF │ └── services │ └── javax.annotation.processing.Processor ├── gradle.properties ├── gradle └── wrapper │ ├── gradle-wrapper.jar │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── sample ├── .gitignore ├── build.gradle ├── proguard-rules.pro └── src │ ├── androidTest │ └── java │ │ └── io │ │ └── sweers │ │ └── barber │ │ └── sample │ │ ├── ApplicationTest.java │ │ ├── BarberTest.java │ │ └── PreferenceTest.java │ ├── main │ ├── AndroidManifest.xml │ ├── java │ │ └── io │ │ │ └── sweers │ │ │ └── barber │ │ │ └── sample │ │ │ ├── BarberView.java │ │ │ ├── MainActivity.java │ │ │ └── testing │ │ │ ├── ChildTestView.java │ │ │ ├── CustomPreference.java │ │ │ ├── DefaultsTestView.java │ │ │ ├── GrandChildTestView.java │ │ │ ├── RequiredStyledAttrTestView.java │ │ │ ├── TestPreferencesActivity.java │ │ │ ├── TestTextView.java │ │ │ └── TestView.java │ └── res │ │ ├── color │ │ └── button_selector.xml │ │ ├── drawable-hdpi │ │ └── ic_action_refresh.png │ │ ├── drawable-mdpi │ │ └── ic_action_refresh.png │ │ ├── drawable-xhdpi │ │ └── ic_action_refresh.png │ │ ├── drawable-xxhdpi │ │ └── ic_action_refresh.png │ │ ├── drawable-xxxhdpi │ │ └── ic_action_refresh.png │ │ ├── drawable │ │ └── circle.xml │ │ ├── layout │ │ ├── activity_main.xml │ │ ├── child_test_view.xml │ │ ├── defaults_test_view.xml │ │ ├── grand_child_test_view.xml │ │ ├── required_styled_attr_test_view.xml │ │ ├── test_textview.xml │ │ └── test_view.xml │ │ ├── menu │ │ └── menu_main.xml │ │ ├── mipmap-hdpi │ │ └── ic_launcher.png │ │ ├── mipmap-mdpi │ │ └── ic_launcher.png │ │ ├── mipmap-xhdpi │ │ └── ic_launcher.png │ │ ├── mipmap-xxhdpi │ │ └── ic_launcher.png │ │ ├── values │ │ ├── array.xml │ │ ├── attrs.xml │ │ ├── bools.xml │ │ ├── dimens.xml │ │ ├── fraction.xml │ │ ├── integers.xml │ │ ├── strings.xml │ │ └── styles.xml │ │ └── xml │ │ └── test_prefs.xml │ └── test │ └── java │ └── io │ └── sweers │ └── barber │ └── sample │ ├── BarberTest.java │ └── PreferenceTest.java ├── settings.gradle └── version.properties /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZacSweers/barber/HEAD/.gitignore -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZacSweers/barber/HEAD/.travis.yml -------------------------------------------------------------------------------- /LICENSE.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZacSweers/barber/HEAD/LICENSE.txt -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZacSweers/barber/HEAD/README.md -------------------------------------------------------------------------------- /README.md.template: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZacSweers/barber/HEAD/README.md.template -------------------------------------------------------------------------------- /api/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /api/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZacSweers/barber/HEAD/api/build.gradle -------------------------------------------------------------------------------- /api/consumer-proguard-rules.pro: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZacSweers/barber/HEAD/api/consumer-proguard-rules.pro -------------------------------------------------------------------------------- /api/src/main/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /api/src/main/java/io/sweers/barber/AndroidAttr.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZacSweers/barber/HEAD/api/src/main/java/io/sweers/barber/AndroidAttr.java -------------------------------------------------------------------------------- /api/src/main/java/io/sweers/barber/AttrSetKind.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZacSweers/barber/HEAD/api/src/main/java/io/sweers/barber/AttrSetKind.java -------------------------------------------------------------------------------- /api/src/main/java/io/sweers/barber/Barber.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZacSweers/barber/HEAD/api/src/main/java/io/sweers/barber/Barber.java -------------------------------------------------------------------------------- /api/src/main/java/io/sweers/barber/Kind.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZacSweers/barber/HEAD/api/src/main/java/io/sweers/barber/Kind.java -------------------------------------------------------------------------------- /api/src/main/java/io/sweers/barber/Required.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZacSweers/barber/HEAD/api/src/main/java/io/sweers/barber/Required.java -------------------------------------------------------------------------------- /api/src/main/java/io/sweers/barber/StyledAttr.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZacSweers/barber/HEAD/api/src/main/java/io/sweers/barber/StyledAttr.java -------------------------------------------------------------------------------- /api/src/main/java/io/sweers/barber/WeakHashSet.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZacSweers/barber/HEAD/api/src/main/java/io/sweers/barber/WeakHashSet.java -------------------------------------------------------------------------------- /api/src/main/java/io/sweers/barber/package-info.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZacSweers/barber/HEAD/api/src/main/java/io/sweers/barber/package-info.java -------------------------------------------------------------------------------- /compiler/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /compiler/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZacSweers/barber/HEAD/compiler/build.gradle -------------------------------------------------------------------------------- /compiler/libs/android-23.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZacSweers/barber/HEAD/compiler/libs/android-23.jar -------------------------------------------------------------------------------- /compiler/src/main/java/io/sweers/barber/BarberProcessor.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZacSweers/barber/HEAD/compiler/src/main/java/io/sweers/barber/BarberProcessor.java -------------------------------------------------------------------------------- /compiler/src/main/java/io/sweers/barber/Barbershop.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZacSweers/barber/HEAD/compiler/src/main/java/io/sweers/barber/Barbershop.java -------------------------------------------------------------------------------- /compiler/src/main/resources/META-INF/services/javax.annotation.processing.Processor: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZacSweers/barber/HEAD/compiler/src/main/resources/META-INF/services/javax.annotation.processing.Processor -------------------------------------------------------------------------------- /gradle.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZacSweers/barber/HEAD/gradle.properties -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZacSweers/barber/HEAD/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZacSweers/barber/HEAD/gradle/wrapper/gradle-wrapper.properties -------------------------------------------------------------------------------- /gradlew: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZacSweers/barber/HEAD/gradlew -------------------------------------------------------------------------------- /gradlew.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZacSweers/barber/HEAD/gradlew.bat -------------------------------------------------------------------------------- /sample/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /sample/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZacSweers/barber/HEAD/sample/build.gradle -------------------------------------------------------------------------------- /sample/proguard-rules.pro: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZacSweers/barber/HEAD/sample/proguard-rules.pro -------------------------------------------------------------------------------- /sample/src/androidTest/java/io/sweers/barber/sample/ApplicationTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZacSweers/barber/HEAD/sample/src/androidTest/java/io/sweers/barber/sample/ApplicationTest.java -------------------------------------------------------------------------------- /sample/src/androidTest/java/io/sweers/barber/sample/BarberTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZacSweers/barber/HEAD/sample/src/androidTest/java/io/sweers/barber/sample/BarberTest.java -------------------------------------------------------------------------------- /sample/src/androidTest/java/io/sweers/barber/sample/PreferenceTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZacSweers/barber/HEAD/sample/src/androidTest/java/io/sweers/barber/sample/PreferenceTest.java -------------------------------------------------------------------------------- /sample/src/main/AndroidManifest.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZacSweers/barber/HEAD/sample/src/main/AndroidManifest.xml -------------------------------------------------------------------------------- /sample/src/main/java/io/sweers/barber/sample/BarberView.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZacSweers/barber/HEAD/sample/src/main/java/io/sweers/barber/sample/BarberView.java -------------------------------------------------------------------------------- /sample/src/main/java/io/sweers/barber/sample/MainActivity.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZacSweers/barber/HEAD/sample/src/main/java/io/sweers/barber/sample/MainActivity.java -------------------------------------------------------------------------------- /sample/src/main/java/io/sweers/barber/sample/testing/ChildTestView.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZacSweers/barber/HEAD/sample/src/main/java/io/sweers/barber/sample/testing/ChildTestView.java -------------------------------------------------------------------------------- /sample/src/main/java/io/sweers/barber/sample/testing/CustomPreference.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZacSweers/barber/HEAD/sample/src/main/java/io/sweers/barber/sample/testing/CustomPreference.java -------------------------------------------------------------------------------- /sample/src/main/java/io/sweers/barber/sample/testing/DefaultsTestView.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZacSweers/barber/HEAD/sample/src/main/java/io/sweers/barber/sample/testing/DefaultsTestView.java -------------------------------------------------------------------------------- /sample/src/main/java/io/sweers/barber/sample/testing/GrandChildTestView.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZacSweers/barber/HEAD/sample/src/main/java/io/sweers/barber/sample/testing/GrandChildTestView.java -------------------------------------------------------------------------------- /sample/src/main/java/io/sweers/barber/sample/testing/RequiredStyledAttrTestView.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZacSweers/barber/HEAD/sample/src/main/java/io/sweers/barber/sample/testing/RequiredStyledAttrTestView.java -------------------------------------------------------------------------------- /sample/src/main/java/io/sweers/barber/sample/testing/TestPreferencesActivity.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZacSweers/barber/HEAD/sample/src/main/java/io/sweers/barber/sample/testing/TestPreferencesActivity.java -------------------------------------------------------------------------------- /sample/src/main/java/io/sweers/barber/sample/testing/TestTextView.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZacSweers/barber/HEAD/sample/src/main/java/io/sweers/barber/sample/testing/TestTextView.java -------------------------------------------------------------------------------- /sample/src/main/java/io/sweers/barber/sample/testing/TestView.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZacSweers/barber/HEAD/sample/src/main/java/io/sweers/barber/sample/testing/TestView.java -------------------------------------------------------------------------------- /sample/src/main/res/color/button_selector.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZacSweers/barber/HEAD/sample/src/main/res/color/button_selector.xml -------------------------------------------------------------------------------- /sample/src/main/res/drawable-hdpi/ic_action_refresh.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZacSweers/barber/HEAD/sample/src/main/res/drawable-hdpi/ic_action_refresh.png -------------------------------------------------------------------------------- /sample/src/main/res/drawable-mdpi/ic_action_refresh.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZacSweers/barber/HEAD/sample/src/main/res/drawable-mdpi/ic_action_refresh.png -------------------------------------------------------------------------------- /sample/src/main/res/drawable-xhdpi/ic_action_refresh.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZacSweers/barber/HEAD/sample/src/main/res/drawable-xhdpi/ic_action_refresh.png -------------------------------------------------------------------------------- /sample/src/main/res/drawable-xxhdpi/ic_action_refresh.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZacSweers/barber/HEAD/sample/src/main/res/drawable-xxhdpi/ic_action_refresh.png -------------------------------------------------------------------------------- /sample/src/main/res/drawable-xxxhdpi/ic_action_refresh.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZacSweers/barber/HEAD/sample/src/main/res/drawable-xxxhdpi/ic_action_refresh.png -------------------------------------------------------------------------------- /sample/src/main/res/drawable/circle.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZacSweers/barber/HEAD/sample/src/main/res/drawable/circle.xml -------------------------------------------------------------------------------- /sample/src/main/res/layout/activity_main.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZacSweers/barber/HEAD/sample/src/main/res/layout/activity_main.xml -------------------------------------------------------------------------------- /sample/src/main/res/layout/child_test_view.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZacSweers/barber/HEAD/sample/src/main/res/layout/child_test_view.xml -------------------------------------------------------------------------------- /sample/src/main/res/layout/defaults_test_view.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZacSweers/barber/HEAD/sample/src/main/res/layout/defaults_test_view.xml -------------------------------------------------------------------------------- /sample/src/main/res/layout/grand_child_test_view.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZacSweers/barber/HEAD/sample/src/main/res/layout/grand_child_test_view.xml -------------------------------------------------------------------------------- /sample/src/main/res/layout/required_styled_attr_test_view.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZacSweers/barber/HEAD/sample/src/main/res/layout/required_styled_attr_test_view.xml -------------------------------------------------------------------------------- /sample/src/main/res/layout/test_textview.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZacSweers/barber/HEAD/sample/src/main/res/layout/test_textview.xml -------------------------------------------------------------------------------- /sample/src/main/res/layout/test_view.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZacSweers/barber/HEAD/sample/src/main/res/layout/test_view.xml -------------------------------------------------------------------------------- /sample/src/main/res/menu/menu_main.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZacSweers/barber/HEAD/sample/src/main/res/menu/menu_main.xml -------------------------------------------------------------------------------- /sample/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZacSweers/barber/HEAD/sample/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /sample/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZacSweers/barber/HEAD/sample/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /sample/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZacSweers/barber/HEAD/sample/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /sample/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZacSweers/barber/HEAD/sample/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /sample/src/main/res/values/array.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZacSweers/barber/HEAD/sample/src/main/res/values/array.xml -------------------------------------------------------------------------------- /sample/src/main/res/values/attrs.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZacSweers/barber/HEAD/sample/src/main/res/values/attrs.xml -------------------------------------------------------------------------------- /sample/src/main/res/values/bools.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZacSweers/barber/HEAD/sample/src/main/res/values/bools.xml -------------------------------------------------------------------------------- /sample/src/main/res/values/dimens.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZacSweers/barber/HEAD/sample/src/main/res/values/dimens.xml -------------------------------------------------------------------------------- /sample/src/main/res/values/fraction.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZacSweers/barber/HEAD/sample/src/main/res/values/fraction.xml -------------------------------------------------------------------------------- /sample/src/main/res/values/integers.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZacSweers/barber/HEAD/sample/src/main/res/values/integers.xml -------------------------------------------------------------------------------- /sample/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZacSweers/barber/HEAD/sample/src/main/res/values/strings.xml -------------------------------------------------------------------------------- /sample/src/main/res/values/styles.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZacSweers/barber/HEAD/sample/src/main/res/values/styles.xml -------------------------------------------------------------------------------- /sample/src/main/res/xml/test_prefs.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZacSweers/barber/HEAD/sample/src/main/res/xml/test_prefs.xml -------------------------------------------------------------------------------- /sample/src/test/java/io/sweers/barber/sample/BarberTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZacSweers/barber/HEAD/sample/src/test/java/io/sweers/barber/sample/BarberTest.java -------------------------------------------------------------------------------- /sample/src/test/java/io/sweers/barber/sample/PreferenceTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZacSweers/barber/HEAD/sample/src/test/java/io/sweers/barber/sample/PreferenceTest.java -------------------------------------------------------------------------------- /settings.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZacSweers/barber/HEAD/settings.gradle -------------------------------------------------------------------------------- /version.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZacSweers/barber/HEAD/version.properties --------------------------------------------------------------------------------