package com.npes87184.s2tdroid.donate;
import android.app.Fragment;
import android.content.Intent;
import android.net.Uri;
import android.os.Build;
import android.os.Bundle;
import android.provider.Settings;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.Button;
import android.widget.TextView;
import cn.pedant.SweetAlert.SweetAlertDialog;
/**
* Created by npes87184 on 2015/8/14.
*/
public class BubbleFragment extends Fragment {
private View v;
public static int OVERLAY_PERMISSION_REQ_CODE = 1234;
public static BubbleFragment newInstance() {
BubbleFragment bubbleFragment = new BubbleFragment();
return bubbleFragment;
}
@Override
public void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// TODO Auto-generated method stub
v = inflater.inflate(R.layout.bubble, container, false);
Button startBubble = (Button)v.findViewById(R.id.button);
startBubble.setOnClickListener(new Button.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
if(Build.VERSION.SDK_INT >= 23) {
// Marshmallow+
if (!Settings.canDrawOverlays(getActivity())) {
new SweetAlertDialog(getActivity())
.setTitleText(getString(R.string.app_name))
.setContentText(getString(R.string.floatingPermission))
.setConfirmText("OK")
.setConfirmClickListener(new SweetAlertDialog.OnSweetClickListener() {
@Override
public void onClick(SweetAlertDialog sDialog) {
Intent intent = new Intent(Settings.ACTION_MANAGE_OVERLAY_PERMISSION,
Uri.parse("package:" + getActivity().getPackageName()));
startActivityForResult(intent, OVERLAY_PERMISSION_REQ_CODE);
sDialog.dismiss();
}
})
.show();
} else {
getActivity().startService(new Intent(getActivity(), BubbleService.class));
getActivity().finish();
}
} else {
getActivity().startService(new Intent(getActivity(), BubbleService.class));
getActivity().finish();
}
}
});
TextView textView = (TextView) v.findViewById(R.id.textView2);
final float scale = getResources().getDisplayMetrics().density;
int size = (int)(7 * scale);
textView.setTextSize(size);
return v;
}
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode == OVERLAY_PERMISSION_REQ_CODE) {
if(Build.VERSION.SDK_INT >= 23) {
if (!Settings.canDrawOverlays(getActivity())) {
// SYSTEM_ALERT_WINDOW permission not granted...
new SweetAlertDialog(getActivity(), SweetAlertDialog.ERROR_TYPE)
.setTitleText(getString(R.string.oops))
.setContentText(getString(R.string.floatingPermission))
.show();
} else {
getActivity().startService(new Intent(getActivity(), BubbleService.class));
}
}
}
}
}