package js.kbars; import android.app.Activity; import android.content.Context; import android.util.Log; import android.view.View; import android.view.View.OnClickListener; import android.view.Window; import android.widget.Button; public final class TransparencyToggleButton extends Button { private final String mDescription; private boolean mTransparent; private final int mWmFlag; public TransparencyToggleButton(Context context, String description, int wmFlag) { super(context); this.mDescription = description; this.mWmFlag = wmFlag; setOnClickListener(new OnClickListener() { public void onClick(View v) { TransparencyToggleButton.this.toggle("clicked"); } }); update(); } private void toggle(String reason) { Log.d(KBarsActivity.TAG, "toggle reason=" + reason); this.mTransparent = !this.mTransparent; update(); } private void update() { setText("Make " + this.mDescription + " " + (this.mTransparent ? "opaque" : "transparent")); Window w = ((Activity) getContext()).getWindow(); if (this.mTransparent) { w.addFlags(this.mWmFlag); } else { w.clearFlags(this.mWmFlag); } } }