From 7a728d87540c22ab75f822caff27bf379598dfaf Mon Sep 17 00:00:00 2001 From: Aidan Follestad Date: Sat, 30 Jul 2016 03:10:09 -0500 Subject: [PATCH] Some more logic updates and fixes --- .../nocknock/adapter/ServerAdapter.java | 10 ++++++++- .../nocknock/ui/AddSiteActivity.java | 3 ++- .../afollestad/nocknock/ui/MainActivity.java | 21 +++++++++++++++---- app/src/main/res/layout/activity_addsite.xml | 4 ++++ app/src/main/res/layout/list_item_server.xml | 1 + 5 files changed, 33 insertions(+), 6 deletions(-) diff --git a/app/src/main/java/com/afollestad/nocknock/adapter/ServerAdapter.java b/app/src/main/java/com/afollestad/nocknock/adapter/ServerAdapter.java index 3e0712c..afee3c4 100644 --- a/app/src/main/java/com/afollestad/nocknock/adapter/ServerAdapter.java +++ b/app/src/main/java/com/afollestad/nocknock/adapter/ServerAdapter.java @@ -6,6 +6,7 @@ import android.view.View; import android.view.ViewGroup; import android.widget.ImageView; import android.widget.TextView; +import android.widget.Toast; import com.afollestad.nocknock.R; import com.afollestad.nocknock.api.ServerModel; @@ -117,7 +118,7 @@ public class ServerAdapter extends RecyclerView.Adapter return mServers.size(); } - public static class ServerVH extends RecyclerView.ViewHolder { + public static class ServerVH extends RecyclerView.ViewHolder implements View.OnClickListener { final ImageView iconStatus; final TextView textName; @@ -132,6 +133,13 @@ public class ServerAdapter extends RecyclerView.Adapter textInterval = (TextView) itemView.findViewById(R.id.textInterval); textUrl = (TextView) itemView.findViewById(R.id.textUrl); textStatus = (TextView) itemView.findViewById(R.id.textStatus); + + itemView.setOnClickListener(this); + } + + @Override + public void onClick(View view) { + Toast.makeText(view.getContext(), "Coming soon", Toast.LENGTH_SHORT).show(); } } } diff --git a/app/src/main/java/com/afollestad/nocknock/ui/AddSiteActivity.java b/app/src/main/java/com/afollestad/nocknock/ui/AddSiteActivity.java index 92d8200..9290467 100644 --- a/app/src/main/java/com/afollestad/nocknock/ui/AddSiteActivity.java +++ b/app/src/main/java/com/afollestad/nocknock/ui/AddSiteActivity.java @@ -121,7 +121,6 @@ public class AddSiteActivity extends AppCompatActivity implements View.OnClickLi ServerModel model = new ServerModel(); model.name = inputName.getText().toString().trim(); model.url = inputUrl.getText().toString().trim(); - model.lastCheck = -1; model.status = ServerStatus.WAITING; String intervalStr = inputInterval.getText().toString().trim(); @@ -143,6 +142,8 @@ public class AddSiteActivity extends AppCompatActivity implements View.OnClickLi break; } + model.lastCheck = System.currentTimeMillis() - model.checkInterval; + setResult(RESULT_OK, new Intent() .putExtra("model", model)); finish(); diff --git a/app/src/main/java/com/afollestad/nocknock/ui/MainActivity.java b/app/src/main/java/com/afollestad/nocknock/ui/MainActivity.java index 37ca7ac..3a57eb0 100644 --- a/app/src/main/java/com/afollestad/nocknock/ui/MainActivity.java +++ b/app/src/main/java/com/afollestad/nocknock/ui/MainActivity.java @@ -34,6 +34,7 @@ public class MainActivity extends AppCompatActivity implements SwipeRefreshLayou private RecyclerView mList; private ServerAdapter mAdapter; private TextView mEmptyText; + private SwipeRefreshLayout mRefreshLayout; private ObjectAnimator mFabAnimator; private float mOrigFabX; @@ -51,9 +52,9 @@ public class MainActivity extends AppCompatActivity implements SwipeRefreshLayou mList.setLayoutManager(new LinearLayoutManager(this)); mList.setAdapter(mAdapter); - SwipeRefreshLayout sr = (SwipeRefreshLayout) findViewById(R.id.swipeRefreshLayout); - sr.setOnRefreshListener(this); - sr.setColorSchemeColors(ContextCompat.getColor(this, R.color.md_green), + mRefreshLayout = (SwipeRefreshLayout) findViewById(R.id.swipeRefreshLayout); + mRefreshLayout.setOnRefreshListener(this); + mRefreshLayout.setColorSchemeColors(ContextCompat.getColor(this, R.color.md_green), ContextCompat.getColor(this, R.color.md_yellow), ContextCompat.getColor(this, R.color.md_red)); @@ -61,9 +62,19 @@ public class MainActivity extends AppCompatActivity implements SwipeRefreshLayou mFab.setOnClickListener(this); Inquiry.init(this, "nocknock", 1); + refreshModels(); + } + + private void refreshModels() { + mEmptyText.setVisibility(View.GONE); Inquiry.get() .selectFrom(SITES_TABLE_NAME, ServerModel.class) - .all(result -> mAdapter.set(result)); + .all(this::setModels); + } + + private void setModels(ServerModel[] models) { + mAdapter.set(models); + mEmptyText.setVisibility(mAdapter.getItemCount() == 0 ? View.VISIBLE : View.GONE); } @Override @@ -90,6 +101,7 @@ public class MainActivity extends AppCompatActivity implements SwipeRefreshLayou @Override public void onRefresh() { + mRefreshLayout.setRefreshing(false); // TODO check all servers in order } @@ -128,6 +140,7 @@ public class MainActivity extends AppCompatActivity implements SwipeRefreshLayou if (resultCode == RESULT_OK) { ServerModel model = (ServerModel) data.getSerializableExtra("model"); mAdapter.add(model); + mEmptyText.setVisibility(View.GONE); Inquiry.get().insertInto(SITES_TABLE_NAME, ServerModel.class) .values(model) diff --git a/app/src/main/res/layout/activity_addsite.xml b/app/src/main/res/layout/activity_addsite.xml index 3537ec3..cb6ad5f 100644 --- a/app/src/main/res/layout/activity_addsite.xml +++ b/app/src/main/res/layout/activity_addsite.xml @@ -40,7 +40,9 @@ android:id="@+id/inputName" android:layout_width="match_parent" android:layout_height="wrap_content" + android:fontFamily="sans-serif-light" android:hint="@string/site_name" + android:inputType="textPersonName" android:textColor="?android:textColorPrimary" android:textColorHint="?android:textColorSecondary" /> @@ -57,7 +59,9 @@ android:id="@+id/inputUrl" android:layout_width="match_parent" android:layout_height="wrap_content" + android:fontFamily="sans-serif-light" android:hint="@string/site_url" + android:inputType="textUri" android:textColor="?android:textColorPrimary" android:textColorHint="?android:textColorSecondary" /> diff --git a/app/src/main/res/layout/list_item_server.xml b/app/src/main/res/layout/list_item_server.xml index 8ace8ec..f7a47b3 100644 --- a/app/src/main/res/layout/list_item_server.xml +++ b/app/src/main/res/layout/list_item_server.xml @@ -3,6 +3,7 @@ xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="wrap_content" + android:background="?selectableItemBackground" android:orientation="horizontal" android:paddingLeft="@dimen/content_inset" android:paddingRight="@dimen/content_inset">