Skip to content
This repository has been archived by the owner on Apr 30, 2024. It is now read-only.

Allow same screen to be opened more than once #89

10 changes: 6 additions & 4 deletions build.gradle
Original file line number Diff line number Diff line change
@@ -1,10 +1,9 @@
buildscript {
repositories {
mavenCentral()
google()
}
dependencies {
classpath 'com.android.tools.build:gradle:1.3.0'
classpath 'com.neenbedankt.gradle.plugins:android-apt:1.4'
classpath 'com.android.tools.build:gradle:3.0.1'
}
}

Expand All @@ -17,7 +16,7 @@ ext {
}

task wrapper(type: Wrapper) {
gradleVersion = '2.3'
gradleVersion = '4.3'
}

subprojects {
Expand All @@ -36,4 +35,7 @@ subprojects {
version = VERSION_NAME

apply plugin: 'maven'
}
repositories {
google()
}
2 changes: 1 addition & 1 deletion gradle.properties
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
GROUP=com.lyft
VERSION_NAME=0.5.0-SNAPSHOT
VERSION_NAME=0.5.1

POM_DESCRIPTION=Micro framework for building View based modular Android applications

Expand Down
4 changes: 2 additions & 2 deletions gradle/wrapper/gradle-wrapper.properties
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#Wed Apr 10 15:27:10 PDT 2013
#Wed Jan 31 13:13:07 EET 2018
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-2.5-all.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-4.1-all.zip
6 changes: 3 additions & 3 deletions scoop-basics/build.gradle
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
apply plugin: 'com.android.application'
apply plugin: 'android-apt'

android {
lintOptions {
Expand Down Expand Up @@ -36,6 +35,7 @@ android {
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
buildToolsVersion '26.0.2'
}

dependencies {
Expand All @@ -49,12 +49,12 @@ dependencies {
compile 'com.android.support:multidex:1.0.0'

compile 'com.jakewharton:butterknife:8.2.1'
apt 'com.jakewharton:butterknife-compiler:8.2.1'
annotationProcessor 'com.jakewharton:butterknife-compiler:8.2.1'

compile 'com.jakewharton.timber:timber:3.1.0'
compile 'com.jakewharton.rxrelay:rxrelay:1.0.0'
compile 'com.google.android.gms:play-services-location:8.1.0'
compile project(':scoop')
compile project(':scoop-dagger')
apt 'com.squareup.dagger:dagger-compiler:1.2.2'
annotationProcessor 'com.squareup.dagger:dagger-compiler:1.2.2'
}
3 changes: 2 additions & 1 deletion scoop-dagger/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -24,13 +24,14 @@ android {
dexOptions {
preDexLibraries = !rootProject.ext.ci
}
buildToolsVersion '26.0.2'
}

dependencies {
testCompile 'junit:junit:4.12'
testCompile 'org.mockito:mockito-all:2.0.2-beta'
compile 'com.squareup.dagger:dagger:1.2.2'
provided 'com.squareup.dagger:dagger-compiler:1.2.2'
annotationProcessor 'com.squareup.dagger:dagger-compiler:1.2.2'
compile project(':scoop')
}

Expand Down
1 change: 1 addition & 0 deletions scoop/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@ android {
dexOptions {
preDexLibraries = !rootProject.ext.ci
}
buildToolsVersion '26.0.2'
}

dependencies {
Expand Down
4 changes: 2 additions & 2 deletions scoop/src/main/java/com/lyft/scoop/Router.java
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ public void goTo(Screen nextScreen) {

List<Screen> fromPath = backStack.asList();

if (Screen.equals(backStack.peek(), nextScreen)) {
if (backStack.peek() == nextScreen) {
return;
}

Expand All @@ -57,7 +57,7 @@ public void replaceWith(Screen nextScreen) {

Screen previousScreen = backStack.peek();

if (Screen.equals(previousScreen, nextScreen)) {
if (previousScreen == nextScreen) {
return;
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,19 +8,26 @@

public abstract class ObjectAnimatorTransition implements ScreenTransition {



@Override
public void transition(final ViewGroup root, final View from, final View to, final TransitionListener transitionListener) {
if (to == null) {
performTranslate(root, from, to, transitionListener);
} else {
root.addView(to);
waitForMeasure(to, new OnMeasuredCallback() {
@Override
public void onMeasured(View view, int width, int height) {
performTranslate(root, from, to, transitionListener);
}
});
if (from == null) {
transitionListener.onTransitionCompleted();
} else {
waitForMeasure(to, new OnMeasuredCallback() {
@Override
public void onMeasured(View view, int width, int height) {
performTranslate(root, from, to, transitionListener);
}
});
}
}

}

protected abstract void performTranslate(ViewGroup root, View from, View to, TransitionListener transitionListener);
Expand Down