diff --git a/wear/src/main/java/james/metronome/MainActivity.java b/wear/src/main/java/james/metronome/MainActivity.java
index 287b98ba4bcb6f958acc4c13889d798048fd7154..1ccfc7e807115fc0846fef21baaa308e4f0c2101 100644
--- a/wear/src/main/java/james/metronome/MainActivity.java
+++ b/wear/src/main/java/james/metronome/MainActivity.java
@@ -14,7 +14,6 @@ import android.os.VibrationEffect;
import android.os.Vibrator;
import android.preference.PreferenceManager;
import android.support.wearable.activity.WearableActivity;
-import android.support.wearable.view.BoxInsetLayout;
import android.view.View;
import android.widget.ImageView;
import android.widget.SeekBar;
@@ -27,7 +26,7 @@ public class MainActivity extends WearableActivity implements Runnable {
public static final String PREF_VIBRATION = "vibration";
public static final String PREF_INTERVAL = "interval";
- private BoxInsetLayout container;
+ private View container;
private ImageView vibrationView;
private ImageView playView;
private TextView bpmView;
@@ -48,7 +47,7 @@ public class MainActivity extends WearableActivity implements Runnable {
private Vibrator vibrator;
@Override
- protected void onCreate(Bundle savedInstanceState) {
+ protected void onCreate(final Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
setAmbientEnabled();
@@ -92,7 +91,7 @@ public class MainActivity extends WearableActivity implements Runnable {
bpmView.setText(String.format(Locale.getDefault(), getString(R.string.bpm), String.valueOf(bpm)));
seekBar.setProgress(bpm);
- vibrationView.setOnClickListener(new View.OnClickListener() {
+ findViewById(R.id.vibrationButton).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
isVibration = !isVibration;
@@ -106,7 +105,7 @@ public class MainActivity extends WearableActivity implements Runnable {
}
});
- playView.setOnClickListener(new View.OnClickListener() {
+ findViewById(R.id.playButton).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
isPlaying = !isPlaying;
@@ -120,6 +119,22 @@ public class MainActivity extends WearableActivity implements Runnable {
}
});
+ findViewById(R.id.moreButton).setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View view) {
+ if (seekBar.getProgress() < 300)
+ seekBar.setProgress(seekBar.getProgress() + 1);
+ }
+ });
+
+ findViewById(R.id.lessButton).setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View view) {
+ if (seekBar.getProgress() > 1)
+ seekBar.setProgress(seekBar.getProgress() - 1);
+ }
+ });
+
seekBar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {
@Override
public void onProgressChanged(SeekBar seekBar, int i, boolean b) {
diff --git a/wear/src/main/java/james/metronome/WhileHeldListener.java b/wear/src/main/java/james/metronome/WhileHeldListener.java
new file mode 100644
index 0000000000000000000000000000000000000000..23bf949d7bce7651b5602f432589b3eb1426b6e8
--- /dev/null
+++ b/wear/src/main/java/james/metronome/WhileHeldListener.java
@@ -0,0 +1,46 @@
+package james.metronome;
+
+import android.os.Handler;
+import android.view.MotionEvent;
+import android.view.View;
+
+public abstract class WhileHeldListener implements View.OnTouchListener, Runnable {
+
+ private Handler handler;
+ private int interval;
+
+ public WhileHeldListener() {
+ interval = 100;
+ }
+
+ public WhileHeldListener(int interval) {
+ this.interval = interval;
+ }
+
+ public abstract void onHeld();
+
+ @Override
+ public boolean onTouch(View v, MotionEvent event) {
+ switch (event.getAction()) {
+ case MotionEvent.ACTION_DOWN:
+ if (handler != null)
+ return true;
+ handler = new Handler();
+ handler.postDelayed(this, interval);
+ break;
+ case MotionEvent.ACTION_UP:
+ if (handler == null)
+ return true;
+ handler.removeCallbacks(this);
+ handler = null;
+ break;
+ }
+ return false;
+ }
+
+ @Override
+ public void run() {
+ onHeld();
+ handler.postDelayed(this, interval);
+ }
+}
diff --git a/wear/src/main/res/drawable/ic_less.xml b/wear/src/main/res/drawable/ic_less.xml
new file mode 100644
index 0000000000000000000000000000000000000000..ebf3ce3f62d826405b73d4f68a72599447c5a529
--- /dev/null
+++ b/wear/src/main/res/drawable/ic_less.xml
@@ -0,0 +1,9 @@
+
+
+
diff --git a/wear/src/main/res/drawable/ic_more.xml b/wear/src/main/res/drawable/ic_more.xml
new file mode 100644
index 0000000000000000000000000000000000000000..125885ad41cb29dd825dd786f44eee6af0cafa32
--- /dev/null
+++ b/wear/src/main/res/drawable/ic_more.xml
@@ -0,0 +1,9 @@
+
+
+
diff --git a/wear/src/main/res/layout/activity_main.xml b/wear/src/main/res/layout/activity_main.xml
index 888001b0870fdacea4bd0d06594033078f369069..1403a4defda71af34520c0c3fd6bfb36032c4fe1 100644
--- a/wear/src/main/res/layout/activity_main.xml
+++ b/wear/src/main/res/layout/activity_main.xml
@@ -1,6 +1,7 @@
-
@@ -8,42 +9,143 @@
+ android:orientation="horizontal">
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ android:layout_height="1dip"
+ android:layout_gravity="bottom"
+ android:background="#8AFFFFFF" />
-
+ android:orientation="vertical"
+ app:layout_box="left|right|bottom">
-
+
+
+
+
+
+
+
-
+