Unity3d softInput decomplied java code

package com.unity3d.player;

import android.app.Dialog;
import android.content.Context;
import android.content.res.Resources;
import android.graphics.drawable.ColorDrawable;
import android.text.Editable;
import android.text.Selection;
import android.text.TextWatcher;
import android.view.KeyEvent;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.View.OnFocusChangeListener;
import android.view.ViewGroup.LayoutParams;
import android.view.Window;
import android.view.inputmethod.InputMethodManager;
import android.widget.Button;
import android.widget.EditText;
import android.widget.RelativeLayout;
import android.widget.RelativeLayout.LayoutParams;
import android.widget.TextView;
import android.widget.TextView.OnEditorActionListener;

public final class p extends Dialog
  implements TextWatcher, View.OnClickListener
{
  private Context a = null;
  private UnityPlayer b = null;
  private static int c = -570425344;
  private static int d = -1;

  public p(Context paramContext, UnityPlayer paramUnityPlayer, String paramString1, int paramInt, boolean paramBoolean1, boolean paramBoolean2, boolean paramBoolean3, String paramString2)
  {
    super(paramContext);
    this.a = paramContext;
    this.b = paramUnityPlayer;
    getWindow().setGravity(80);
    getWindow().requestFeature(1);
    getWindow().setBackgroundDrawable(new ColorDrawable(0));
    setContentView(createSoftInputView());
    getWindow().setLayout(-1, -2);
    getWindow().clearFlags(2);
    paramContext = (EditText)findViewById(1057292289);
    paramUnityPlayer = (Button)findViewById(1057292290);
    a(paramContext, paramString1, paramInt, paramBoolean1, paramBoolean2, paramBoolean3, paramString2);
    paramUnityPlayer.setOnClickListener(this);
    paramContext.setOnFocusChangeListener(new View.OnFocusChangeListener()
    {
      public final void onFocusChange(View paramView, boolean paramBoolean)
      {
        if (!paramBoolean)
          return;
        p.this.getWindow().setSoftInputMode(5);
      }
    });
  }

  private void a(EditText paramEditText, String paramString1, int paramInt, boolean paramBoolean1, boolean paramBoolean2, boolean paramBoolean3, String paramString2)
  {
    paramEditText.setImeOptions(6);
    paramEditText.setText(paramString1);
    paramEditText.setHint(paramString2);
    paramEditText.setInputType(a(paramInt, paramBoolean1, paramBoolean2, paramBoolean3));
    paramEditText.addTextChangedListener(this);
    paramEditText.setClickable(true);
    if (paramBoolean2)
      return;
    paramEditText.selectAll();
  }

  public final void afterTextChanged(Editable paramEditable)
  {
    this.b.reportSoftInputStr(paramEditable.toString(), 0, false);
  }

  public final void beforeTextChanged(CharSequence paramCharSequence, int paramInt1, int paramInt2, int paramInt3)
  {
  }

  public final void onTextChanged(CharSequence paramCharSequence, int paramInt1, int paramInt2, int paramInt3)
  {
  }

  private static int a(int paramInt, boolean paramBoolean1, boolean paramBoolean2, boolean paramBoolean3)
  {
    paramBoolean1 = ((paramBoolean1) ? 32768 : 0) | ((paramBoolean2) ? 131072 : 0) | ((paramBoolean3) ? 128 : 0);
    if ((paramInt < 0) || (paramInt > 7))
      return paramBoolean1;
    paramBoolean2 = new int[] { 1, 16385, 12290, 17, 2, 3, 97, 33 };
    return paramBoolean1 | paramBoolean2[paramInt];
  }

  private void a(String paramString, boolean paramBoolean)
  {
    Selection.removeSelection(((EditText)findViewById(1057292289)).getEditableText());
    this.b.reportSoftInputStr(paramString, 1, paramBoolean);
  }

  public final void onClick(View paramView)
  {
    a(a(), false);
  }

  public final void onBackPressed()
  {
    a(a(), true);
  }

  protected final View createSoftInputView()
  {
    RelativeLayout localRelativeLayout;
    (localRelativeLayout = new RelativeLayout(this.a)).setLayoutParams(new ViewGroup.LayoutParams(-1, -1));
    localRelativeLayout.setBackgroundColor(d);
    Object localObject = new EditText(this.a)
    {
      public final boolean onKeyPreIme(int paramInt, KeyEvent paramKeyEvent)
      {
        if (paramInt == 4)
        {
          p.a(p.this, p.a(p.this), true);
          return true;
        }
        if (paramInt == 84)
          return true;
        return super.onKeyPreIme(paramInt, paramKeyEvent);
      }

      public final void onWindowFocusChanged(boolean paramBoolean)
      {
        super.onWindowFocusChanged(paramBoolean);
        if (!paramBoolean)
          return;
        ((InputMethodManager)p.b(p.this).getSystemService("input_method")).showSoftInput(this, 0);
      }
    };
    RelativeLayout.LayoutParams localLayoutParams;
    (localLayoutParams = new RelativeLayout.LayoutParams(-1, -2)).addRule(15);
    localLayoutParams.addRule(0, 1057292290);
    ((EditText)localObject).setLayoutParams(localLayoutParams);
    ((EditText)localObject).setTextColor(c);
    ((EditText)localObject).setId(1057292289);
    localRelativeLayout.addView((View)localObject);
    (localObject = new Button(this.a)).setText(this.a.getResources().getIdentifier("ok", "string", "android"));
    (localLayoutParams = new RelativeLayout.LayoutParams(-2, -2)).addRule(15);
    localLayoutParams.addRule(11);
    ((Button)localObject).setLayoutParams(localLayoutParams);
    ((Button)localObject).setId(1057292290);
    ((Button)localObject).setBackgroundColor(0);
    ((Button)localObject).setTextColor(c);
    localRelativeLayout.addView((View)localObject);
    ((EditText)(localObject = localRelativeLayout).findViewById(1057292289)).setOnEditorActionListener(new TextView.OnEditorActionListener()
    {
      public final boolean onEditorAction(TextView paramTextView, int paramInt, KeyEvent paramKeyEvent)
      {
        if (paramInt == 6)
          p.a(p.this, p.a(p.this), false);
        return false;
      }
    });
    ((View)localObject).setPadding(16, 16, 16, 16);
    return (View)localObject;
  }

  private String a()
  {
    EditText localEditText;
    if ((localEditText = (EditText)findViewById(1057292289)) == null)
      return null;
    return localEditText.getText().toString().trim();
  }

  public final void a(String paramString)
  {
    EditText localEditText;
    if ((localEditText = (EditText)findViewById(1057292289)) == null)
      return;
    localEditText.setText(paramString);
    localEditText.setSelection(paramString.length());
  }
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章