mirror of
https://github.com/WinampDesktop/winamp.git
synced 2025-06-19 14:35:45 -04:00
Android: Add pause/menu button to touchscreen controller
This commit is contained in:
@ -24,6 +24,7 @@ public class AndroidHostInterface {
|
||||
private long mNativePointer;
|
||||
private Context mContext;
|
||||
private FileHelper mFileHelper;
|
||||
private EmulationActivity mEmulationActivity;
|
||||
|
||||
public AndroidHostInterface(Context context, FileHelper fileHelper) {
|
||||
this.mContext = context;
|
||||
@ -50,6 +51,8 @@ public class AndroidHostInterface {
|
||||
mContext = context;
|
||||
}
|
||||
|
||||
public EmulationActivity getEmulationActivity() { return mEmulationActivity; }
|
||||
|
||||
static public native String getScmVersion();
|
||||
|
||||
static public native String getFullScmVersion();
|
||||
|
@ -17,7 +17,8 @@ public final class TouchscreenControllerButtonView extends View {
|
||||
{
|
||||
NONE,
|
||||
FAST_FORWARD,
|
||||
ANALOG_TOGGLE
|
||||
ANALOG_TOGGLE,
|
||||
OPEN_PAUSE_MENU,
|
||||
}
|
||||
|
||||
private Drawable mUnpressedDrawable;
|
||||
@ -144,11 +145,17 @@ public final class TouchscreenControllerButtonView extends View {
|
||||
break;
|
||||
|
||||
case ANALOG_TOGGLE: {
|
||||
if (mPressed)
|
||||
if (!mPressed)
|
||||
AndroidHostInterface.getInstance().toggleControllerAnalogMode();
|
||||
}
|
||||
break;
|
||||
|
||||
case OPEN_PAUSE_MENU: {
|
||||
if (!mPressed)
|
||||
AndroidHostInterface.getInstance().getEmulationActivity().openPauseMenu();
|
||||
}
|
||||
break;
|
||||
|
||||
case NONE:
|
||||
default:
|
||||
break;
|
||||
|
@ -312,6 +312,8 @@ public class TouchscreenControllerView extends FrameLayout {
|
||||
TouchscreenControllerButtonView.Hotkey.FAST_FORWARD, false);
|
||||
linkHotkeyButton(mMainView, R.id.controller_button_analog, "AnalogToggle",
|
||||
TouchscreenControllerButtonView.Hotkey.ANALOG_TOGGLE, false);
|
||||
linkHotkeyButton(mMainView, R.id.controller_button_pause, "OpenPauseMenu",
|
||||
TouchscreenControllerButtonView.Hotkey.OPEN_PAUSE_MENU, true);
|
||||
|
||||
linkButton(mMainView, R.id.controller_button_a, "AButton", "A", true, true);
|
||||
linkButton(mMainView, R.id.controller_button_b, "BButton", "B", true, true);
|
||||
|
@ -0,0 +1,10 @@
|
||||
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:width="24dp"
|
||||
android:height="24dp"
|
||||
android:viewportWidth="24"
|
||||
android:viewportHeight="24"
|
||||
android:tint="?attr/colorControlNormal">
|
||||
<path
|
||||
android:fillColor="@android:color/white"
|
||||
android:pathData="M9,16h2L11,8L9,8v8zM12,2C6.48,2 2,6.48 2,12s4.48,10 10,10 10,-4.48 10,-10S17.52,2 12,2zM12,20c-4.41,0 -8,-3.59 -8,-8s3.59,-8 8,-8 8,3.59 8,8 -3.59,8 -8,8zM13,16h2L15,8h-2v8z"/>
|
||||
</vector>
|
@ -158,4 +158,15 @@
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:pressedDrawable="@drawable/ic_controller_analog_button_pressed"
|
||||
app:unpressedDrawable="@drawable/ic_controller_analog_button" />
|
||||
|
||||
<com.github.stenzek.duckstation.TouchscreenControllerButtonView
|
||||
android:id="@+id/controller_button_pause"
|
||||
android:layout_width="35dp"
|
||||
android:layout_height="35dp"
|
||||
android:layout_marginTop="20dp"
|
||||
android:layout_marginRight="20dp"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:pressedDrawable="@drawable/ic_controller_pause_button"
|
||||
app:unpressedDrawable="@drawable/ic_controller_pause_button" />
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
@ -180,4 +180,15 @@
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:pressedDrawable="@drawable/ic_controller_analog_button_pressed"
|
||||
app:unpressedDrawable="@drawable/ic_controller_analog_button" />
|
||||
|
||||
<com.github.stenzek.duckstation.TouchscreenControllerButtonView
|
||||
android:id="@+id/controller_button_pause"
|
||||
android:layout_width="35dp"
|
||||
android:layout_height="35dp"
|
||||
android:layout_marginTop="20dp"
|
||||
android:layout_marginRight="20dp"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:pressedDrawable="@drawable/ic_controller_pause_button"
|
||||
app:unpressedDrawable="@drawable/ic_controller_pause_button" />
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
@ -142,4 +142,15 @@
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:pressedDrawable="@drawable/ic_controller_fast_forward_pressed"
|
||||
app:unpressedDrawable="@drawable/ic_controller_fast_forward" />
|
||||
|
||||
<com.github.stenzek.duckstation.TouchscreenControllerButtonView
|
||||
android:id="@+id/controller_button_pause"
|
||||
android:layout_width="35dp"
|
||||
android:layout_height="35dp"
|
||||
android:layout_marginTop="20dp"
|
||||
android:layout_marginRight="20dp"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:pressedDrawable="@drawable/ic_controller_pause_button"
|
||||
app:unpressedDrawable="@drawable/ic_controller_pause_button" />
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
@ -41,4 +41,15 @@
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:pressedDrawable="@drawable/ic_controller_fast_forward_pressed"
|
||||
app:unpressedDrawable="@drawable/ic_controller_fast_forward" />
|
||||
|
||||
<com.github.stenzek.duckstation.TouchscreenControllerButtonView
|
||||
android:id="@+id/controller_button_pause"
|
||||
android:layout_width="35dp"
|
||||
android:layout_height="35dp"
|
||||
android:layout_marginTop="20dp"
|
||||
android:layout_marginRight="20dp"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:pressedDrawable="@drawable/ic_controller_pause_button"
|
||||
app:unpressedDrawable="@drawable/ic_controller_pause_button" />
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
Reference in New Issue
Block a user