|
|
@ -4,6 +4,8 @@ import android.app.PendingIntent.CanceledException;
|
|
|
|
import android.content.Intent;
|
|
|
|
import android.content.Intent;
|
|
|
|
import android.os.Bundle;
|
|
|
|
import android.os.Bundle;
|
|
|
|
import android.support.v4.app.FragmentActivity;
|
|
|
|
import android.support.v4.app.FragmentActivity;
|
|
|
|
|
|
|
|
import android.support.v4.app.FragmentManager;
|
|
|
|
|
|
|
|
import android.support.v4.app.FragmentTransaction;
|
|
|
|
|
|
|
|
|
|
|
|
import com.timsu.astrid.R;
|
|
|
|
import com.timsu.astrid.R;
|
|
|
|
import com.todoroo.andlib.utility.AndroidUtilities;
|
|
|
|
import com.todoroo.andlib.utility.AndroidUtilities;
|
|
|
@ -40,8 +42,6 @@ public class AstridWrapperActivity extends FragmentActivity
|
|
|
|
protected FilterListActivity getFilterListFragment() {
|
|
|
|
protected FilterListActivity getFilterListFragment() {
|
|
|
|
FilterListActivity frag = (FilterListActivity) getSupportFragmentManager()
|
|
|
|
FilterListActivity frag = (FilterListActivity) getSupportFragmentManager()
|
|
|
|
.findFragmentById(R.id.filterlist_fragment);
|
|
|
|
.findFragmentById(R.id.filterlist_fragment);
|
|
|
|
if (frag == null || !frag.isInLayout())
|
|
|
|
|
|
|
|
return null;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
return frag;
|
|
|
|
return frag;
|
|
|
|
}
|
|
|
|
}
|
|
|
@ -49,8 +49,6 @@ public class AstridWrapperActivity extends FragmentActivity
|
|
|
|
protected TaskListActivity getTaskListFragment() {
|
|
|
|
protected TaskListActivity getTaskListFragment() {
|
|
|
|
TaskListActivity frag = (TaskListActivity) getSupportFragmentManager()
|
|
|
|
TaskListActivity frag = (TaskListActivity) getSupportFragmentManager()
|
|
|
|
.findFragmentByTag(TaskListActivity.TAG_TASKLIST_FRAGMENT);
|
|
|
|
.findFragmentByTag(TaskListActivity.TAG_TASKLIST_FRAGMENT);
|
|
|
|
if (frag == null || !frag.isInLayout())
|
|
|
|
|
|
|
|
return null;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
return frag;
|
|
|
|
return frag;
|
|
|
|
}
|
|
|
|
}
|
|
|
@ -108,20 +106,19 @@ public class AstridWrapperActivity extends FragmentActivity
|
|
|
|
return false;
|
|
|
|
return false;
|
|
|
|
} else {
|
|
|
|
} else {
|
|
|
|
// If showing both fragments, directly update the tasklist-fragment
|
|
|
|
// If showing both fragments, directly update the tasklist-fragment
|
|
|
|
TaskListActivity tasklist = (TaskListActivity) getSupportFragmentManager()
|
|
|
|
Intent intent = getIntent();
|
|
|
|
.findFragmentByTag(TaskListActivity.TAG_TASKLIST_FRAGMENT);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if(item instanceof Filter) {
|
|
|
|
if(item instanceof Filter) {
|
|
|
|
Filter filter = (Filter)item;
|
|
|
|
Filter filter = (Filter)item;
|
|
|
|
if(filter instanceof FilterWithCustomIntent) {
|
|
|
|
if(filter instanceof FilterWithCustomIntent) {
|
|
|
|
FilterWithCustomIntent customFilter = ((FilterWithCustomIntent)filter);
|
|
|
|
intent = ((FilterWithCustomIntent)filter).getCustomIntent();
|
|
|
|
tasklist.onNewIntent(customFilter.getCustomIntent());
|
|
|
|
|
|
|
|
} else {
|
|
|
|
} else {
|
|
|
|
Intent intent = new Intent(this, TaskListWrapperActivity.class);
|
|
|
|
|
|
|
|
intent.putExtra(TaskListActivity.TOKEN_FILTER, filter);
|
|
|
|
intent.putExtra(TaskListActivity.TOKEN_FILTER, filter);
|
|
|
|
|
|
|
|
|
|
|
|
tasklist.onNewIntent(intent);
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
setIntent(intent);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
setupTasklistFragmentWithFilter(filter);
|
|
|
|
// no animation for dualpane-layout
|
|
|
|
// no animation for dualpane-layout
|
|
|
|
AndroidUtilities.callOverridePendingTransition(this, 0, 0);
|
|
|
|
AndroidUtilities.callOverridePendingTransition(this, 0, 0);
|
|
|
|
StatisticsService.reportEvent(StatisticsConstants.FILTER_LIST);
|
|
|
|
StatisticsService.reportEvent(StatisticsConstants.FILTER_LIST);
|
|
|
@ -137,6 +134,27 @@ public class AstridWrapperActivity extends FragmentActivity
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
protected void setupTasklistFragmentWithFilter(Filter filter) {
|
|
|
|
|
|
|
|
Class<?> component = TaskListActivity.class;
|
|
|
|
|
|
|
|
if (filter instanceof FilterWithCustomIntent) {
|
|
|
|
|
|
|
|
try {
|
|
|
|
|
|
|
|
component = Class.forName(((FilterWithCustomIntent) filter).customTaskList.getClassName());
|
|
|
|
|
|
|
|
} catch (Exception e) {
|
|
|
|
|
|
|
|
// Invalid
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
FragmentManager manager = getSupportFragmentManager();
|
|
|
|
|
|
|
|
FragmentTransaction transaction = manager.beginTransaction();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
try {
|
|
|
|
|
|
|
|
TaskListActivity newFragment = (TaskListActivity) component.newInstance();
|
|
|
|
|
|
|
|
transaction.replace(R.id.tasklist_fragment_container, newFragment, TaskListActivity.TAG_TASKLIST_FRAGMENT);
|
|
|
|
|
|
|
|
transaction.commit();
|
|
|
|
|
|
|
|
} catch (Exception e) {
|
|
|
|
|
|
|
|
e.printStackTrace(); //Uh ohs
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
@Override
|
|
|
|
public void onTaskListItemClicked(int category, int position) {
|
|
|
|
public void onTaskListItemClicked(int category, int position) {
|
|
|
|
}
|
|
|
|
}
|
|
|
|