示例#1
0
 public virtual void setTarget(android.view.inputmethod.InputConnection arg0)
 {
     global::MonoJavaBridge.JNIEnv @__env = global::MonoJavaBridge.JNIEnv.ThreadEnv;
     if (!IsClrObject)
     {
         @__env.CallVoidMethod(this.JvmHandle, global::android.view.inputmethod.InputConnectionWrapper._setTarget10181, global::MonoJavaBridge.JavaBridge.ConvertToValue(arg0));
     }
     else
     {
         @__env.CallNonVirtualVoidMethod(this.JvmHandle, global::android.view.inputmethod.InputConnectionWrapper.staticClass, global::android.view.inputmethod.InputConnectionWrapper._setTarget10181, global::MonoJavaBridge.JavaBridge.ConvertToValue(arg0));
     }
 }
示例#2
0
 void android.view.inputmethod.InputMethod.restartInput(android.view.inputmethod.InputConnection arg0, android.view.inputmethod.EditorInfo arg1)
 {
     global::MonoJavaBridge.JNIEnv @__env = global::MonoJavaBridge.JNIEnv.ThreadEnv;
     if (!IsClrObject)
     {
         @__env.CallVoidMethod(this.JvmHandle, global::android.view.inputmethod.InputMethod_._restartInput10206, global::MonoJavaBridge.JavaBridge.ConvertToValue(arg0), global::MonoJavaBridge.JavaBridge.ConvertToValue(arg1));
     }
     else
     {
         @__env.CallNonVirtualVoidMethod(this.JvmHandle, global::android.view.inputmethod.InputMethod_.staticClass, global::android.view.inputmethod.InputMethod_._restartInput10206, global::MonoJavaBridge.JavaBridge.ConvertToValue(arg0), global::MonoJavaBridge.JavaBridge.ConvertToValue(arg1));
     }
 }
 public IInputConnectionWrapper(android.os.Looper mainLooper, android.view.inputmethod.InputConnection
                                conn)
 {
     throw new System.NotImplementedException();
 }
示例#4
0
 public abstract void startInput(android.view.inputmethod.InputConnection arg1, android.view.inputmethod.EditorInfo
                                 arg2);
示例#5
0
 public InputBinding(android.view.inputmethod.InputConnection arg0, android.view.inputmethod.InputBinding arg1)  : base(global::MonoJavaBridge.JNIEnv.ThreadEnv)
 {
     global::MonoJavaBridge.JNIEnv         @__env = global::MonoJavaBridge.JNIEnv.ThreadEnv;
     global::MonoJavaBridge.JniLocalHandle handle = @__env.NewObject(android.view.inputmethod.InputBinding.staticClass, global::android.view.inputmethod.InputBinding._InputBinding10158, global::MonoJavaBridge.JavaBridge.ConvertToValue(arg0), global::MonoJavaBridge.JavaBridge.ConvertToValue(arg1));
     Init(@__env, handle);
 }
示例#6
0
 public InputBinding(android.view.inputmethod.InputConnection conn, android.view.inputmethod.InputBinding
                     binding)
 {
     throw new System.NotImplementedException();
 }
示例#7
0
 public InputBinding(android.view.inputmethod.InputConnection conn, android.os.IBinder
                     connToken, int uid, int pid)
 {
     throw new System.NotImplementedException();
 }
示例#8
0
 internal virtual void doStartInput(android.view.inputmethod.InputConnection ic, android.view.inputmethod.EditorInfo
                                    attribute, bool restarting)
 {
     throw new System.NotImplementedException();
 }
示例#9
0
 public override void restartInput(android.view.inputmethod.InputConnection ic, android.view.inputmethod.EditorInfo
                                   attribute)
 {
     throw new System.NotImplementedException();
 }
 public virtual void setTarget(android.view.inputmethod.InputConnection target)
 {
     throw new System.NotImplementedException();
 }
 public InputConnectionWrapper(android.view.inputmethod.InputConnection target, bool
                               mutable)
 {
     throw new System.NotImplementedException();
 }
示例#12
0
		/// <summary>
		/// Reset all of the state associated with a served view being connected
		/// to an input method
		/// </summary>
		internal void clearConnectionLocked()
		{
			mCurrentTextBoxAttribute = null;
			mServedInputConnection = null;
		}
