From 85a69f1dffe50e7ac1e2357b74cdf822a3e98c72 Mon Sep 17 00:00:00 2001 From: Camil Staps Date: Tue, 19 May 2015 16:41:00 +0200 Subject: FilterSettingsActivity --- app/src/main/AndroidManifest.xml | 4 +++ .../org/rssin/android/FilterSettingsActivity.java | 16 +++++++++++ .../java/org/rssin/android/FiltersActivity.java | 33 ++++++++++++++++++++-- .../org/rssin/android/UnifiedInboxActivity.java | 1 - .../main/res/layout/activity_filter_settings.xml | 9 ++++++ app/src/main/res/layout/activity_unified_inbox.xml | 3 -- app/src/main/res/values/strings.xml | 2 +- 7 files changed, 61 insertions(+), 7 deletions(-) create mode 100644 app/src/main/java/org/rssin/android/FilterSettingsActivity.java create mode 100644 app/src/main/res/layout/activity_filter_settings.xml (limited to 'app') diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 912bd7b..26e53db 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -28,6 +28,10 @@ android:name="android.support.PARENT_ACTIVITY" android:value="org.rssin.android.UnifiedInboxActivity" /> + + diff --git a/app/src/main/java/org/rssin/android/FilterSettingsActivity.java b/app/src/main/java/org/rssin/android/FilterSettingsActivity.java new file mode 100644 index 0000000..3b06ff9 --- /dev/null +++ b/app/src/main/java/org/rssin/android/FilterSettingsActivity.java @@ -0,0 +1,16 @@ +package org.rssin.android; + +import android.support.v7.app.ActionBarActivity; +import android.os.Bundle; + +import org.rssin.rssin.R; + +public class FilterSettingsActivity extends ActionBarActivity { + + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + setContentView(R.layout.activity_filter_settings); + } + +} diff --git a/app/src/main/java/org/rssin/android/FiltersActivity.java b/app/src/main/java/org/rssin/android/FiltersActivity.java index 2932c68..54a380f 100644 --- a/app/src/main/java/org/rssin/android/FiltersActivity.java +++ b/app/src/main/java/org/rssin/android/FiltersActivity.java @@ -2,6 +2,7 @@ package org.rssin.android; import android.app.Activity; import android.content.Context; +import android.content.Intent; import android.support.v7.app.ActionBarActivity; import android.os.Bundle; import android.util.Log; @@ -10,6 +11,7 @@ import android.view.Menu; import android.view.MenuItem; import android.view.View; import android.view.ViewGroup; +import android.widget.AdapterView; import android.widget.ArrayAdapter; import android.widget.ListView; import android.widget.TextView; @@ -25,12 +27,18 @@ import java.util.List; public class FiltersActivity extends ActionBarActivity { private FiltersList filters; + private ListView filtersView; + + private AdapterView.OnItemClickListener onFilterClickListener; + private AdapterView.OnItemLongClickListener onFilterLongClickListener; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_filters); + filtersView = (ListView) findViewById(R.id.filters_list); + try { filters = new FiltersList(this); } catch (IOException ex) { @@ -45,8 +53,8 @@ public class FiltersActivity extends ActionBarActivity { filter.getKeywords().add(new Keyword("Keyword test 2")); filters.getFilters().add(filter); - FilterAdapter adapter = new FilterAdapter(this, R.layout.activity_filters_item, filters.getFilters()); - ((ListView) findViewById(R.id.filters_list)).setAdapter(adapter); + final FilterAdapter adapter = new FilterAdapter(this, R.layout.activity_filters_item, filters.getFilters()); + filtersView.setAdapter(adapter); try { filters.save(this); @@ -54,6 +62,27 @@ public class FiltersActivity extends ActionBarActivity { Toast.makeText(this, "Couldn't save filters.", Toast.LENGTH_SHORT).show(); Log.e("FILTER", "IOException", ex); } + + onFilterClickListener = new AdapterView.OnItemClickListener() { + @Override + public void onItemClick(AdapterView parent, View view, int position, long id) { + Filter item = (Filter) parent.getItemAtPosition(position); + // @Todo open filter + } + }; + onFilterLongClickListener = new AdapterView.OnItemLongClickListener() { + @Override + public boolean onItemLongClick(AdapterView parent, View view, int position, long id) { + Filter item = (Filter) parent.getItemAtPosition(position); + Intent intent = new Intent(getApplicationContext(), FilterSettingsActivity.class); + intent.putExtra("filter", item); + startActivity(intent); + return true; + } + }; + + filtersView.setOnItemClickListener(onFilterClickListener); + filtersView.setOnItemLongClickListener(onFilterLongClickListener); } private static class FilterAdapter extends ArrayAdapter { diff --git a/app/src/main/java/org/rssin/android/UnifiedInboxActivity.java b/app/src/main/java/org/rssin/android/UnifiedInboxActivity.java index 952228f..6335406 100644 --- a/app/src/main/java/org/rssin/android/UnifiedInboxActivity.java +++ b/app/src/main/java/org/rssin/android/UnifiedInboxActivity.java @@ -17,7 +17,6 @@ public class UnifiedInboxActivity extends ActionBarActivity { setContentView(R.layout.activity_unified_inbox); } - @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. diff --git a/app/src/main/res/layout/activity_filter_settings.xml b/app/src/main/res/layout/activity_filter_settings.xml new file mode 100644 index 0000000..6fb9932 --- /dev/null +++ b/app/src/main/res/layout/activity_filter_settings.xml @@ -0,0 +1,9 @@ + + + diff --git a/app/src/main/res/layout/activity_unified_inbox.xml b/app/src/main/res/layout/activity_unified_inbox.xml index 1f25ce7..5c56465 100644 --- a/app/src/main/res/layout/activity_unified_inbox.xml +++ b/app/src/main/res/layout/activity_unified_inbox.xml @@ -5,7 +5,4 @@ android:paddingTop="@dimen/activity_vertical_margin" android:paddingBottom="@dimen/activity_vertical_margin" tools:context=".UnifiedInboxActivity"> - - diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index db20033..73c7f17 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -1,8 +1,8 @@ RSSin - Hello world! Settings Filters Filters + Filter Settings -- cgit v1.2.3