Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,8 @@
class DebugOverlayView extends FrameLayout {

private ImageView closeButton;
private ImageView upButton;
private ImageView downButton;
private WindowManager windowManager;
private LoggingAdapter adapter;
private ListView listView;
Expand All @@ -34,16 +36,23 @@ public DebugOverlayView(Context context) {
Point windowDimen = new Point();
windowManager.getDefaultDisplay().getSize(windowDimen);

int desiredLayoutHeight = dpToPx(context, 100);
int layoutHeight = desiredLayoutHeight < windowDimen.y ? desiredLayoutHeight : windowDimen.y;
// Use 1/2 of screen height for overlay
int desiredLayoutHeight = windowDimen.y / 2;
int layoutHeight = Math.min(desiredLayoutHeight, windowDimen.y);

// Setup the GUI

// Close Button
// Buttons
int buttonHeight = dpToPx(context, 40);
closeButton = new ImageView(context);
closeButton.setImageResource(R.drawable.ic_close_circle);
closeButton.setLayoutParams(new FrameLayout.LayoutParams(buttonHeight, buttonHeight, Gravity.TOP | Gravity.END));
upButton = new ImageView(context);
upButton.setImageResource(R.drawable.ic_up_circle);
upButton.setLayoutParams(new FrameLayout.LayoutParams(buttonHeight, buttonHeight, Gravity.CENTER | Gravity.END));
downButton = new ImageView(context);
downButton.setImageResource(R.drawable.ic_down_circle);
downButton.setLayoutParams(new FrameLayout.LayoutParams(buttonHeight, buttonHeight, Gravity.BOTTOM | Gravity.END));

// Logging Console
adapter = new LoggingAdapter(context);
Expand All @@ -60,6 +69,27 @@ public DebugOverlayView(Context context) {
// Add views
addView(listView);
addView(closeButton);
addView(upButton);
addView(downButton);

upButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
int firstVisiblePosition = listView.getFirstVisiblePosition();
int lastVisiblePosition = listView.getLastVisiblePosition();
listView.smoothScrollToPosition(firstVisiblePosition - (lastVisiblePosition - firstVisiblePosition));
}
}
);

downButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
int lastVisiblePosition = listView.getLastVisiblePosition();
listView.smoothScrollToPosition(lastVisiblePosition+1);
}
}
);

// Set View parameters
WindowManager.LayoutParams windowParams;
Expand All @@ -74,7 +104,7 @@ public DebugOverlayView(Context context) {

windowParams.gravity = Gravity.TOP | Gravity.START;
windowParams.x = 0;
windowParams.y = windowDimen.y - layoutHeight;
windowParams.y = 100;

// Attach and display View
windowManager.addView(this, windowParams);
Expand Down
Binary file added overlay/src/main/res/drawable-mdpi/ic_down.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added overlay/src/main/res/drawable-mdpi/ic_up.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
14 changes: 14 additions & 0 deletions overlay/src/main/res/drawable/ic_down_circle.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item>
<shape
xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="oval"
>
<solid
android:color="#666"/>
</shape>
</item>

<item android:drawable="@drawable/ic_down"/>
</layer-list>
14 changes: 14 additions & 0 deletions overlay/src/main/res/drawable/ic_up_circle.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item>
<shape
xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="oval"
>
<solid
android:color="#666"/>
</shape>
</item>

<item android:drawable="@drawable/ic_up"/>
</layer-list>