mirror of
https://github.com/moonlight-stream/moonlight-android.git
synced 2025-07-21 12:03:02 +00:00
Highlight the controls red when in configuration mode
This commit is contained in:
parent
49ddfa573d
commit
ada875cdb0
@ -210,11 +210,6 @@ public class AnalogStick extends VirtualControllerElement {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setColors(int normalColor, int pressedColor) {
|
|
||||||
this.normalColor = normalColor;
|
|
||||||
this.pressedColor = pressedColor;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected void onSizeChanged(int w, int h, int oldw, int oldh) {
|
protected void onSizeChanged(int w, int h, int oldw, int oldh) {
|
||||||
// calculate new radius sizes depending
|
// calculate new radius sizes depending
|
||||||
@ -235,25 +230,25 @@ public class AnalogStick extends VirtualControllerElement {
|
|||||||
|
|
||||||
// draw outer circle
|
// draw outer circle
|
||||||
if (!isPressed() || click_state == CLICK_STATE.SINGLE) {
|
if (!isPressed() || click_state == CLICK_STATE.SINGLE) {
|
||||||
paint.setColor(normalColor);
|
paint.setColor(getDefaultColor());
|
||||||
} else {
|
} else {
|
||||||
paint.setColor(pressedColor);
|
paint.setColor(pressedColor);
|
||||||
}
|
}
|
||||||
canvas.drawCircle(getWidth() / 2, getHeight() / 2, radius_complete, paint);
|
canvas.drawCircle(getWidth() / 2, getHeight() / 2, radius_complete, paint);
|
||||||
|
|
||||||
paint.setColor(normalColor);
|
paint.setColor(getDefaultColor());
|
||||||
// draw dead zone
|
// draw dead zone
|
||||||
canvas.drawCircle(getWidth() / 2, getHeight() / 2, radius_dead_zone, paint);
|
canvas.drawCircle(getWidth() / 2, getHeight() / 2, radius_dead_zone, paint);
|
||||||
|
|
||||||
// draw stick depending on state
|
// draw stick depending on state
|
||||||
switch (stick_state) {
|
switch (stick_state) {
|
||||||
case NO_MOVEMENT: {
|
case NO_MOVEMENT: {
|
||||||
paint.setColor(normalColor);
|
paint.setColor(getDefaultColor());
|
||||||
canvas.drawCircle(getWidth() / 2, getHeight() / 2, radius_analog_stick, paint);
|
canvas.drawCircle(getWidth() / 2, getHeight() / 2, radius_analog_stick, paint);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case MOVED_IN_DEAD_ZONE: {
|
case MOVED_IN_DEAD_ZONE: {
|
||||||
paint.setColor(normalColor);
|
paint.setColor(getDefaultColor());
|
||||||
canvas.drawCircle(position_stick_x, position_stick_y, radius_analog_stick, paint);
|
canvas.drawCircle(position_stick_x, position_stick_y, radius_analog_stick, paint);
|
||||||
|
|
||||||
break;
|
break;
|
||||||
|
@ -148,7 +148,7 @@ public class DigitalButton extends VirtualControllerElement {
|
|||||||
paint.setTextAlign(Paint.Align.CENTER);
|
paint.setTextAlign(Paint.Align.CENTER);
|
||||||
paint.setStrokeWidth(3);
|
paint.setStrokeWidth(3);
|
||||||
|
|
||||||
paint.setColor(isPressed() ? pressedColor : normalColor);
|
paint.setColor(isPressed() ? pressedColor : getDefaultColor());
|
||||||
paint.setStyle(Paint.Style.STROKE);
|
paint.setStyle(Paint.Style.STROKE);
|
||||||
canvas.drawRect(1, 1, getWidth() - 1, getHeight() - 1, paint);
|
canvas.drawRect(1, 1, getWidth() - 1, getHeight() - 1, paint);
|
||||||
|
|
||||||
|
@ -44,7 +44,7 @@ public class DigitalPad extends VirtualControllerElement {
|
|||||||
if (direction == DIGITAL_PAD_DIRECTION_NO_DIRECTION) {
|
if (direction == DIGITAL_PAD_DIRECTION_NO_DIRECTION) {
|
||||||
// draw no direction rect
|
// draw no direction rect
|
||||||
paint.setStyle(Paint.Style.STROKE);
|
paint.setStyle(Paint.Style.STROKE);
|
||||||
paint.setColor(normalColor);
|
paint.setColor(getDefaultColor());
|
||||||
canvas.drawRect(
|
canvas.drawRect(
|
||||||
getPercent(getWidth(), 36), getPercent(getHeight(), 36),
|
getPercent(getWidth(), 36), getPercent(getHeight(), 36),
|
||||||
getPercent(getWidth(), 63), getPercent(getHeight(), 63),
|
getPercent(getWidth(), 63), getPercent(getHeight(), 63),
|
||||||
@ -54,7 +54,7 @@ public class DigitalPad extends VirtualControllerElement {
|
|||||||
|
|
||||||
// draw left rect
|
// draw left rect
|
||||||
paint.setColor(
|
paint.setColor(
|
||||||
(direction & DIGITAL_PAD_DIRECTION_LEFT) > 0 ? pressedColor : normalColor);
|
(direction & DIGITAL_PAD_DIRECTION_LEFT) > 0 ? pressedColor : getDefaultColor());
|
||||||
paint.setStyle(Paint.Style.STROKE);
|
paint.setStyle(Paint.Style.STROKE);
|
||||||
canvas.drawRect(
|
canvas.drawRect(
|
||||||
paint.getStrokeWidth(), getPercent(getHeight(), 33),
|
paint.getStrokeWidth(), getPercent(getHeight(), 33),
|
||||||
@ -65,7 +65,7 @@ public class DigitalPad extends VirtualControllerElement {
|
|||||||
|
|
||||||
// draw up rect
|
// draw up rect
|
||||||
paint.setColor(
|
paint.setColor(
|
||||||
(direction & DIGITAL_PAD_DIRECTION_UP) > 0 ? pressedColor : normalColor);
|
(direction & DIGITAL_PAD_DIRECTION_UP) > 0 ? pressedColor : getDefaultColor());
|
||||||
paint.setStyle(Paint.Style.STROKE);
|
paint.setStyle(Paint.Style.STROKE);
|
||||||
canvas.drawRect(
|
canvas.drawRect(
|
||||||
getPercent(getWidth(), 33), paint.getStrokeWidth(),
|
getPercent(getWidth(), 33), paint.getStrokeWidth(),
|
||||||
@ -75,7 +75,7 @@ public class DigitalPad extends VirtualControllerElement {
|
|||||||
|
|
||||||
// draw right rect
|
// draw right rect
|
||||||
paint.setColor(
|
paint.setColor(
|
||||||
(direction & DIGITAL_PAD_DIRECTION_RIGHT) > 0 ? pressedColor : normalColor);
|
(direction & DIGITAL_PAD_DIRECTION_RIGHT) > 0 ? pressedColor : getDefaultColor());
|
||||||
paint.setStyle(Paint.Style.STROKE);
|
paint.setStyle(Paint.Style.STROKE);
|
||||||
canvas.drawRect(
|
canvas.drawRect(
|
||||||
getPercent(getWidth(), 66), getPercent(getHeight(), 33),
|
getPercent(getWidth(), 66), getPercent(getHeight(), 33),
|
||||||
@ -85,7 +85,7 @@ public class DigitalPad extends VirtualControllerElement {
|
|||||||
|
|
||||||
// draw down rect
|
// draw down rect
|
||||||
paint.setColor(
|
paint.setColor(
|
||||||
(direction & DIGITAL_PAD_DIRECTION_DOWN) > 0 ? pressedColor : normalColor);
|
(direction & DIGITAL_PAD_DIRECTION_DOWN) > 0 ? pressedColor : getDefaultColor());
|
||||||
paint.setStyle(Paint.Style.STROKE);
|
paint.setStyle(Paint.Style.STROKE);
|
||||||
canvas.drawRect(
|
canvas.drawRect(
|
||||||
getPercent(getWidth(), 33), getPercent(getHeight(), 66),
|
getPercent(getWidth(), 33), getPercent(getHeight(), 66),
|
||||||
@ -97,7 +97,7 @@ public class DigitalPad extends VirtualControllerElement {
|
|||||||
paint.setColor((
|
paint.setColor((
|
||||||
(direction & DIGITAL_PAD_DIRECTION_LEFT) > 0 &&
|
(direction & DIGITAL_PAD_DIRECTION_LEFT) > 0 &&
|
||||||
(direction & DIGITAL_PAD_DIRECTION_UP) > 0
|
(direction & DIGITAL_PAD_DIRECTION_UP) > 0
|
||||||
) ? pressedColor : normalColor
|
) ? pressedColor : getDefaultColor()
|
||||||
);
|
);
|
||||||
paint.setStyle(Paint.Style.STROKE);
|
paint.setStyle(Paint.Style.STROKE);
|
||||||
canvas.drawLine(
|
canvas.drawLine(
|
||||||
@ -110,7 +110,7 @@ public class DigitalPad extends VirtualControllerElement {
|
|||||||
paint.setColor((
|
paint.setColor((
|
||||||
(direction & DIGITAL_PAD_DIRECTION_UP) > 0 &&
|
(direction & DIGITAL_PAD_DIRECTION_UP) > 0 &&
|
||||||
(direction & DIGITAL_PAD_DIRECTION_RIGHT) > 0
|
(direction & DIGITAL_PAD_DIRECTION_RIGHT) > 0
|
||||||
) ? pressedColor : normalColor
|
) ? pressedColor : getDefaultColor()
|
||||||
);
|
);
|
||||||
paint.setStyle(Paint.Style.STROKE);
|
paint.setStyle(Paint.Style.STROKE);
|
||||||
canvas.drawLine(
|
canvas.drawLine(
|
||||||
@ -123,7 +123,7 @@ public class DigitalPad extends VirtualControllerElement {
|
|||||||
paint.setColor((
|
paint.setColor((
|
||||||
(direction & DIGITAL_PAD_DIRECTION_RIGHT) > 0 &&
|
(direction & DIGITAL_PAD_DIRECTION_RIGHT) > 0 &&
|
||||||
(direction & DIGITAL_PAD_DIRECTION_DOWN) > 0
|
(direction & DIGITAL_PAD_DIRECTION_DOWN) > 0
|
||||||
) ? pressedColor : normalColor
|
) ? pressedColor : getDefaultColor()
|
||||||
);
|
);
|
||||||
paint.setStyle(Paint.Style.STROKE);
|
paint.setStyle(Paint.Style.STROKE);
|
||||||
canvas.drawLine(
|
canvas.drawLine(
|
||||||
@ -136,7 +136,7 @@ public class DigitalPad extends VirtualControllerElement {
|
|||||||
paint.setColor((
|
paint.setColor((
|
||||||
(direction & DIGITAL_PAD_DIRECTION_DOWN) > 0 &&
|
(direction & DIGITAL_PAD_DIRECTION_DOWN) > 0 &&
|
||||||
(direction & DIGITAL_PAD_DIRECTION_LEFT) > 0
|
(direction & DIGITAL_PAD_DIRECTION_LEFT) > 0
|
||||||
) ? pressedColor : normalColor
|
) ? pressedColor : getDefaultColor()
|
||||||
);
|
);
|
||||||
paint.setStyle(Paint.Style.STROKE);
|
paint.setStyle(Paint.Style.STROKE);
|
||||||
canvas.drawLine(
|
canvas.drawLine(
|
||||||
|
@ -77,6 +77,10 @@ public class VirtualController {
|
|||||||
Toast.makeText(context, message, Toast.LENGTH_SHORT).show();
|
Toast.makeText(context, message, Toast.LENGTH_SHORT).show();
|
||||||
|
|
||||||
relative_layout.invalidate();
|
relative_layout.invalidate();
|
||||||
|
|
||||||
|
for (VirtualControllerElement element : elements) {
|
||||||
|
element.invalidate();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
@ -20,9 +20,10 @@ public abstract class VirtualControllerElement extends View {
|
|||||||
|
|
||||||
private final Paint paint = new Paint();
|
private final Paint paint = new Paint();
|
||||||
|
|
||||||
protected int normalColor = 0xF0888888;
|
private int normalColor = 0xF0888888;
|
||||||
protected int pressedColor = 0xF00000FF;
|
protected int pressedColor = 0xF00000FF;
|
||||||
protected int configSelectedColor = 0xF000FF00;
|
private int configNormalColor = 0xF0FF0000;
|
||||||
|
private int configSelectedColor = 0xF000FF00;
|
||||||
|
|
||||||
protected int startSize_x;
|
protected int startSize_x;
|
||||||
protected int startSize_y;
|
protected int startSize_y;
|
||||||
@ -132,6 +133,11 @@ public abstract class VirtualControllerElement extends View {
|
|||||||
invalidate();
|
invalidate();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
protected int getDefaultColor() {
|
||||||
|
return (virtualController.getControllerMode() == VirtualController.ControllerMode.Configuration) ?
|
||||||
|
configNormalColor : normalColor;
|
||||||
|
}
|
||||||
|
|
||||||
protected void showConfigurationDialog() {
|
protected void showConfigurationDialog() {
|
||||||
try {
|
try {
|
||||||
AlertDialog.Builder alertBuilder = new AlertDialog.Builder(getContext());
|
AlertDialog.Builder alertBuilder = new AlertDialog.Builder(getContext());
|
||||||
|
Loading…
x
Reference in New Issue
Block a user