FileDocCategorySizeDatePackage
GearsPermissionsDialog.javaAPI DocAndroid 1.5 API4358Wed May 06 22:42:42 BST 2009com.android.browser

GearsPermissionsDialog

public class GearsPermissionsDialog extends GearsBaseDialog
Gears permission dialog

Fields Summary
private static final String
TAG
private String
mDialogType
private int
mNotification
Constructors Summary
public GearsPermissionsDialog(android.app.Activity activity, android.os.Handler handler, String arguments)


    
                                 
                                  
    super (activity, handler, arguments);
  
Methods Summary
public java.lang.StringcloseDialog(int closingType)

    String ret = null;
    switch (closingType) {
      case ALWAYS_DENY:
        ret = "{\"allow\": false, \"permanently\": true }";
        if (mDialogType.equalsIgnoreCase(LOCAL_DATA_STRING)) {
          mNotification = R.string.storage_notification_alwaysdeny;
        } else if (mDialogType.equalsIgnoreCase(LOCATION_DATA_STRING)) {
          mNotification = R.string.location_notification_alwaysdeny;
        }
        break;
      case ALLOW:
        ret = "{\"allow\": true, \"permanently\": true }";
        if (mDialogType.equalsIgnoreCase(LOCAL_DATA_STRING)) {
          mNotification = R.string.storage_notification;
        } else if (mDialogType.equalsIgnoreCase(LOCATION_DATA_STRING)) {
          mNotification = R.string.location_notification;
        }
        break;
      case DENY:
        ret = "{\"allow\": false, \"permanently\": false }";
        break;
    }
    return ret;
  
public intnotification()

    return mNotification;
  
public voidsetup()

    inflate(R.layout.gears_dialog_permission, R.id.panel_content);
    setupButtons(R.string.permission_button_alwaysdeny,
                 R.string.permission_button_allow,
                 R.string.permission_button_deny);

    try {
      JSONObject json = new JSONObject(mDialogArguments);

      if (json.has("dialogType")) {
        mDialogType = json.getString("dialogType");
        setupDialog();
      }

      if (!json.has("customName")) {
        setLabel(json, "origin", R.id.origin_title);
        View titleView = findViewById(R.id.origin_title);
        if (titleView != null) {
          TextView title = (TextView) titleView;
          title.setGravity(Gravity.CENTER);
        }
      } else {
        setLabel(json, "customName", R.id.origin_title);
        setLabel(json, "origin", R.id.origin_subtitle);
        setLabel(json, "customMessage", R.id.origin_message);
      }

      if (json.has("customIcon")) {
        String iconUrl = json.getString("customIcon");
        mChoosenIconSize = 32;
        downloadIcon(iconUrl);
      }

      View msg = findViewById(R.id.permission_dialog_message);
      if (msg != null) {
        TextView dialogMessage = (TextView) msg;
        if (mDialogType.equalsIgnoreCase(LOCAL_DATA_STRING)) {
          dialogMessage.setText(R.string.query_data_message);
        } else if (mDialogType.equalsIgnoreCase(LOCATION_DATA_STRING)) {
          dialogMessage.setText(R.string.location_message);
        }
      }

    } catch (JSONException e) {
      Log.e(TAG, "JSON exception ", e);
    }
  
public voidsetupDialog(android.widget.TextView message, android.widget.ImageView icon)

    if (mDialogType.equalsIgnoreCase(LOCAL_DATA_STRING)) {
      message.setText(R.string.query_data_prompt);
      icon.setImageResource(android.R.drawable.ic_popup_disk_full);
    } else if (mDialogType.equalsIgnoreCase(LOCATION_DATA_STRING)) {
      message.setText(R.string.location_prompt);
      icon.setImageResource(R.drawable.ic_dialog_menu_generic);
    }