Skip to content

Commit da8be5b

Browse files
committed
Refactor Tasks Activity/Fragment to Controller.
1 parent 183ed89 commit da8be5b

File tree

9 files changed

+325
-240
lines changed

9 files changed

+325
-240
lines changed

todoapp/app/src/main/AndroidManifest.xml

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@
2626
android:supportsRtl="true"
2727
android:theme="@style/AppTheme">
2828
<activity
29-
android:name="com.example.android.architecture.blueprints.todoapp.tasks.TasksActivity"
29+
android:name="com.example.android.architecture.blueprints.todoapp.MainActivity"
3030
android:theme="@style/AppTheme.OverlapSystemBar">
3131
<intent-filter>
3232
<action android:name="android.intent.action.MAIN" />
@@ -35,7 +35,6 @@
3535
</activity>
3636
<activity android:name="com.example.android.architecture.blueprints.todoapp.taskdetail.TaskDetailActivity" />
3737
<activity android:name="com.example.android.architecture.blueprints.todoapp.addedittask.AddEditTaskActivity" />
38-
<activity android:name=".MainActivity" />
3938
</application>
4039

4140
</manifest>

todoapp/app/src/main/java/com/example/android/architecture/blueprints/todoapp/BaseController.java

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
package com.example.android.architecture.blueprints.todoapp;
22

3+
import android.os.Bundle;
34
import android.support.annotation.NonNull;
45
import android.support.v4.widget.DrawerLayout;
56
import android.support.v7.app.ActionBar;
@@ -10,6 +11,12 @@
1011
public abstract class BaseController extends Controller {
1112
private boolean mActive = false;
1213

14+
public BaseController() {
15+
}
16+
17+
public BaseController(Bundle args) {
18+
}
19+
1320
protected ActionBar getActionBar() {
1421
ActionBarProvider actionBarProvider = ((ActionBarProvider)getActivity());
1522
return actionBarProvider != null ? actionBarProvider.getSupportActionBar() : null;

todoapp/app/src/main/java/com/example/android/architecture/blueprints/todoapp/MainActivity.java

Lines changed: 12 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -16,9 +16,10 @@
1616

1717
package com.example.android.architecture.blueprints.todoapp;
1818

19-
import android.content.Intent;
2019
import android.os.Bundle;
20+
import android.support.annotation.VisibleForTesting;
2121
import android.support.design.widget.NavigationView;
22+
import android.support.test.espresso.IdlingResource;
2223
import android.support.v4.view.GravityCompat;
2324
import android.support.v4.widget.DrawerLayout;
2425
import android.support.v7.app.AppCompatActivity;
@@ -30,7 +31,8 @@
3031
import com.bluelinelabs.conductor.Router;
3132
import com.bluelinelabs.conductor.RouterTransaction;
3233
import com.example.android.architecture.blueprints.todoapp.statistics.StatisticsController;
33-
import com.example.android.architecture.blueprints.todoapp.tasks.TasksActivity;
34+
import com.example.android.architecture.blueprints.todoapp.tasks.TasksFragment;
35+
import com.example.android.architecture.blueprints.todoapp.util.EspressoIdlingResource;
3436

3537
/**
3638
* The activity for the app.
@@ -65,7 +67,7 @@ protected void onCreate(Bundle savedInstanceState) {
6567

6668
router = Conductor.attachRouter(this, mContainer, savedInstanceState);
6769
if (!router.hasRootController()) {
68-
router.setRoot(RouterTransaction.with(new StatisticsController()));
70+
router.setRoot(RouterTransaction.with(new TasksFragment()));
6971
}
7072
}
7173

@@ -94,14 +96,10 @@ private void setupDrawerContent(NavigationView navigationView) {
9496
public boolean onNavigationItemSelected(MenuItem menuItem) {
9597
switch (menuItem.getItemId()) {
9698
case R.id.list_navigation_menu_item:
97-
Intent intent =
98-
new Intent(MainActivity.this, TasksActivity.class);
99-
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK
100-
| Intent.FLAG_ACTIVITY_CLEAR_TASK);
101-
startActivity(intent);
99+
router.setRoot(RouterTransaction.with(new TasksFragment()));
102100
break;
103101
case R.id.statistics_navigation_menu_item:
104-
// Do nothing, we're already on that screen
102+
router.setRoot(RouterTransaction.with(new StatisticsController()));
105103
break;
106104
default:
107105
break;
@@ -118,4 +116,9 @@ public boolean onNavigationItemSelected(MenuItem menuItem) {
118116
public DrawerLayout getDrawerLayout() {
119117
return mDrawerLayout;
120118
}
119+
120+
@VisibleForTesting
121+
public IdlingResource getCountingIdlingResource() {
122+
return EspressoIdlingResource.getIdlingResource();
123+
}
121124
}

todoapp/app/src/main/java/com/example/android/architecture/blueprints/todoapp/tasks/TasksActivity.java

Lines changed: 0 additions & 135 deletions
This file was deleted.

0 commit comments

Comments
 (0)