diff --git a/starter-code/ShoppingListWithSearch/.idea/.name b/starter-code/ShoppingListWithSearch/.idea/.name
new file mode 100644
index 0000000..10ee423
--- /dev/null
+++ b/starter-code/ShoppingListWithSearch/.idea/.name
@@ -0,0 +1 @@
+ShoppingListWithSearch
\ No newline at end of file
diff --git a/starter-code/ShoppingListWithSearch/.idea/compiler.xml b/starter-code/ShoppingListWithSearch/.idea/compiler.xml
new file mode 100644
index 0000000..96cc43e
--- /dev/null
+++ b/starter-code/ShoppingListWithSearch/.idea/compiler.xml
@@ -0,0 +1,22 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/starter-code/ShoppingListWithSearch/.idea/copyright/profiles_settings.xml b/starter-code/ShoppingListWithSearch/.idea/copyright/profiles_settings.xml
new file mode 100644
index 0000000..e7bedf3
--- /dev/null
+++ b/starter-code/ShoppingListWithSearch/.idea/copyright/profiles_settings.xml
@@ -0,0 +1,3 @@
+
+
+
\ No newline at end of file
diff --git a/starter-code/ShoppingListWithSearch/.idea/gradle.xml b/starter-code/ShoppingListWithSearch/.idea/gradle.xml
new file mode 100644
index 0000000..8d2df47
--- /dev/null
+++ b/starter-code/ShoppingListWithSearch/.idea/gradle.xml
@@ -0,0 +1,18 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/starter-code/ShoppingListWithSearch/.idea/misc.xml b/starter-code/ShoppingListWithSearch/.idea/misc.xml
new file mode 100644
index 0000000..7158618
--- /dev/null
+++ b/starter-code/ShoppingListWithSearch/.idea/misc.xml
@@ -0,0 +1,62 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 1.8
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/starter-code/ShoppingListWithSearch/.idea/modules.xml b/starter-code/ShoppingListWithSearch/.idea/modules.xml
new file mode 100644
index 0000000..27a232c
--- /dev/null
+++ b/starter-code/ShoppingListWithSearch/.idea/modules.xml
@@ -0,0 +1,9 @@
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/starter-code/ShoppingListWithSearch/.idea/runConfigurations.xml b/starter-code/ShoppingListWithSearch/.idea/runConfigurations.xml
new file mode 100644
index 0000000..7f68460
--- /dev/null
+++ b/starter-code/ShoppingListWithSearch/.idea/runConfigurations.xml
@@ -0,0 +1,12 @@
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/starter-code/ShoppingListWithSearch/.idea/vcs.xml b/starter-code/ShoppingListWithSearch/.idea/vcs.xml
new file mode 100644
index 0000000..6564d52
--- /dev/null
+++ b/starter-code/ShoppingListWithSearch/.idea/vcs.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/starter-code/ShoppingListWithSearch/app/src/main/AndroidManifest.xml b/starter-code/ShoppingListWithSearch/app/src/main/AndroidManifest.xml
index 77155bc..c74b025 100644
--- a/starter-code/ShoppingListWithSearch/app/src/main/AndroidManifest.xml
+++ b/starter-code/ShoppingListWithSearch/app/src/main/AndroidManifest.xml
@@ -11,9 +11,13 @@
+
+
diff --git a/starter-code/ShoppingListWithSearch/app/src/main/java/ly/generalassemb/drewmahrt/shoppinglistwithsearch/MainActivity.java b/starter-code/ShoppingListWithSearch/app/src/main/java/ly/generalassemb/drewmahrt/shoppinglistwithsearch/MainActivity.java
index ab2c048..f5010bb 100644
--- a/starter-code/ShoppingListWithSearch/app/src/main/java/ly/generalassemb/drewmahrt/shoppinglistwithsearch/MainActivity.java
+++ b/starter-code/ShoppingListWithSearch/app/src/main/java/ly/generalassemb/drewmahrt/shoppinglistwithsearch/MainActivity.java
@@ -1,7 +1,10 @@
package ly.generalassemb.drewmahrt.shoppinglistwithsearch;
+import android.app.DownloadManager;
import android.app.SearchManager;
+import android.app.SearchableInfo;
import android.content.Context;
+import android.content.Intent;
import android.database.Cursor;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
@@ -12,6 +15,8 @@
import android.widget.CursorAdapter;
import android.widget.ListView;
import android.widget.SimpleCursorAdapter;
+import android.widget.TextView;
+import android.widget.Toast;
public class MainActivity extends AppCompatActivity {
private ListView mShoppingListView;
@@ -28,12 +33,40 @@ protected void onCreate(Bundle savedInstanceState) {
mCursorAdapter = new SimpleCursorAdapter(this,android.R.layout.simple_list_item_1,cursor,new String[]{ShoppingSQLiteOpenHelper.COL_ITEM_NAME},new int[]{android.R.id.text1},0);
mShoppingListView.setAdapter(mCursorAdapter);
+
+ handleIntent (getIntent() );
+
+ }
+
+ @Override
+ protected void onNewIntent(Intent intent) {
+ super.onNewIntent(intent);
+ handleIntent(intent);
+ }
+
+ private void handleIntent( Intent intent){
+ if(Intent.ACTION_SEARCH.equals(intent.getAction())){
+ String query= intent.getStringExtra(SearchManager.QUERY);
+ Toast.makeText(MainActivity.this, "You are searching for " + query, Toast.LENGTH_SHORT).show();
+
+
+ Cursor cursor= ShoppingSQLiteOpenHelper.getInstance(this).getShoppingList2(query);
+ mCursorAdapter.swapCursor(cursor);
+
+
+ }
}
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater menuInflater = getMenuInflater();
- menuInflater.inflate(R.menu.main_menu, menu);
+ menuInflater.inflate(R.menu.search_options_menu, menu);
+ SearchManager searchManager= (SearchManager) getSystemService(SEARCH_SERVICE);
+ SearchView searchView= (SearchView)menu.findItem(R.id.search).getActionView();
+
+
+ SearchableInfo info = searchManager.getSearchableInfo(getComponentName());
+ searchView.setSearchableInfo(info);
- return super.onCreateOptionsMenu(menu);
+ return true;
}
}
diff --git a/starter-code/ShoppingListWithSearch/app/src/main/java/ly/generalassemb/drewmahrt/shoppinglistwithsearch/ShoppingSQLiteOpenHelper.java b/starter-code/ShoppingListWithSearch/app/src/main/java/ly/generalassemb/drewmahrt/shoppinglistwithsearch/ShoppingSQLiteOpenHelper.java
index f5a5974..6c70df5 100644
--- a/starter-code/ShoppingListWithSearch/app/src/main/java/ly/generalassemb/drewmahrt/shoppinglistwithsearch/ShoppingSQLiteOpenHelper.java
+++ b/starter-code/ShoppingListWithSearch/app/src/main/java/ly/generalassemb/drewmahrt/shoppinglistwithsearch/ShoppingSQLiteOpenHelper.java
@@ -140,4 +140,21 @@ private void loadShoppingInfo(SQLiteDatabase db) throws IOException {
reader.close();
}
}
+
+ public Cursor getShoppingList2(String query){
+
+ SQLiteDatabase db = this.getReadableDatabase();
+
+ Cursor cursor = db.query(SHOPPING_LIST_TABLE_NAME, // a. table
+ SHOPPING_COLUMNS, // b. column names
+ COL_ITEM_NAME + " LIKE ?", // c. selections
+ new String[]{query + "%"}, // d. selections args
+ null, // e. group by
+ null, // f. having
+ null, // g. order by
+ null); // h. limit
+
+ return cursor;
+ }
+
}
diff --git a/starter-code/ShoppingListWithSearch/app/src/main/res/menu/search_options_menu.xml b/starter-code/ShoppingListWithSearch/app/src/main/res/menu/search_options_menu.xml
new file mode 100644
index 0000000..0027414
--- /dev/null
+++ b/starter-code/ShoppingListWithSearch/app/src/main/res/menu/search_options_menu.xml
@@ -0,0 +1,12 @@
+
+
\ No newline at end of file
diff --git a/starter-code/ShoppingListWithSearch/app/src/main/res/xml/searchable.xml b/starter-code/ShoppingListWithSearch/app/src/main/res/xml/searchable.xml
new file mode 100644
index 0000000..c0bc429
--- /dev/null
+++ b/starter-code/ShoppingListWithSearch/app/src/main/res/xml/searchable.xml
@@ -0,0 +1,7 @@
+
+
+
+