Gesture detector, fixed crash with Locale edit alerts

pull/14/head
Tim Su 14 years ago
parent 98273affd6
commit 77bf55d6ad

@ -110,7 +110,9 @@ public class DateUtilities {
} }
/** /**
* @return string used for time formatting * @param context android context
* @param date time to format
* @return time, with hours and minutes
*/ */
@SuppressWarnings("nls") @SuppressWarnings("nls")
public static String getTimeString(Context context, Date date) { public static String getTimeString(Context context, Date date) {
@ -125,7 +127,8 @@ public class DateUtilities {
/** /**
* @param context android context * @param context android context
* @return string used for date formatting * @param date date to format
* @return date, with month, day, and year
*/ */
@SuppressWarnings("nls") @SuppressWarnings("nls")
public static String getDateString(Context context, Date date) { public static String getDateString(Context context, Date date) {

@ -16,6 +16,7 @@ import android.widget.Spinner;
import com.flurry.android.FlurryAgent; import com.flurry.android.FlurryAgent;
import com.timsu.astrid.R; import com.timsu.astrid.R;
import com.todoroo.andlib.service.ContextManager;
import com.todoroo.astrid.activity.AddOnActivity; import com.todoroo.astrid.activity.AddOnActivity;
import com.todoroo.astrid.adapter.FilterAdapter; import com.todoroo.astrid.adapter.FilterAdapter;
import com.todoroo.astrid.api.Filter; import com.todoroo.astrid.api.Filter;
@ -96,6 +97,8 @@ public final class LocaleEditAlerts extends ExpandableListActivity {
super.onCreate(savedInstanceState); super.onCreate(savedInstanceState);
setContentView(R.layout.locale_edit_alerts); setContentView(R.layout.locale_edit_alerts);
ContextManager.setContext(this);
/* /*
* Locale guarantees that the breadcrumb string will be present, but checking for null anyway makes your Activity more * Locale guarantees that the breadcrumb string will be present, but checking for null anyway makes your Activity more
* robust and re-usable * robust and re-usable

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.1 KiB

After

Width:  |  Height:  |  Size: 3.1 KiB

@ -36,11 +36,15 @@
</LinearLayout> </LinearLayout>
<!-- Body -->
<FrameLayout <android.gesture.GestureOverlayView android:id="@+id/gestures"
android:layout_width="fill_parent" android:layout_width="fill_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_weight="100"> android:layout_weight="100"
android:gestureStrokeType="multiple"
android:eventsInterceptionEnabled="true"
android:orientation="vertical">
<!-- No Tasks label --> <!-- No Tasks label -->
<TextView android:id="@android:id/empty" <TextView android:id="@android:id/empty"
@ -57,7 +61,7 @@
android:layout_width="fill_parent" android:layout_width="fill_parent"
android:layout_height="fill_parent"/> android:layout_height="fill_parent"/>
</FrameLayout> </android.gesture.GestureOverlayView>
<!-- Footer --> <!-- Footer -->
<LinearLayout <LinearLayout
@ -96,5 +100,4 @@
</LinearLayout> </LinearLayout>
</LinearLayout> </LinearLayout>

Binary file not shown.

@ -1,5 +1,6 @@
package com.todoroo.astrid.activity; package com.todoroo.astrid.activity;
import java.util.ArrayList;
import java.util.Date; import java.util.Date;
import java.util.List; import java.util.List;
import java.util.Map.Entry; import java.util.Map.Entry;
@ -15,31 +16,37 @@ import android.content.IntentFilter;
import android.content.pm.PackageManager; import android.content.pm.PackageManager;
import android.content.pm.ResolveInfo; import android.content.pm.ResolveInfo;
import android.database.Cursor; import android.database.Cursor;
import android.gesture.Gesture;
import android.gesture.GestureLibraries;
import android.gesture.GestureLibrary;
import android.gesture.GestureOverlayView;
import android.gesture.GestureOverlayView.OnGesturePerformedListener;
import android.gesture.Prediction;
import android.net.Uri; import android.net.Uri;
import android.os.Bundle; import android.os.Bundle;
import android.text.Editable; import android.text.Editable;
import android.text.TextUtils; import android.text.TextUtils;
import android.text.TextWatcher; import android.text.TextWatcher;
import android.view.ContextMenu; import android.view.ContextMenu;
import android.view.ContextMenu.ContextMenuInfo;
import android.view.KeyEvent; import android.view.KeyEvent;
import android.view.Menu; import android.view.Menu;
import android.view.MenuItem; import android.view.MenuItem;
import android.view.View; import android.view.View;
import android.view.Window;
import android.view.ContextMenu.ContextMenuInfo;
import android.view.View.OnClickListener; import android.view.View.OnClickListener;
import android.view.View.OnKeyListener; import android.view.View.OnKeyListener;
import android.view.Window;
import android.view.inputmethod.EditorInfo; import android.view.inputmethod.EditorInfo;
import android.widget.AbsListView; import android.widget.AbsListView;
import android.widget.AbsListView.OnScrollListener;
import android.widget.AdapterView.AdapterContextMenuInfo;
import android.widget.EditText; import android.widget.EditText;
import android.widget.ImageButton; import android.widget.ImageButton;
import android.widget.ImageView; import android.widget.ImageView;
import android.widget.ListView; import android.widget.ListView;
import android.widget.TextView; import android.widget.TextView;
import android.widget.Toast;
import android.widget.AbsListView.OnScrollListener;
import android.widget.AdapterView.AdapterContextMenuInfo;
import android.widget.TextView.OnEditorActionListener; import android.widget.TextView.OnEditorActionListener;
import android.widget.Toast;
import com.flurry.android.FlurryAgent; import com.flurry.android.FlurryAgent;
import com.timsu.astrid.R; import com.timsu.astrid.R;
@ -81,7 +88,7 @@ import com.todoroo.astrid.utility.Flags;
* @author Tim Su <tim@todoroo.com> * @author Tim Su <tim@todoroo.com>
* *
*/ */
public class TaskListActivity extends ListActivity implements OnScrollListener { public class TaskListActivity extends ListActivity implements OnScrollListener, OnGesturePerformedListener {
// --- activities // --- activities
@ -136,6 +143,7 @@ public class TaskListActivity extends ListActivity implements OnScrollListener {
ImageButton quickAddButton; ImageButton quickAddButton;
EditText quickAddBox; EditText quickAddBox;
Filter filter; Filter filter;
private GestureLibrary mLibrary;
/* ====================================================================== /* ======================================================================
* ======================================================= initialization * ======================================================= initialization
@ -329,6 +337,12 @@ public class TaskListActivity extends ListActivity implements OnScrollListener {
} }
}); });
// gestures
mLibrary = GestureLibraries.fromRawResource(this, R.raw.gestures);
if(mLibrary.load()) {
GestureOverlayView gestures = (GestureOverlayView) findViewById(R.id.gestures);
gestures.addOnGesturePerformedListener(this);
}
} }
/** /**
@ -757,4 +771,24 @@ public class TaskListActivity extends ListActivity implements OnScrollListener {
return false; return false;
} }
@SuppressWarnings("nls")
@Override
public void onGesturePerformed(GestureOverlayView overlay, Gesture gesture) {
ArrayList<Prediction> predictions = mLibrary.recognize(gesture);
// We want at least one prediction
if (predictions.size() > 0) {
Prediction prediction = predictions.get(0);
// We want at least some confidence in the result
if (prediction.score > 1.0) {
if("nav_filters".equals(prediction.name)) {
Intent intent = new Intent(TaskListActivity.this,
FilterListActivity.class);
startActivity(intent);
finish();
}
}
}
}
} }

@ -82,6 +82,7 @@ public class Preferences {
/** Get preferences object from the context */ /** Get preferences object from the context */
public static SharedPreferences getPrefs(Context context) { public static SharedPreferences getPrefs(Context context) {
context = context.getApplicationContext();
return PreferenceManager.getDefaultSharedPreferences(context); return PreferenceManager.getDefaultSharedPreferences(context);
} }

Loading…
Cancel
Save