onModelVisibilityChangedListener_epoxyGeneratedModel;
+
+ public AbstractEpoxyModelWithView_() {
+ super();
+ }
+
+ @Override
+ public void addTo(EpoxyController controller) {
+ super.addTo(controller);
+ addWithDebugValidation(controller);
+ }
+
+ @Override
+ public void handlePreBind(final EpoxyViewHolder holder, final View object, final int position) {
+ validateStateHasNotChangedSinceAdded("The model was changed between being added to the controller and being bound.", position);
+ }
+
+ @Override
+ public void handlePostBind(final View object, int position) {
+ if (onModelBoundListener_epoxyGeneratedModel != null) {
+ onModelBoundListener_epoxyGeneratedModel.onModelBound(this, object, position);
+ }
+ validateStateHasNotChangedSinceAdded("The model was changed during the bind call.", position);
+ }
+
+ /**
+ * Register a listener that will be called when this model is bound to a view.
+ *
+ * The listener will contribute to this model's hashCode state per the {@link
+ * com.airbnb.epoxy.EpoxyAttribute.Option#DoNotHash} rules.
+ *
+ * You may clear the listener by setting a null value, or by calling {@link #reset()} */
+ public AbstractEpoxyModelWithView_ onBind(
+ OnModelBoundListener listener) {
+ onMutation();
+ this.onModelBoundListener_epoxyGeneratedModel = listener;
+ return this;
+ }
+
+ @Override
+ public void unbind(View object) {
+ super.unbind(object);
+ if (onModelUnboundListener_epoxyGeneratedModel != null) {
+ onModelUnboundListener_epoxyGeneratedModel.onModelUnbound(this, object);
+ }
+ }
+
+ /**
+ * Register a listener that will be called when this model is unbound from a view.
+ *
+ * The listener will contribute to this model's hashCode state per the {@link
+ * com.airbnb.epoxy.EpoxyAttribute.Option#DoNotHash} rules.
+ *
+ * You may clear the listener by setting a null value, or by calling {@link #reset()} */
+ public AbstractEpoxyModelWithView_ onUnbind(
+ OnModelUnboundListener listener) {
+ onMutation();
+ this.onModelUnboundListener_epoxyGeneratedModel = listener;
+ return this;
+ }
+
+ @Override
+ public void onVisibilityStateChanged(int visibilityState, final View object) {
+ if (onModelVisibilityStateChangedListener_epoxyGeneratedModel != null) {
+ onModelVisibilityStateChangedListener_epoxyGeneratedModel.onVisibilityStateChanged(this, object, visibilityState);
+ }
+ super.onVisibilityStateChanged(visibilityState, object);
+ }
+
+ /**
+ * Register a listener that will be called when this model visibility state has changed.
+ *
+ * The listener will contribute to this model's hashCode state per the {@link
+ * com.airbnb.epoxy.EpoxyAttribute.Option#DoNotHash} rules.
+ */
+ public AbstractEpoxyModelWithView_ onVisibilityStateChanged(
+ OnModelVisibilityStateChangedListener listener) {
+ onMutation();
+ this.onModelVisibilityStateChangedListener_epoxyGeneratedModel = listener;
+ return this;
+ }
+
+ @Override
+ public void onVisibilityChanged(float percentVisibleHeight, float percentVisibleWidth,
+ int visibleHeight, int visibleWidth, final View object) {
+ if (onModelVisibilityChangedListener_epoxyGeneratedModel != null) {
+ onModelVisibilityChangedListener_epoxyGeneratedModel.onVisibilityChanged(this, object, percentVisibleHeight, percentVisibleWidth, visibleHeight, visibleWidth);
+ }
+ super.onVisibilityChanged(percentVisibleHeight, percentVisibleWidth, visibleHeight, visibleWidth, object);
+ }
+
+ /**
+ * Register a listener that will be called when this model visibility has changed.
+ *
+ * The listener will contribute to this model's hashCode state per the {@link
+ * com.airbnb.epoxy.EpoxyAttribute.Option#DoNotHash} rules.
+ */
+ public AbstractEpoxyModelWithView_ onVisibilityChanged(
+ OnModelVisibilityChangedListener listener) {
+ onMutation();
+ this.onModelVisibilityChangedListener_epoxyGeneratedModel = listener;
+ return this;
+ }
+
+ @Override
+ public AbstractEpoxyModelWithView_ layout(@LayoutRes int arg0) {
+ super.layout(arg0);
+ return this;
+ }
+
+ @Override
+ public AbstractEpoxyModelWithView_ id(long id) {
+ super.id(id);
+ return this;
+ }
+
+ @Override
+ public AbstractEpoxyModelWithView_ id(@Nullable Number... arg0) {
+ super.id(arg0);
+ return this;
+ }
+
+ @Override
+ public AbstractEpoxyModelWithView_ id(long id1, long id2) {
+ super.id(id1, id2);
+ return this;
+ }
+
+ @Override
+ public AbstractEpoxyModelWithView_ id(@Nullable CharSequence arg0) {
+ super.id(arg0);
+ return this;
+ }
+
+ @Override
+ public AbstractEpoxyModelWithView_ id(@Nullable CharSequence arg0,
+ @Nullable CharSequence... arg1) {
+ super.id(arg0, arg1);
+ return this;
+ }
+
+ @Override
+ public AbstractEpoxyModelWithView_ id(@Nullable CharSequence arg0, long arg1) {
+ super.id(arg0, arg1);
+ return this;
+ }
+
+ @Override
+ public AbstractEpoxyModelWithView_ spanSizeOverride(
+ @Nullable EpoxyModel.SpanSizeOverrideCallback arg0) {
+ super.spanSizeOverride(arg0);
+ return this;
+ }
+
+ @Override
+ public AbstractEpoxyModelWithView_ show() {
+ super.show();
+ return this;
+ }
+
+ @Override
+ public AbstractEpoxyModelWithView_ show(boolean show) {
+ super.show(show);
+ return this;
+ }
+
+ @Override
+ public AbstractEpoxyModelWithView_ hide() {
+ super.hide();
+ return this;
+ }
+
+ @Override
+ public AbstractEpoxyModelWithView_ reset() {
+ onModelBoundListener_epoxyGeneratedModel = null;
+ onModelUnboundListener_epoxyGeneratedModel = null;
+ onModelVisibilityStateChangedListener_epoxyGeneratedModel = null;
+ onModelVisibilityChangedListener_epoxyGeneratedModel = null;
+ super.reset();
+ return this;
+ }
+
+ @Override
+ public boolean equals(Object o) {
+ if (o == this) {
+ return true;
+ }
+ if (!(o instanceof AbstractEpoxyModelWithView_)) {
+ return false;
+ }
+ if (!super.equals(o)) {
+ return false;
+ }
+ AbstractEpoxyModelWithView_ that = (AbstractEpoxyModelWithView_) o;
+ if (((onModelBoundListener_epoxyGeneratedModel == null) != (that.onModelBoundListener_epoxyGeneratedModel == null))) {
+ return false;
+ }
+ if (((onModelUnboundListener_epoxyGeneratedModel == null) != (that.onModelUnboundListener_epoxyGeneratedModel == null))) {
+ return false;
+ }
+ if (((onModelVisibilityStateChangedListener_epoxyGeneratedModel == null) != (that.onModelVisibilityStateChangedListener_epoxyGeneratedModel == null))) {
+ return false;
+ }
+ if (((onModelVisibilityChangedListener_epoxyGeneratedModel == null) != (that.onModelVisibilityChangedListener_epoxyGeneratedModel == null))) {
+ return false;
+ }
+ return true;
+ }
+
+ @Override
+ public int hashCode() {
+ int _result = super.hashCode();
+ _result = 31 * _result + (onModelBoundListener_epoxyGeneratedModel != null ? 1 : 0);
+ _result = 31 * _result + (onModelUnboundListener_epoxyGeneratedModel != null ? 1 : 0);
+ _result = 31 * _result + (onModelVisibilityStateChangedListener_epoxyGeneratedModel != null ? 1 : 0);
+ _result = 31 * _result + (onModelVisibilityChangedListener_epoxyGeneratedModel != null ? 1 : 0);
+ return _result;
+ }
+
+ @Override
+ public String toString() {
+ return "AbstractEpoxyModelWithView_{" +
+ "}" + super.toString();
+ }
+}
\ No newline at end of file
diff --git a/epoxy-sample/build.gradle b/epoxy-sample/build.gradle
index bd5b76e462..265d1cdfb5 100644
--- a/epoxy-sample/build.gradle
+++ b/epoxy-sample/build.gradle
@@ -36,7 +36,7 @@ project.android.buildTypes.all { buildType ->
requireHashCodeInEpoxyModels: "true",
requireAbstractEpoxyModels : "true",
implicitlyAddAutoModels : "true",
- logEpoxyTimings : "true",
+ logEpoxyTimings : "false",
enableParallelEpoxyProcessing : "true",
]
}
diff --git a/gradle.properties b/gradle.properties
index 971a49384f..365f9ef150 100644
--- a/gradle.properties
+++ b/gradle.properties
@@ -1,4 +1,4 @@
-VERSION_NAME=4.0.0-beta3
+VERSION_NAME=4.0.0-beta4
GROUP=com.airbnb.android
POM_DESCRIPTION=Epoxy is a system for composing complex screens with a ReyclerView in Android.
POM_URL=https://github.com/airbnb/epoxy
diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties
index 0ebb3108e2..21e622da69 100644
--- a/gradle/wrapper/gradle-wrapper.properties
+++ b/gradle/wrapper/gradle-wrapper.properties
@@ -1,5 +1,5 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.4-all.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-6.4.1-all.zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists