package com.google.android.diskusage;
import android.graphics.Canvas;
import android.graphics.Color;
import android.util.Log;
import android.view.KeyEvent;
import android.view.MotionEvent;
import android.view.View;
import com.google.android.diskusage.FileSystemState.FileSystemView;
import com.google.android.diskusage.entity.FileSystemEntry;
public final class FileSystemViewCPU extends View implements FileSystemView {
private final FileSystemState eventHandler;
public FileSystemViewCPU(DiskUsage context,
FileSystemState eventHandler) {
super(context);
this.eventHandler = eventHandler;
setFocusable(true);
setFocusableInTouchMode(true);
setBackgroundColor(Color.GRAY);
eventHandler.setView(this);
}
@Override
public final boolean onTouchEvent(MotionEvent ev) {
Log.d("diskusage", "touch = " + ev.getX() + ":" + ev.getY());
eventHandler.onTouchEvent(
eventHandler.multitouchHandler.newMyMotionEvent(ev));
return true;
}
public void requestRepaint() {
invalidate();
}
public void requestRepaintGPU() {
}
public void requestRepaint(int l, int t, int r, int b) {
invalidate(l, t, r, b);
}
@Override
protected final void onDraw(final Canvas canvas) {
eventHandler.onDraw2(canvas);
}
@Override
public final boolean onKeyDown(final int keyCode, final KeyEvent event) {
if (eventHandler.onKeyDown(keyCode, event)) {
return true;
}
return super.onKeyDown(keyCode, event);
}
@Override
protected final void onLayout(boolean changed, int left, int top, int right, int bottom) {
super.onLayout(changed, left, top, right, bottom);
FileSystemEntry.updateFontsLegacy(getContext());
eventHandler.layout(changed, left, top, right, bottom, getWidth(), getHeight());
}
public void onPause() {}
public void onResume() {}
@Override
public void runInRenderThread(Runnable r) {
r.run();
}
@Override
public void killRenderThread() {
}
}