示例#13
0
		internal InputMethodManager([email protected] service, android.os.Looper
			 looper)
		{
			mDummyInputConnection = new android.view.inputmethod.BaseInputConnection(this, false
				);
			// For scheduling work on the main thread.  This also serves as our
			// global lock.
			// Our generic input connection if the current target does not have its own.
			// -----------------------------------------------------------
			// Cursor position on the screen.
			// -----------------------------------------------------------
			// -----------------------------------------------------------
			// XXX the server has already unbound!
			// If we were actively using the last input method, then
			// we would like to re-connect to the next input method.
			// Some other client has starting using the IME, so note
			// that this happened and make sure our own editor's
			// state is reset.
			// Note that finishComposingText() is allowed to run
			// even when we are not active.
			// No need to check for dump permission, since we only give this
			// interface to the system.
			mService = service;
			mMainLooper = looper;
			mH = new android.view.inputmethod.InputMethodManager.H(this, looper);
			mIInputContext = new android.view.inputmethod.InputMethodManager.ControlledInputConnectionWrapper
				(this, looper, mDummyInputConnection);
			if (mInstance == null)
			{
				mInstance = this;
			}
		}
示例#14
0
		internal void startInputInner()
		{
			android.view.View view;
			lock (mH)
			{
				view = mServedView;
				// Make sure we have a window token for the served view.
				if (view == null)
				{
					return;
				}
			}
			// Now we need to get an input connection from the served view.
			// This is complicated in a couple ways: we can't be holding our lock
			// when calling out to the view, and we need to make sure we call into
			// the view on the same thread that is driving its view hierarchy.
			android.os.Handler vh = view.getHandler();
			if (vh == null)
			{
				// If the view doesn't have a handler, something has changed out
				// from under us, so just bail.
				return;
			}
			if (vh.getLooper() != android.os.Looper.myLooper())
			{
				// The view is running on a different thread than our own, so
				// we need to reschedule our work for over there.
				vh.post(new _Runnable_976());
				return;
			}
			// Okay we are now ready to call into the served view and have it
			// do its stuff.
			// Life is good: let's hook everything up!
			android.view.inputmethod.EditorInfo tba = new android.view.inputmethod.EditorInfo
				();
			tba.packageName = view.getContext().getPackageName();
			tba.fieldId = view.getId();
			android.view.inputmethod.InputConnection ic = view.onCreateInputConnection(tba);
			lock (mH)
			{
				// Now that we are locked again, validate that our state hasn't
				// changed.
				if (mServedView != view || !mServedConnecting)
				{
					// Something else happened, so abort.
					return;
				}
				// If we already have a text box, then this view is already
				// connected so we want to restart it.
				bool initial = mCurrentTextBoxAttribute == null;
				// Hook 'em up and let 'er rip.
				mCurrentTextBoxAttribute = tba;
				mServedConnecting = false;
				mServedInputConnection = ic;
				[email protected] servedContext;
				if (ic != null)
				{
					mCursorSelStart = tba.initialSelStart;
					mCursorSelEnd = tba.initialSelEnd;
					mCursorCandStart = -1;
					mCursorCandEnd = -1;
					mCursorRect.setEmpty();
					servedContext = new android.view.inputmethod.InputMethodManager.ControlledInputConnectionWrapper
						(this, vh.getLooper(), ic);
				}
				else
				{
					servedContext = null;
				}
				try
				{
					[email protected] res = mService.startInput(mClient, servedContext
						, tba, initial, true);
					if (res != null)
					{
						if (res.id != null)
						{
							mBindSequence = res.sequence;
							mCurMethod = res.method;
						}
						else
						{
							if (mCurMethod == null)
							{
								// This means there is no input method available.
								return;
							}
						}
					}
					if (mCurMethod != null && mCompletions != null)
					{
						try
						{
							mCurMethod.displayCompletions(mCompletions);
						}
						catch (android.os.RemoteException)
						{
						}
					}
				}
				catch (android.os.RemoteException e)
				{
					android.util.Log.w(TAG, "IME died: " + mCurId, e);
				}
			}
		}