public virtual void setDigitsWatcher(android.text.TextWatcher watcher) { java.lang.CharSequence text = ((android.text.Editable)mDigits.getText()); android.text.Spannable span = (android.text.Spannable)text; span.setSpan(watcher, 0, text.Length, android.text.SpannedClass.SPAN_INCLUSIVE_INCLUSIVE ); }
protected internal override bool pageDown(android.widget.TextView widget, android.text.Spannable buffer) { android.text.Layout layout = widget.getLayout(); bool selecting = isSelecting(buffer); int targetY = getCurrentLineTop(buffer, layout) + getPageHeight(widget); bool handled = false; for (; ;) { int previousSelectionEnd = android.text.Selection.getSelectionEnd(buffer); if (selecting) { android.text.Selection.extendDown(buffer, layout); } else { android.text.Selection.moveDown(buffer, layout); } if (android.text.Selection.getSelectionEnd(buffer) == previousSelectionEnd) { break; } handled = true; if (getCurrentLineTop(buffer, layout) >= targetY) { break; } } return(handled); }
// These bits are privately used by the meta key key listener. // They are deliberately assigned values outside of the representable range of an 'int' // so as not to conflict with any meta key states publicly defined by KeyEvent. /// <summary>Resets all meta state to inactive.</summary> /// <remarks>Resets all meta state to inactive.</remarks> public static void resetMetaState(android.text.Spannable text) { text.removeSpan(CAP); text.removeSpan(ALT); text.removeSpan(SYM); text.removeSpan(SELECTING); }
internal static void gatherLinks(java.util.ArrayList <android.text.util.LinkSpec> links, android.text.Spannable s, java.util.regex.Pattern pattern, string[] schemes , android.text.util.Linkify.MatchFilter matchFilter, android.text.util.Linkify.TransformFilter transformFilter) { throw new System.NotImplementedException(); }
/// <summary> /// Call this if you are a method that ignores the locked meta state /// (arrow keys, for example) and you handle a key. /// </summary> /// <remarks> /// Call this if you are a method that ignores the locked meta state /// (arrow keys, for example) and you handle a key. /// </remarks> protected internal static void resetLockedMeta(android.text.Spannable content) { resetLock(content, CAP); resetLock(content, ALT); resetLock(content, SYM); resetLock(content, SELECTING); }
public virtual bool onKeyOther(android.widget.TextView widget, android.text.Spannable text, android.view.KeyEvent @event) { int movementMetaState = getMovementMetaState(text, @event); int keyCode = @event.getKeyCode(); if (keyCode != android.view.KeyEvent.KEYCODE_UNKNOWN && @event.getAction() == android.view.KeyEvent .ACTION_MULTIPLE) { int repeat = @event.getRepeatCount(); bool handled = false; { for (int i = 0; i < repeat; i++) { if (!handleMovementKey(widget, text, keyCode, movementMetaState, @event)) { break; } handled = true; } } if (handled) { android.text.method.MetaKeyKeyListener.adjustMetaAfterKeypress(text); android.text.method.MetaKeyKeyListener.resetLockedMeta(text); } return handled; } return false; }
public static bool moveToRightEdge(android.text.Spannable text, android.text.Layout layout) { int where = findEdge(text, layout, 1); setSelection(text, where); return(true); }
public static bool extendToLeftEdge(android.text.Spannable text, android.text.Layout layout) { int where = findEdge(text, layout, -1); extendSelection(text, where); return(true); }
/// <summary> /// Move the selection end to the buffer offset physically below /// the current selection end. /// </summary> /// <remarks> /// Move the selection end to the buffer offset physically below /// the current selection end. /// </remarks> public static bool extendDown(android.text.Spannable text, android.text.Layout layout ) { int end = getSelectionEnd(text); int line = layout.getLineForOffset(end); if (line < layout.getLineCount() - 1) { int move; if (layout.getParagraphDirection(line) == layout.getParagraphDirection(line + 1)) { float h = layout.getPrimaryHorizontal(end); move = layout.getOffsetForHorizontal(line + 1, h); } else { move = layout.getLineStart(line + 1); } extendSelection(text, move); return(true); } else { if (end != text.Length) { extendSelection(text, text.Length); return(true); } } return(true); }
private static void addParagraphSpan(android.text.Spannable buffer, object what, int start, int end) { int len = buffer.Length; if (start != 0 && start != len && buffer[start - 1] != '\n') { for (start--; start > 0; start--) { if (buffer[start - 1] == '\n') { break; } } } if (end != 0 && end != len && buffer[end - 1] != '\n') { for (end++; end < len; end++) { if (buffer[end - 1] == '\n') { break; } } } buffer.setSpan(what, start, end, android.text.SpannedClass.SPAN_PARAGRAPH); }
public static int getInitialScrollY(android.widget.TextView widget, android.text.Spannable buffer) { android.text.method.Touch.DragState[] ds = buffer.getSpans <android.text.method.Touch .DragState>(0, buffer.Length); return(ds.Length > 0 ? ds[0].mScrollY : -1); }
public virtual void onSpanChanged(android.text.Spannable s, object what, int start , int end, int st, int en) { if (what == android.text.Selection.SELECTION_END) { s.removeSpan(ACTIVE); } }
public virtual void onSpanRemoved(android.text.Spannable s, object o, int start, int end) { if (o is android.text.style.UpdateLayout) { reflow(s, start, end - start, end - start); } }
/// <summary>Move the selection edge to offset <code>index</code>.</summary> /// <remarks>Move the selection edge to offset <code>index</code>.</remarks> public static void extendSelection(android.text.Spannable text, int index) { if (text.getSpanStart(SELECTION_END) != index) { text.setSpan(SELECTION_END, index, index, android.text.SpannedClass.SPAN_POINT_POINT ); } }
protected internal override bool rightWord(android.widget.TextView widget, android.text.Spannable buffer) { int selectionEnd = widget.getSelectionEnd(); mWordIterator.setCharSequence(buffer, selectionEnd, selectionEnd); return(android.text.Selection.moveToFollowing(buffer, mWordIterator, isSelecting( buffer))); }
public virtual void onSpanChanged(android.text.Spannable s, object o, int start, int end, int nstart, int nend) { if (o is android.text.style.UpdateLayout) { reflow(s, start, end - start, end - start); reflow(s, nstart, nend - nstart, nend - nstart); } }
private static void resetLock(android.text.Spannable content, object what) { int current = content.getSpanFlags(what); if (current == LOCKED) { content.removeSpan(what); } }
/// <summary> /// Gets the meta state used for movement using the modifiers tracked by the text /// buffer as well as those present in the key event. /// </summary> /// <remarks> /// Gets the meta state used for movement using the modifiers tracked by the text /// buffer as well as those present in the key event. /// The movement meta state excludes the state of locked modifiers or the SHIFT key /// since they are not used by movement actions (but they may be used for selection). /// </remarks> /// <param name="buffer">The text buffer.</param> /// <param name="event">The key event.</param> /// <returns>The keyboard meta states used for movement.</returns> protected internal virtual int getMovementMetaState(android.text.Spannable buffer , android.view.KeyEvent @event) { // We ignore locked modifiers and SHIFT. int metaState = (@event.getMetaState() | android.text.method.MetaKeyKeyListener.getMetaState (buffer)) & ~(android.text.method.MetaKeyKeyListener.META_ALT_LOCKED | android.text.method.MetaKeyKeyListener .META_SYM_LOCKED); return android.view.KeyEvent.normalizeMetaState(metaState) & ~android.view.KeyEvent .META_SHIFT_MASK; }
/// <summary>Performs a scroll to top action.</summary> /// <remarks> /// Performs a scroll to top action. /// Scrolls to the top of the document. /// </remarks> /// <param name="widget">The text view.</param> /// <param name="buffer">The text buffer.</param> /// <returns>True if the event was handled.</returns> /// <hide></hide> protected internal virtual bool scrollTop(android.widget.TextView widget, android.text.Spannable buffer) { android.text.Layout layout = widget.getLayout(); if (getTopLine(widget) >= 0) { android.text.method.Touch.scrollTo(widget, layout, widget.getScrollX(), layout.getLineTop (0)); return true; } return false; }
public virtual void onSpanChanged(android.text.Spannable arg0, java.lang.Object arg1, int arg2, int arg3, int arg4, int arg5) { global::MonoJavaBridge.JNIEnv @__env = global::MonoJavaBridge.JNIEnv.ThreadEnv; if (!IsClrObject) { @__env.CallVoidMethod(this.JvmHandle, global::android.text.method.MultiTapKeyListener._onSpanChanged8123, global::MonoJavaBridge.JavaBridge.ConvertToValue(arg0), global::MonoJavaBridge.JavaBridge.ConvertToValue(arg1), global::MonoJavaBridge.JavaBridge.ConvertToValue(arg2), global::MonoJavaBridge.JavaBridge.ConvertToValue(arg3), global::MonoJavaBridge.JavaBridge.ConvertToValue(arg4), global::MonoJavaBridge.JavaBridge.ConvertToValue(arg5)); } else { @__env.CallNonVirtualVoidMethod(this.JvmHandle, global::android.text.method.MultiTapKeyListener.staticClass, global::android.text.method.MultiTapKeyListener._onSpanChanged8123, global::MonoJavaBridge.JavaBridge.ConvertToValue(arg0), global::MonoJavaBridge.JavaBridge.ConvertToValue(arg1), global::MonoJavaBridge.JavaBridge.ConvertToValue(arg2), global::MonoJavaBridge.JavaBridge.ConvertToValue(arg3), global::MonoJavaBridge.JavaBridge.ConvertToValue(arg4), global::MonoJavaBridge.JavaBridge.ConvertToValue(arg5)); } }
protected override int lookup(android.view.KeyEvent arg0, android.text.Spannable arg1) { global::MonoJavaBridge.JNIEnv @__env = global::MonoJavaBridge.JNIEnv.ThreadEnv; if (!IsClrObject) { return(@__env.CallIntMethod(this.JvmHandle, global::android.text.method.DialerKeyListener._lookup8058, global::MonoJavaBridge.JavaBridge.ConvertToValue(arg0), global::MonoJavaBridge.JavaBridge.ConvertToValue(arg1))); } else { return(@__env.CallNonVirtualIntMethod(this.JvmHandle, global::android.text.method.DialerKeyListener.staticClass, global::android.text.method.DialerKeyListener._lookup8058, global::MonoJavaBridge.JavaBridge.ConvertToValue(arg0), global::MonoJavaBridge.JavaBridge.ConvertToValue(arg1))); } }
/// <summary>Performs a scroll to line start action.</summary> /// <remarks> /// Performs a scroll to line start action. /// Scrolls to the start of the line. /// </remarks> /// <param name="widget">The text view.</param> /// <param name="buffer">The text buffer.</param> /// <returns>True if the event was handled.</returns> /// <hide></hide> protected internal virtual bool scrollLineStart(android.widget.TextView widget, android.text.Spannable buffer) { int minScrollX = getScrollBoundsLeft(widget); int scrollX = widget.getScrollX(); if (scrollX > minScrollX) { widget.scrollTo(minScrollX, widget.getScrollY()); return true; } return false; }
/// <summary>Performs a scroll to line end action.</summary> /// <remarks> /// Performs a scroll to line end action. /// Scrolls to the end of the line. /// </remarks> /// <param name="widget">The text view.</param> /// <param name="buffer">The text buffer.</param> /// <returns>True if the event was handled.</returns> /// <hide></hide> protected internal virtual bool scrollLineEnd(android.widget.TextView widget, android.text.Spannable buffer) { int maxScrollX = getScrollBoundsRight(widget) - getInnerWidth(widget); int scrollX = widget.getScrollX(); if (scrollX < maxScrollX) { widget.scrollTo(maxScrollX, widget.getScrollY()); return true; } return false; }
void android.text.SpanWatcher.onSpanChanged(android.text.Spannable arg0, java.lang.Object arg1, int arg2, int arg3, int arg4, int arg5) { global::MonoJavaBridge.JNIEnv @__env = global::MonoJavaBridge.JNIEnv.ThreadEnv; if (!IsClrObject) { @__env.CallVoidMethod(this.JvmHandle, global::android.text.SpanWatcher_._onSpanChanged7802, global::MonoJavaBridge.JavaBridge.ConvertToValue(arg0), global::MonoJavaBridge.JavaBridge.ConvertToValue(arg1), global::MonoJavaBridge.JavaBridge.ConvertToValue(arg2), global::MonoJavaBridge.JavaBridge.ConvertToValue(arg3), global::MonoJavaBridge.JavaBridge.ConvertToValue(arg4), global::MonoJavaBridge.JavaBridge.ConvertToValue(arg5)); } else { @__env.CallNonVirtualVoidMethod(this.JvmHandle, global::android.text.SpanWatcher_.staticClass, global::android.text.SpanWatcher_._onSpanChanged7802, global::MonoJavaBridge.JavaBridge.ConvertToValue(arg0), global::MonoJavaBridge.JavaBridge.ConvertToValue(arg1), global::MonoJavaBridge.JavaBridge.ConvertToValue(arg2), global::MonoJavaBridge.JavaBridge.ConvertToValue(arg3), global::MonoJavaBridge.JavaBridge.ConvertToValue(arg4), global::MonoJavaBridge.JavaBridge.ConvertToValue(arg5)); } }
public virtual bool onKeyOther(android.widget.TextView arg0, android.text.Spannable arg1, android.view.KeyEvent arg2) { global::MonoJavaBridge.JNIEnv @__env = global::MonoJavaBridge.JNIEnv.ThreadEnv; if (!IsClrObject) { return(@__env.CallBooleanMethod(this.JvmHandle, global::android.text.method.ArrowKeyMovementMethod._onKeyOther8033, global::MonoJavaBridge.JavaBridge.ConvertToValue(arg0), global::MonoJavaBridge.JavaBridge.ConvertToValue(arg1), global::MonoJavaBridge.JavaBridge.ConvertToValue(arg2))); } else { return(@__env.CallNonVirtualBooleanMethod(this.JvmHandle, global::android.text.method.ArrowKeyMovementMethod.staticClass, global::android.text.method.ArrowKeyMovementMethod._onKeyOther8033, global::MonoJavaBridge.JavaBridge.ConvertToValue(arg0), global::MonoJavaBridge.JavaBridge.ConvertToValue(arg1), global::MonoJavaBridge.JavaBridge.ConvertToValue(arg2))); } }
public override void onTakeFocus(android.widget.TextView arg0, android.text.Spannable arg1, int arg2) { global::MonoJavaBridge.JNIEnv @__env = global::MonoJavaBridge.JNIEnv.ThreadEnv; if (!IsClrObject) { @__env.CallVoidMethod(this.JvmHandle, global::android.text.method.LinkMovementMethod._onTakeFocus8089, global::MonoJavaBridge.JavaBridge.ConvertToValue(arg0), global::MonoJavaBridge.JavaBridge.ConvertToValue(arg1), global::MonoJavaBridge.JavaBridge.ConvertToValue(arg2)); } else { @__env.CallNonVirtualVoidMethod(this.JvmHandle, global::android.text.method.LinkMovementMethod.staticClass, global::android.text.method.LinkMovementMethod._onTakeFocus8089, global::MonoJavaBridge.JavaBridge.ConvertToValue(arg0), global::MonoJavaBridge.JavaBridge.ConvertToValue(arg1), global::MonoJavaBridge.JavaBridge.ConvertToValue(arg2)); } }
protected override bool right(android.widget.TextView arg0, android.text.Spannable arg1) { global::MonoJavaBridge.JNIEnv @__env = global::MonoJavaBridge.JNIEnv.ThreadEnv; if (!IsClrObject) { return(@__env.CallBooleanMethod(this.JvmHandle, global::android.text.method.LinkMovementMethod._right8083, global::MonoJavaBridge.JavaBridge.ConvertToValue(arg0), global::MonoJavaBridge.JavaBridge.ConvertToValue(arg1))); } else { return(@__env.CallNonVirtualBooleanMethod(this.JvmHandle, global::android.text.method.LinkMovementMethod.staticClass, global::android.text.method.LinkMovementMethod._right8083, global::MonoJavaBridge.JavaBridge.ConvertToValue(arg0), global::MonoJavaBridge.JavaBridge.ConvertToValue(arg1))); } }
public override bool onTouchEvent(android.widget.TextView arg0, android.text.Spannable arg1, android.view.MotionEvent arg2) { global::MonoJavaBridge.JNIEnv @__env = global::MonoJavaBridge.JNIEnv.ThreadEnv; if (!IsClrObject) { return(@__env.CallBooleanMethod(this.JvmHandle, global::android.text.method.LinkMovementMethod._onTouchEvent8086, global::MonoJavaBridge.JavaBridge.ConvertToValue(arg0), global::MonoJavaBridge.JavaBridge.ConvertToValue(arg1), global::MonoJavaBridge.JavaBridge.ConvertToValue(arg2))); } else { return(@__env.CallNonVirtualBooleanMethod(this.JvmHandle, global::android.text.method.LinkMovementMethod.staticClass, global::android.text.method.LinkMovementMethod._onTouchEvent8086, global::MonoJavaBridge.JavaBridge.ConvertToValue(arg0), global::MonoJavaBridge.JavaBridge.ConvertToValue(arg1), global::MonoJavaBridge.JavaBridge.ConvertToValue(arg2))); } }
public virtual void initialize(android.widget.TextView arg0, android.text.Spannable arg1) { global::MonoJavaBridge.JNIEnv @__env = global::MonoJavaBridge.JNIEnv.ThreadEnv; if (!IsClrObject) { @__env.CallVoidMethod(this.JvmHandle, global::android.text.method.ArrowKeyMovementMethod._initialize8028, global::MonoJavaBridge.JavaBridge.ConvertToValue(arg0), global::MonoJavaBridge.JavaBridge.ConvertToValue(arg1)); } else { @__env.CallNonVirtualVoidMethod(this.JvmHandle, global::android.text.method.ArrowKeyMovementMethod.staticClass, global::android.text.method.ArrowKeyMovementMethod._initialize8028, global::MonoJavaBridge.JavaBridge.ConvertToValue(arg0), global::MonoJavaBridge.JavaBridge.ConvertToValue(arg1)); } }
protected virtual bool down(android.widget.TextView arg0, android.text.Spannable arg1) { global::MonoJavaBridge.JNIEnv @__env = global::MonoJavaBridge.JNIEnv.ThreadEnv; if (!IsClrObject) { return(@__env.CallBooleanMethod(this.JvmHandle, global::android.text.method.ScrollingMovementMethod._down8161, global::MonoJavaBridge.JavaBridge.ConvertToValue(arg0), global::MonoJavaBridge.JavaBridge.ConvertToValue(arg1))); } else { return(@__env.CallNonVirtualBooleanMethod(this.JvmHandle, global::android.text.method.ScrollingMovementMethod.staticClass, global::android.text.method.ScrollingMovementMethod._down8161, global::MonoJavaBridge.JavaBridge.ConvertToValue(arg0), global::MonoJavaBridge.JavaBridge.ConvertToValue(arg1))); } }