resized icons and corrected code

pull/234/head
Janet Do 9 years ago
parent e9def2944f
commit 8052bbdd88

@ -97,15 +97,10 @@ public class ListHabitsController
this.exportCSVFactory = exportCSVFactory;
}
public void onExportCSV(List<Habit> selectedHabits)
public void onExportCSV()
{
List<Habit> selected = new ArrayList<>();
if(selectedHabits.isEmpty()) {
List<Habit> selected = new LinkedList<>();
for (Habit h : habitList) selected.add(h);
}
else {
selected = selectedHabits;
}
ExportCSVTask task = exportCSVFactory.create(selected, filename -> {
if (filename != null){

@ -36,7 +36,6 @@ import org.isoron.uhabits.models.*;
import org.isoron.uhabits.utils.*;
import java.io.*;
import java.util.LinkedList;
import javax.inject.*;
@ -155,7 +154,7 @@ public class ListHabitsScreen extends BaseScreen
break;
case RESULT_EXPORT_CSV:
controller.onExportCSV(new LinkedList<Habit>());
controller.onExportCSV();
break;
case RESULT_EXPORT_DB:

@ -26,9 +26,7 @@ import android.support.annotation.*;
import org.isoron.uhabits.*;
import org.isoron.uhabits.activities.*;
import org.isoron.uhabits.activities.habits.list.DaggerListHabitsComponent;
import org.isoron.uhabits.activities.habits.list.ListHabitsComponent;
import org.isoron.uhabits.activities.habits.list.ListHabitsController;
import org.isoron.uhabits.models.*;
/**
@ -45,19 +43,10 @@ public class ShowHabitActivity extends BaseActivity
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
HabitsApplication app = (HabitsApplication) getApplicationContext();
habits = app.getComponent().getHabitList();
Habit habit = getHabitFromIntent();
listHabitComponent = DaggerListHabitsComponent
.builder()
.appComponent(app.getComponent())
.activityModule(new ActivityModule(this))
.build();
ListHabitsController listHabitController = listHabitComponent.getController();
ShowHabitComponent component = DaggerShowHabitComponent
.builder()
.appComponent(app.getComponent())
@ -67,7 +56,6 @@ public class ShowHabitActivity extends BaseActivity
ShowHabitRootView rootView = component.getRootView();
ShowHabitScreen screen = component.getScreen();
screen.setHabitsController(listHabitController);
setScreen(screen);
screen.setMenu(component.getMenu());
screen.setController(component.getController());

@ -24,11 +24,8 @@ import android.support.annotation.*;
import org.isoron.uhabits.activities.*;
import org.isoron.uhabits.activities.common.dialogs.*;
import org.isoron.uhabits.activities.habits.edit.*;
import org.isoron.uhabits.activities.habits.list.ListHabitsController;
import org.isoron.uhabits.models.*;
import java.util.ArrayList;
import javax.inject.*;
@ActivityScope
@ -40,9 +37,6 @@ public class ShowHabitScreen extends BaseScreen
@Nullable
private ShowHabitController controller;
@NonNull
private ListHabitsController habitController;
@NonNull
private final EditHabitDialogFactory editHabitDialogFactory;
@ -75,22 +69,12 @@ public class ShowHabitScreen extends BaseScreen
historyEditor.setController(controller);
}
public void setHabitsController(@Nullable ListHabitsController controller){
this.habitController = controller;
}
public void showEditHabitDialog()
{
EditHabitDialog dialog = editHabitDialogFactory.create(habit);
activity.showDialog(dialog, "editHabit");
}
public void downloadHabit(){
ArrayList<Habit> selected = new ArrayList<Habit>();
selected.add(habit);
habitController.onExportCSV(selected);
}
public void showEditHistoryDialog()
{
if(controller == null) throw new IllegalStateException();

@ -24,34 +24,52 @@ import android.view.*;
import org.isoron.uhabits.*;
import org.isoron.uhabits.activities.*;
import org.isoron.uhabits.models.Habit;
import org.isoron.uhabits.tasks.ExportCSVTask;
import org.isoron.uhabits.tasks.ExportCSVTaskFactory;
import org.isoron.uhabits.tasks.TaskRunner;
import java.util.LinkedList;
import java.util.List;
import javax.inject.*;
@ActivityScope
public class ShowHabitsMenu extends BaseMenu
{
public class ShowHabitsMenu extends BaseMenu {
@NonNull
private final ShowHabitScreen screen;
@NonNull
private final Habit habit;
@NonNull
private final TaskRunner taskRunner;
@NonNull
private ExportCSVTaskFactory exportCSVFactory;
@Inject
public ShowHabitsMenu(@NonNull BaseActivity activity,
@NonNull ShowHabitScreen screen)
{
@NonNull ShowHabitScreen screen,
@NonNull Habit habit,
@NonNull ExportCSVTaskFactory exportCSVFactory,
@NonNull TaskRunner taskRunner) {
super(activity);
this.screen = screen;
this.habit = habit;
this.taskRunner = taskRunner;
this.exportCSVFactory = exportCSVFactory;
}
@Override
public boolean onItemSelected(@NonNull MenuItem item)
{
switch (item.getItemId())
{
public boolean onItemSelected(@NonNull MenuItem item) {
switch (item.getItemId()) {
case R.id.action_edit_habit:
screen.showEditHabitDialog();
return true;
case R.id.download:
screen.downloadHabit();
this.downloadHabit();
return true;
default:
@ -59,9 +77,21 @@ public class ShowHabitsMenu extends BaseMenu
}
}
public void downloadHabit() {
List<Habit> selected = new LinkedList<>();
selected.add(habit);
ExportCSVTask task = exportCSVFactory.create(selected, filename -> {
if (filename != null) {
screen.showSendFileScreen(filename);
} else {
screen.showMessage(R.string.could_not_export);
}
});
taskRunner.execute(task);
}
@Override
protected int getMenuResourceId()
{
protected int getMenuResourceId() {
return R.menu.show_habit;
}
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 250 B

After

Width:  |  Height:  |  Size: 249 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 256 B

After

Width:  |  Height:  |  Size: 280 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 175 B

After

Width:  |  Height:  |  Size: 198 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 185 B

After

Width:  |  Height:  |  Size: 236 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 251 B

After

Width:  |  Height:  |  Size: 279 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 260 B

After

Width:  |  Height:  |  Size: 319 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 371 B

After

Width:  |  Height:  |  Size: 366 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 409 B

After

Width:  |  Height:  |  Size: 397 B

@ -37,7 +37,6 @@ import org.junit.runner.*;
import org.junit.runners.*;
import java.io.*;
import java.util.ArrayList;
import static org.isoron.uhabits.activities.habits.list.ListHabitsScreen.*;
import static org.mockito.Matchers.any;
@ -134,7 +133,7 @@ public class ListHabitsScreenTest extends BaseUnitTest
public void testOnResult_exportCSV()
{
screen.onResult(REQUEST_SETTINGS, RESULT_EXPORT_CSV, null);
verify(controller).onExportCSV(new ArrayList<Habit>() );
verify(controller).onExportCSV();
}
@Test

@ -19,63 +19,65 @@
package org.isoron.uhabits.activities.habits.list;
import android.view.Menu;
import android.view.MenuItem;
import org.isoron.uhabits.BaseUnitTest;
import org.isoron.uhabits.R;
import org.isoron.uhabits.activities.BaseActivity;
import org.isoron.uhabits.activities.ThemeSwitcher;
import org.isoron.uhabits.activities.habits.list.model.HabitCardListAdapter;
import org.isoron.uhabits.activities.habits.show.ShowHabitActivity;
import org.isoron.uhabits.activities.habits.show.ShowHabitScreen;
import org.isoron.uhabits.activities.habits.show.ShowHabitsMenu;
import org.isoron.uhabits.models.HabitMatcher;
import org.isoron.uhabits.preferences.Preferences;
import org.isoron.uhabits.models.Habit;
import org.isoron.uhabits.tasks.ExportCSVTask;
import org.isoron.uhabits.tasks.ExportCSVTaskFactory;
import org.isoron.uhabits.tasks.TaskRunner;
import org.junit.Test;
import org.mockito.ArgumentCaptor;
import org.mockito.Mockito;
import static junit.framework.Assert.assertFalse;
import static junit.framework.Assert.assertTrue;
import static org.mockito.Matchers.any;
import static org.mockito.Matchers.isA;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.reset;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
public class ShowHabitsMenuTest extends BaseUnitTest
{
public class ShowHabitsMenuTest extends BaseUnitTest {
private ShowHabitActivity activity;
private ShowHabitScreen screen;
private ShowHabitsMenu menu;
private Habit habit;
private ExportCSVTaskFactory exportCSVFactory;
private TaskRunner taskRunner;
private ExportCSVTask task;
@Override
public void setUp()
{
public void setUp() {
super.setUp();
activity = mock(ShowHabitActivity.class);
screen = mock(ShowHabitScreen.class);
menu = new ShowHabitsMenu(activity, screen);
habit = mock(Habit.class);
exportCSVFactory = mock(ExportCSVTaskFactory.class);
taskRunner = mock(TaskRunner.class);
menu = new ShowHabitsMenu(activity, screen, habit, exportCSVFactory, taskRunner);
}
@Test
public void testOnEdit_habit()
{
public void testOnEditHabit() {
onItemSelected(R.id.action_edit_habit);
verify(screen).showEditHabitDialog();
}
@Test
public void testOnDownload()
{
public void testOnDownloadHabit() {
onItemSelected(R.id.download);
verify(screen).downloadHabit();
verify(taskRunner).execute(any());
}
protected void onItemSelected(int actionId)
{
protected void onItemSelected(int actionId) {
MenuItem item = mock(MenuItem.class);
when(item.getItemId()).thenReturn(actionId);
menu.onItemSelected(item);

Loading…
Cancel
Save