-
Notifications
You must be signed in to change notification settings - Fork 0
/
InputMethodService.xml
4401 lines (4388 loc) · 303 KB
/
InputMethodService.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
<Type Name="InputMethodService" FullName="Android.InputMethodServices.InputMethodService">
<TypeSignature Language="C#" Value="public class InputMethodService : Android.InputMethodServices.AbstractInputMethodService" />
<TypeSignature Language="ILAsm" Value=".class public auto ansi beforefieldinit InputMethodService extends Android.InputMethodServices.AbstractInputMethodService" />
<TypeSignature Language="DocId" Value="T:Android.InputMethodServices.InputMethodService" />
<TypeSignature Language="F#" Value="type InputMethodService = class
 inherit AbstractInputMethodService" />
<AssemblyInfo>
<AssemblyName>Mono.Android</AssemblyName>
<AssemblyVersion>0.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Base>
<BaseTypeName>Android.InputMethodServices.AbstractInputMethodService</BaseTypeName>
</Base>
<Interfaces />
<Attributes>
<Attribute>
<AttributeName Language="C#">[Android.Runtime.Register("android/inputmethodservice/InputMethodService", DoNotGenerateAcw=true)]</AttributeName>
<AttributeName Language="F#">[<Android.Runtime.Register("android/inputmethodservice/InputMethodService", DoNotGenerateAcw=true)>]</AttributeName>
</Attribute>
</Attributes>
<Docs since="3">
<summary>InputMethodService provides a standard implementation of an InputMethod,
which final implementations can derive from and customize.</summary>
<remarks>
<para>InputMethodService provides a standard implementation of an InputMethod,
which final implementations can derive from and customize. See the
base class <c>AbstractInputMethodService</c> and the <c>InputMethod</c>
interface for more information on the basics of writing input methods.</para>
<para>In addition to the normal Service lifecycle methods, this class
introduces some new specific callbacks that most subclasses will want
to make use of:</para>
<para><ul>
<li> <c>#onInitializeInterface()</c> for user-interface initialization,
in particular to deal with configuration changes while the service is
running.
<li> <c>#onBindInput</c> to find out about switching to a new client.
<li> <c>#onStartInput</c> to deal with an input session starting with
the client.
<li> <c>#onCreateInputView()</c>, <c>#onCreateCandidatesView()</c>,
and <c>#onCreateExtractTextView()</c> for non-demand generation of the UI.
<li> <c>#onStartInputView(EditorInfo, boolean)</c> to deal with input
starting within the input area of the IME.
</ul></para>
<para>An input method has significant discretion in how it goes about its
work: the <c>android.inputmethodservice.InputMethodService</c> provides
a basic framework for standard UI elements (input view, candidates view,
and running in fullscreen mode), but it is up to a particular implementor
to decide how to use them. For example, one input method could implement
an input area with a keyboard, another could allow the user to draw text,
while a third could have no input area (and thus not be visible to the
user) but instead listen to audio and perform text to speech conversion.</para>
<para>In the implementation provided here, all of these elements are placed
together in a single window managed by the InputMethodService. It will
execute callbacks as it needs information about them, and provides APIs for
programmatic control over them. They layout of these elements is explicitly
defined:</para>
<para><ul>
<li>The soft input view, if available, is placed at the bottom of the
screen.
<li>The candidates view, if currently shown, is placed above the soft
input view.
<li>If not running fullscreen, the application is moved or resized to be
above these views; if running fullscreen, the window will completely cover
the application and its top part will contain the extract text of what is
currently being edited by the application.
</ul>
"SoftInputView"><h3>Soft Input View</h3></para>
<para>Central to most input methods is the soft input view. This is where most
user interaction occurs: pressing on soft keys, drawing characters, or
however else your input method wants to generate text. Most implementations
will simply have their own view doing all of this work, and return a new
instance of it when <c>#onCreateInputView()</c> is called. At that point,
as long as the input view is visible, you will see user interaction in
that view and can call back on the InputMethodService to interact with the
application as appropriate.</para>
<para>There are some situations where you want to decide whether or not your
soft input view should be shown to the user. This is done by implementing
the <c>#onEvaluateInputViewShown()</c> to return true or false based on
whether it should be shown in the current environment. If any of your
state has changed that may impact this, call
<c>#updateInputViewShown()</c> to have it re-evaluated. The default
implementation always shows the input view unless there is a hard
keyboard available, which is the appropriate behavior for most input
methods.</para>
<para>"CandidatesView"><h3>Candidates View</h3></para>
<para>Often while the user is generating raw text, an input method wants to
provide them with a list of possible interpretations of that text that can
be selected for use. This is accomplished with the candidates view, and
like the soft input view you implement <c>#onCreateCandidatesView()</c>
to instantiate your own view implementing your candidates UI.</para>
<para>Management of the candidates view is a little different than the input
view, because the candidates view tends to be more transient, being shown
only when there are possible candidates for the current text being entered
by the user. To control whether the candidates view is shown, you use
<c>#setCandidatesViewShown(boolean)</c>. Note that because the candidate
view tends to be shown and hidden a lot, it does not impact the application
UI in the same way as the soft input view: it will never cause application
windows to resize, only cause them to be panned if needed for the user to
see the current focus.</para>
<para>"FullscreenMode"><h3>Fullscreen Mode</h3></para>
<para>Sometimes your input method UI is too large to integrate with the
application UI, so you just want to take over the screen. This is
accomplished by switching to full-screen mode, causing the input method
window to fill the entire screen and add its own "extracted text" editor
showing the user the text that is being typed. Unlike the other UI elements,
there is a standard implementation for the extract editor that you should
not need to change. The editor is placed at the top of the IME, above the
input and candidates views.</para>
<para>Similar to the input view, you control whether the IME is running in
fullscreen mode by implementing <c>#onEvaluateFullscreenMode()</c>
to return true or false based on
whether it should be fullscreen in the current environment. If any of your
state has changed that may impact this, call
<c>#updateFullscreenMode()</c> to have it re-evaluated. The default
implementation selects fullscreen mode when the screen is in a landscape
orientation, which is appropriate behavior for most input methods that have
a significant input area.</para>
<para>When in fullscreen mode, you have some special requirements because the
user can not see the application UI. In particular, you should implement
<c>#onDisplayCompletions(CompletionInfo[])</c> to show completions
generated by your application, typically in your candidates view like you
would normally show candidates.
"GeneratingText"><h3>Generating Text</h3></para>
<para>The key part of an IME is of course generating text for the application.
This is done through calls to the
<c>android.view.inputmethod.InputConnection</c> interface to the
application, which can be retrieved from <c>#getCurrentInputConnection()</c>.
This interface allows you to generate raw key events or, if the target
supports it, directly edit in strings of candidates and committed text.</para>
<para>Information about what the target is expected and supports can be found
through the <c>android.view.inputmethod.EditorInfo</c> class, which is
retrieved with <c>#getCurrentInputEditorInfo()</c> method. The most
important part of this is <c>android.view.inputmethod.EditorInfo#inputType
EditorInfo.inputType</c>; in particular, if this is
<c>android.view.inputmethod.EditorInfo#TYPE_NULL EditorInfo.TYPE_NULL</c>,
then the target does not support complex edits and you need to only deliver
raw key events to it. An input method will also want to look at other
values here, to for example detect password mode, auto complete text views,
phone number entry, etc.</para>
<para>When the user switches between input targets, you will receive calls to
<c>#onFinishInput()</c> and <c>#onStartInput(EditorInfo, boolean)</c>.
You can use these to reset and initialize your input state for the current
target. For example, you will often want to clear any input state, and
update a soft keyboard to be appropriate for the new inputType.</para>
<para>
<format type="text/html">
<a href="https://developer.android.com/reference/android/inputmethodservice/InputMethodService" title="Reference documentation">Java documentation for <code>android.inputmethodservice.InputMethodService</code>.</a>
</format>
</para>
<para>
Portions of this page are modifications based on work created and shared by the
<format type="text/html"><a href="https://developers.google.com/terms/site-policies" title="Android Open Source Project">Android Open Source Project</a></format>
and used according to terms described in the
<format type="text/html"><a href="https://creativecommons.org/licenses/by/2.5/" title="Creative Commons 2.5 Attribution License">Creative Commons 2.5 Attribution License.</a></format></para>
</remarks>
<since version="Added in API level 3" />
</Docs>
<Members>
<Member MemberName=".ctor">
<MemberSignature Language="C#" Value="public InputMethodService ();" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor() cil managed" />
<MemberSignature Language="DocId" Value="M:Android.InputMethodServices.InputMethodService.#ctor" />
<MemberType>Constructor</MemberType>
<AssemblyInfo>
<AssemblyName>Mono.Android</AssemblyName>
<AssemblyVersion>0.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute>
<AttributeName Language="C#">[Android.Runtime.Register(".ctor", "()V", "")]</AttributeName>
<AttributeName Language="F#">[<Android.Runtime.Register(".ctor", "()V", "")>]</AttributeName>
</Attribute>
</Attributes>
<Parameters />
<Docs>
<summary>
</summary>
<remarks>
<para>Portions of this page are modifications based on work created and shared by the <format type="text/html"><a href="https://developers.google.com/terms/site-policies" title="Android Open Source Project">Android Open Source Project</a></format> and used according to terms described in the <format type="text/html"><a href="https://creativecommons.org/licenses/by/2.5/" title="Creative Commons 2.5 Attribution License">Creative Commons 2.5 Attribution License.</a></format></para>
</remarks>
<since version="Added in API level 3" />
</Docs>
</Member>
<Member MemberName=".ctor">
<MemberSignature Language="C#" Value="protected InputMethodService (IntPtr javaReference, Android.Runtime.JniHandleOwnership transfer);" />
<MemberSignature Language="ILAsm" Value=".method familyhidebysig specialname rtspecialname instance void .ctor(native int javaReference, valuetype Android.Runtime.JniHandleOwnership transfer) cil managed" />
<MemberSignature Language="DocId" Value="M:Android.InputMethodServices.InputMethodService.#ctor(System.IntPtr,Android.Runtime.JniHandleOwnership)" />
<MemberSignature Language="F#" Value="new Android.InputMethodServices.InputMethodService : nativeint * Android.Runtime.JniHandleOwnership -> Android.InputMethodServices.InputMethodService" Usage="new Android.InputMethodServices.InputMethodService (javaReference, transfer)" />
<MemberType>Constructor</MemberType>
<AssemblyInfo>
<AssemblyName>Mono.Android</AssemblyName>
<AssemblyVersion>0.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Parameters>
<Parameter Name="javaReference" Type="System.IntPtr" />
<Parameter Name="transfer" Type="Android.Runtime.JniHandleOwnership" />
</Parameters>
<Docs>
<param name="javaReference">A <see cref="T:System.IntPtr" />containing a Java Native Interface (JNI) object reference.</param>
<param name="transfer">A <see cref="T:Android.Runtime.JniHandleOwnership" />indicating how to handle <paramref name="javaReference" /></param>
<summary>A constructor used when creating managed representations of JNI objects; called by the runtime.</summary>
<remarks>
<para>Portions of this page are modifications based on work created and shared by the <format type="text/html"><a href="https://developers.google.com/terms/site-policies" title="Android Open Source Project">Android Open Source Project</a></format> and used according to terms described in the <format type="text/html"><a href="https://creativecommons.org/licenses/by/2.5/" title="Creative Commons 2.5 Attribution License">Creative Commons 2.5 Attribution License.</a></format></para>
</remarks>
</Docs>
</Member>
<Member MemberName="BackDisposition">
<MemberSignature Language="C#" Value="public virtual Android.InputMethodServices.BackDisposition BackDisposition { get; set; }" />
<MemberSignature Language="ILAsm" Value=".property instance valuetype Android.InputMethodServices.BackDisposition BackDisposition" />
<MemberSignature Language="DocId" Value="P:Android.InputMethodServices.InputMethodService.BackDisposition" />
<MemberSignature Language="F#" Value="member this.BackDisposition : Android.InputMethodServices.BackDisposition with get, set" Usage="Android.InputMethodServices.InputMethodService.BackDisposition" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyName>Mono.Android</AssemblyName>
<AssemblyVersion>0.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute>
<AttributeName Language="C#">[get: Android.Runtime.Register("getBackDisposition", "()I", "GetGetBackDispositionHandler")]</AttributeName>
<AttributeName Language="F#">[<get: Android.Runtime.Register("getBackDisposition", "()I", "GetGetBackDispositionHandler")>]</AttributeName>
</Attribute>
<Attribute>
<AttributeName Language="C#">[set: Android.Runtime.Register("setBackDisposition", "(I)V", "GetSetBackDisposition_IHandler")]</AttributeName>
<AttributeName Language="F#">[<set: Android.Runtime.Register("setBackDisposition", "(I)V", "GetSetBackDisposition_IHandler")>]</AttributeName>
</Attribute>
</Attributes>
<ReturnValue>
<ReturnType>Android.InputMethodServices.BackDisposition</ReturnType>
</ReturnValue>
<Docs>
<param name="disposition">disposition mode to be set</param>
<summary>Retrieves the current disposition mode that indicates the expected back button affordance. -or- Sets the disposition mode that indicates the expected affordance for the back button.</summary>
<value>currently selected disposition mode</value>
<remarks>
<para>Property getter documentation:</para>
<para>Retrieves the current disposition mode that indicates the expected back button affordance.</para>
<para>
<format type="text/html">
<a href="https://developer.android.com/reference/android/inputmethodservice/InputMethodService#getBackDisposition()" title="Reference documentation">Java documentation for <code>android.inputmethodservice.InputMethodService.getBackDisposition()</code>.</a>
</format>
</para>
<para>Property setter documentation:</para>
<para>Sets the disposition mode that indicates the expected affordance for the back button.</para>
<para>Keep in mind that specifying this flag does not change the the default behavior of
<c>#onKeyDown(int, KeyEvent)</c>. It is IME developers' responsibility for making sure that
their custom implementation of <c>#onKeyDown(int, KeyEvent)</c> is consistent with the mode
specified to this API.</para>
<para>
<format type="text/html">
<a href="https://developer.android.com/reference/android/inputmethodservice/InputMethodService#setBackDisposition(int)" title="Reference documentation">Java documentation for <code>android.inputmethodservice.InputMethodService.setBackDisposition(int)</code>.</a>
</format>
</para>
<para>
Portions of this page are modifications based on work created and shared by the
<format type="text/html"><a href="https://developers.google.com/terms/site-policies" title="Android Open Source Project">Android Open Source Project</a></format>
and used according to terms described in the
<format type="text/html"><a href="https://creativecommons.org/licenses/by/2.5/" title="Creative Commons 2.5 Attribution License">Creative Commons 2.5 Attribution License.</a></format></para>
</remarks>
<since version="Added in API level 11" />
</Docs>
</Member>
<Member MemberName="CandidatesHiddenVisibility">
<MemberSignature Language="C#" Value="public virtual Android.Views.ViewStates CandidatesHiddenVisibility { get; }" />
<MemberSignature Language="ILAsm" Value=".property instance valuetype Android.Views.ViewStates CandidatesHiddenVisibility" />
<MemberSignature Language="DocId" Value="P:Android.InputMethodServices.InputMethodService.CandidatesHiddenVisibility" />
<MemberSignature Language="F#" Value="member this.CandidatesHiddenVisibility : Android.Views.ViewStates" Usage="Android.InputMethodServices.InputMethodService.CandidatesHiddenVisibility" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyName>Mono.Android</AssemblyName>
<AssemblyVersion>0.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute>
<AttributeName Language="C#">[get: Android.Runtime.Register("getCandidatesHiddenVisibility", "()I", "GetGetCandidatesHiddenVisibilityHandler")]</AttributeName>
<AttributeName Language="F#">[<get: Android.Runtime.Register("getCandidatesHiddenVisibility", "()I", "GetGetCandidatesHiddenVisibilityHandler")>]</AttributeName>
</Attribute>
</Attributes>
<ReturnValue>
<ReturnType>Android.Views.ViewStates</ReturnType>
</ReturnValue>
<Docs>
<summary>Returns the visibility mode (either <c>View#INVISIBLE View.INVISIBLE</c>
or <c>View#GONE View.GONE</c>) of the candidates view when it is not
shown.</summary>
<value>To be added.</value>
<remarks>
<para>Returns the visibility mode (either <c>View#INVISIBLE View.INVISIBLE</c>
or <c>View#GONE View.GONE</c>) of the candidates view when it is not
shown. The default implementation returns GONE when
<c>#isExtractViewShown</c> returns true,
otherwise INVISIBLE. Be careful if you change this to return GONE in
other situations -- if showing or hiding the candidates view causes
your window to resize, this can cause temporary drawing artifacts as
the resize takes place.</para>
<para>
<format type="text/html">
<a href="https://developer.android.com/reference/android/inputmethodservice/InputMethodService#getCandidatesHiddenVisibility()" title="Reference documentation">Java documentation for <code>android.inputmethodservice.InputMethodService.getCandidatesHiddenVisibility()</code>.</a>
</format>
</para>
<para>
Portions of this page are modifications based on work created and shared by the
<format type="text/html"><a href="https://developers.google.com/terms/site-policies" title="Android Open Source Project">Android Open Source Project</a></format>
and used according to terms described in the
<format type="text/html"><a href="https://creativecommons.org/licenses/by/2.5/" title="Creative Commons 2.5 Attribution License">Creative Commons 2.5 Attribution License.</a></format></para>
</remarks>
<since version="Added in API level 3" />
</Docs>
</Member>
<Member MemberName="CurrentInputBinding">
<MemberSignature Language="C#" Value="public virtual Android.Views.InputMethods.InputBinding? CurrentInputBinding { get; }" />
<MemberSignature Language="ILAsm" Value=".property instance class Android.Views.InputMethods.InputBinding CurrentInputBinding" />
<MemberSignature Language="DocId" Value="P:Android.InputMethodServices.InputMethodService.CurrentInputBinding" />
<MemberSignature Language="F#" Value="member this.CurrentInputBinding : Android.Views.InputMethods.InputBinding" Usage="Android.InputMethodServices.InputMethodService.CurrentInputBinding" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyName>Mono.Android</AssemblyName>
<AssemblyVersion>0.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute>
<AttributeName Language="C#">[get: Android.Runtime.Register("getCurrentInputBinding", "()Landroid/view/inputmethod/InputBinding;", "GetGetCurrentInputBindingHandler")]</AttributeName>
<AttributeName Language="F#">[<get: Android.Runtime.Register("getCurrentInputBinding", "()Landroid/view/inputmethod/InputBinding;", "GetGetCurrentInputBindingHandler")>]</AttributeName>
</Attribute>
</Attributes>
<ReturnValue>
<ReturnType>Android.Views.InputMethods.InputBinding</ReturnType>
</ReturnValue>
<Docs>
<summary>Return the currently active InputBinding for the input method, or
null if there is none.</summary>
<value>To be added.</value>
<remarks>
<para>Return the currently active InputBinding for the input method, or
null if there is none.</para>
<para>
<format type="text/html">
<a href="https://developer.android.com/reference/android/inputmethodservice/InputMethodService#getCurrentInputBinding()" title="Reference documentation">Java documentation for <code>android.inputmethodservice.InputMethodService.getCurrentInputBinding()</code>.</a>
</format>
</para>
<para>
Portions of this page are modifications based on work created and shared by the
<format type="text/html"><a href="https://developers.google.com/terms/site-policies" title="Android Open Source Project">Android Open Source Project</a></format>
and used according to terms described in the
<format type="text/html"><a href="https://creativecommons.org/licenses/by/2.5/" title="Creative Commons 2.5 Attribution License">Creative Commons 2.5 Attribution License.</a></format></para>
</remarks>
<since version="Added in API level 3" />
</Docs>
</Member>
<Member MemberName="CurrentInputConnection">
<MemberSignature Language="C#" Value="public virtual Android.Views.InputMethods.IInputConnection? CurrentInputConnection { get; }" />
<MemberSignature Language="ILAsm" Value=".property instance class Android.Views.InputMethods.IInputConnection CurrentInputConnection" />
<MemberSignature Language="DocId" Value="P:Android.InputMethodServices.InputMethodService.CurrentInputConnection" />
<MemberSignature Language="F#" Value="member this.CurrentInputConnection : Android.Views.InputMethods.IInputConnection" Usage="Android.InputMethodServices.InputMethodService.CurrentInputConnection" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyName>Mono.Android</AssemblyName>
<AssemblyVersion>0.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute>
<AttributeName Language="C#">[get: Android.Runtime.Register("getCurrentInputConnection", "()Landroid/view/inputmethod/InputConnection;", "GetGetCurrentInputConnectionHandler")]</AttributeName>
<AttributeName Language="F#">[<get: Android.Runtime.Register("getCurrentInputConnection", "()Landroid/view/inputmethod/InputConnection;", "GetGetCurrentInputConnectionHandler")>]</AttributeName>
</Attribute>
</Attributes>
<ReturnValue>
<ReturnType>Android.Views.InputMethods.IInputConnection</ReturnType>
</ReturnValue>
<Docs>
<summary>Retrieve the currently active InputConnection that is bound to
the input method, or null if there is none.</summary>
<value>To be added.</value>
<remarks>
<para>Retrieve the currently active InputConnection that is bound to
the input method, or null if there is none.</para>
<para>
<format type="text/html">
<a href="https://developer.android.com/reference/android/inputmethodservice/InputMethodService#getCurrentInputConnection()" title="Reference documentation">Java documentation for <code>android.inputmethodservice.InputMethodService.getCurrentInputConnection()</code>.</a>
</format>
</para>
<para>
Portions of this page are modifications based on work created and shared by the
<format type="text/html"><a href="https://developers.google.com/terms/site-policies" title="Android Open Source Project">Android Open Source Project</a></format>
and used according to terms described in the
<format type="text/html"><a href="https://creativecommons.org/licenses/by/2.5/" title="Creative Commons 2.5 Attribution License">Creative Commons 2.5 Attribution License.</a></format></para>
</remarks>
<since version="Added in API level 3" />
</Docs>
</Member>
<Member MemberName="CurrentInputEditorInfo">
<MemberSignature Language="C#" Value="public virtual Android.Views.InputMethods.EditorInfo? CurrentInputEditorInfo { get; }" />
<MemberSignature Language="ILAsm" Value=".property instance class Android.Views.InputMethods.EditorInfo CurrentInputEditorInfo" />
<MemberSignature Language="DocId" Value="P:Android.InputMethodServices.InputMethodService.CurrentInputEditorInfo" />
<MemberSignature Language="F#" Value="member this.CurrentInputEditorInfo : Android.Views.InputMethods.EditorInfo" Usage="Android.InputMethodServices.InputMethodService.CurrentInputEditorInfo" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyName>Mono.Android</AssemblyName>
<AssemblyVersion>0.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute>
<AttributeName Language="C#">[get: Android.Runtime.Register("getCurrentInputEditorInfo", "()Landroid/view/inputmethod/EditorInfo;", "GetGetCurrentInputEditorInfoHandler")]</AttributeName>
<AttributeName Language="F#">[<get: Android.Runtime.Register("getCurrentInputEditorInfo", "()Landroid/view/inputmethod/EditorInfo;", "GetGetCurrentInputEditorInfoHandler")>]</AttributeName>
</Attribute>
</Attributes>
<ReturnValue>
<ReturnType>Android.Views.InputMethods.EditorInfo</ReturnType>
</ReturnValue>
<Docs>
<summary>
</summary>
<value>To be added.</value>
<remarks>
<para>Portions of this page are modifications based on work created and shared by the <format type="text/html"><a href="https://developers.google.com/terms/site-policies" title="Android Open Source Project">Android Open Source Project</a></format> and used according to terms described in the <format type="text/html"><a href="https://creativecommons.org/licenses/by/2.5/" title="Creative Commons 2.5 Attribution License">Creative Commons 2.5 Attribution License.</a></format></para>
</remarks>
<since version="Added in API level 3" />
</Docs>
</Member>
<Member MemberName="CurrentInputStarted">
<MemberSignature Language="C#" Value="public virtual bool CurrentInputStarted { get; }" />
<MemberSignature Language="ILAsm" Value=".property instance bool CurrentInputStarted" />
<MemberSignature Language="DocId" Value="P:Android.InputMethodServices.InputMethodService.CurrentInputStarted" />
<MemberSignature Language="F#" Value="member this.CurrentInputStarted : bool" Usage="Android.InputMethodServices.InputMethodService.CurrentInputStarted" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyName>Mono.Android</AssemblyName>
<AssemblyVersion>0.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute>
<AttributeName Language="C#">[get: Android.Runtime.Register("getCurrentInputStarted", "()Z", "GetGetCurrentInputStartedHandler")]</AttributeName>
<AttributeName Language="F#">[<get: Android.Runtime.Register("getCurrentInputStarted", "()Z", "GetGetCurrentInputStartedHandler")>]</AttributeName>
</Attribute>
</Attributes>
<ReturnValue>
<ReturnType>System.Boolean</ReturnType>
</ReturnValue>
<Docs>
<summary>
</summary>
<value>To be added.</value>
<remarks>
<para>Portions of this page are modifications based on work created and shared by the <format type="text/html"><a href="https://developers.google.com/terms/site-policies" title="Android Open Source Project">Android Open Source Project</a></format> and used according to terms described in the <format type="text/html"><a href="https://creativecommons.org/licenses/by/2.5/" title="Creative Commons 2.5 Attribution License">Creative Commons 2.5 Attribution License.</a></format></para>
</remarks>
<since version="Added in API level 3" />
</Docs>
</Member>
<Member MemberName="EnableHardwareAcceleration">
<MemberSignature Language="C#" Value="public virtual bool EnableHardwareAcceleration ();" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance bool EnableHardwareAcceleration() cil managed" />
<MemberSignature Language="DocId" Value="M:Android.InputMethodServices.InputMethodService.EnableHardwareAcceleration" />
<MemberSignature Language="F#" Value="abstract member EnableHardwareAcceleration : unit -> bool
override this.EnableHardwareAcceleration : unit -> bool" Usage="inputMethodService.EnableHardwareAcceleration " />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>Mono.Android</AssemblyName>
<AssemblyVersion>0.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute>
<AttributeName Language="C#">[Android.Runtime.Register("enableHardwareAcceleration", "()Z", "GetEnableHardwareAccelerationHandler")]</AttributeName>
<AttributeName Language="F#">[<Android.Runtime.Register("enableHardwareAcceleration", "()Z", "GetEnableHardwareAccelerationHandler")>]</AttributeName>
</Attribute>
<Attribute>
<AttributeName Language="C#">[System.Obsolete("deprecated")]</AttributeName>
<AttributeName Language="F#">[<System.Obsolete("deprecated")>]</AttributeName>
</Attribute>
</Attributes>
<ReturnValue>
<ReturnType>System.Boolean</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<summary>You can call this to try to enable accelerated drawing for your IME.</summary>
<returns>
<c>true</c> if accelerated drawing is successfully enabled otherwise <c>false</c>.
On API 21 and later devices the return value is basically just a hint and your IME
does not need to change the behavior based on the it</returns>
<remarks>
<para>You can call this to try to enable accelerated drawing for your IME. This must be set before
<c>#onCreate()</c>, so you will typically call it in your constructor. It is not always
possible to use hardware accelerated drawing in an IME (for example on low-end devices that
do not have the resources to support this), so the call <c>true</c> if it succeeds otherwise
<c>false</c> if you will need to draw in software. You must be able to handle either case.</para>
<para>In API 21 and later, system may automatically enable hardware accelerated drawing for your
IME on capable devices even if this method is not explicitly called. Make sure that your IME
is able to handle either case.</para>
<para>This member is deprecated. Starting in API 21, hardware acceleration is always enabled on capable devices</para>
<para>
<format type="text/html">
<a href="https://developer.android.com/reference/android/inputmethodservice/InputMethodService#enableHardwareAcceleration()" title="Reference documentation">Java documentation for <code>android.inputmethodservice.InputMethodService.enableHardwareAcceleration()</code>.</a>
</format>
</para>
<para>
Portions of this page are modifications based on work created and shared by the
<format type="text/html"><a href="https://developers.google.com/terms/site-policies" title="Android Open Source Project">Android Open Source Project</a></format>
and used according to terms described in the
<format type="text/html"><a href="https://creativecommons.org/licenses/by/2.5/" title="Creative Commons 2.5 Attribution License">Creative Commons 2.5 Attribution License.</a></format></para>
</remarks>
<since version="Added in API level 17" />
</Docs>
</Member>
<Member MemberName="ExtractViewShown">
<MemberSignature Language="C#" Value="public virtual bool ExtractViewShown { get; set; }" />
<MemberSignature Language="ILAsm" Value=".property instance bool ExtractViewShown" />
<MemberSignature Language="DocId" Value="P:Android.InputMethodServices.InputMethodService.ExtractViewShown" />
<MemberSignature Language="F#" Value="member this.ExtractViewShown : bool with get, set" Usage="Android.InputMethodServices.InputMethodService.ExtractViewShown" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyName>Mono.Android</AssemblyName>
<AssemblyVersion>0.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute>
<AttributeName Language="C#">[get: Android.Runtime.Register("isExtractViewShown", "()Z", "GetIsExtractViewShownHandler")]</AttributeName>
<AttributeName Language="F#">[<get: Android.Runtime.Register("isExtractViewShown", "()Z", "GetIsExtractViewShownHandler")>]</AttributeName>
</Attribute>
<Attribute>
<AttributeName Language="C#">[set: Android.Runtime.Register("setExtractViewShown", "(Z)V", "GetSetExtractViewShown_ZHandler")]</AttributeName>
<AttributeName Language="F#">[<set: Android.Runtime.Register("setExtractViewShown", "(Z)V", "GetSetExtractViewShown_ZHandler")>]</AttributeName>
</Attribute>
</Attributes>
<ReturnValue>
<ReturnType>System.Boolean</ReturnType>
</ReturnValue>
<Docs>
<summary>Return whether the fullscreen extract view is shown. -or- Controls the visibility of the extracted text area.</summary>
<value>To be added.</value>
<remarks>
<para>Property getter documentation:</para>
<para>Return whether the fullscreen extract view is shown. This will only
return true if <c>#isFullscreenMode()</c> returns true, and in that
case its value depends on the last call to
<c>#setExtractViewShown(boolean)</c>. This effectively lets you
determine if the application window is entirely covered (when this
returns true) or if some part of it may be shown (if this returns
false, though if <c>#isFullscreenMode()</c> returns true in that case
then it is probably only a sliver of the application).</para>
<para>
<format type="text/html">
<a href="https://developer.android.com/reference/android/inputmethodservice/InputMethodService#isExtractViewShown()" title="Reference documentation">Java documentation for <code>android.inputmethodservice.InputMethodService.isExtractViewShown()</code>.</a>
</format>
</para>
<para>Property setter documentation:</para>
<para>Controls the visibility of the extracted text area. This only applies
when the input method is in fullscreen mode, and thus showing extracted
text. When false, the extracted text will not be shown, allowing some
of the application to be seen behind. This is normally set for you
by <c>#onUpdateExtractingVisibility</c>. This controls the visibility
of both the extracted text and candidate view; the latter since it is
not useful if there is no text to see.</para>
<para>
<format type="text/html">
<a href="https://developer.android.com/reference/android/inputmethodservice/InputMethodService#setExtractViewShown(boolean)" title="Reference documentation">Java documentation for <code>android.inputmethodservice.InputMethodService.setExtractViewShown(boolean)</code>.</a>
</format>
</para>
<para>
Portions of this page are modifications based on work created and shared by the
<format type="text/html"><a href="https://developers.google.com/terms/site-policies" title="Android Open Source Project">Android Open Source Project</a></format>
and used according to terms described in the
<format type="text/html"><a href="https://creativecommons.org/licenses/by/2.5/" title="Creative Commons 2.5 Attribution License">Creative Commons 2.5 Attribution License.</a></format></para>
</remarks>
<since version="Added in API level 3" />
</Docs>
</Member>
<Member MemberName="FinishStylusHandwriting">
<MemberSignature Language="C#" Value="public void FinishStylusHandwriting ();" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig instance void FinishStylusHandwriting() cil managed" />
<MemberSignature Language="DocId" Value="M:Android.InputMethodServices.InputMethodService.FinishStylusHandwriting" />
<MemberSignature Language="F#" Value="member this.FinishStylusHandwriting : unit -> unit" Usage="inputMethodService.FinishStylusHandwriting " />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>Mono.Android</AssemblyName>
<AssemblyVersion>0.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute>
<AttributeName Language="C#">[Android.Runtime.Register("finishStylusHandwriting", "()V", "", ApiSince=33)]</AttributeName>
<AttributeName Language="F#">[<Android.Runtime.Register("finishStylusHandwriting", "()V", "", ApiSince=33)>]</AttributeName>
</Attribute>
<Attribute>
<AttributeName Language="C#">[System.Runtime.Versioning.SupportedOSPlatform("android33.0")]</AttributeName>
<AttributeName Language="F#">[<System.Runtime.Versioning.SupportedOSPlatform("android33.0")>]</AttributeName>
</Attribute>
</Attributes>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<summary>Finish the current stylus handwriting session.</summary>
<remarks>
<para>Finish the current stylus handwriting session.
This dismisses the <c>#getStylusHandwritingWindow ink window</c> and stops intercepting
stylus <c>MotionEvent</c>s.
Note for IME developers: Call this method at any time to finish current handwriting session.
Generally, this should be invoked after a short timeout, giving the user enough time
to start the next stylus stroke, if any. By default, system will time-out after few seconds.
To override default timeout, use <c>#setStylusHandwritingSessionTimeout(Duration)</c>.
Handwriting session will be finished by framework on next <c>#onFinishInput()</c>.</para>
<para>
<format type="text/html">
<a href="https://developer.android.com/reference/android/inputmethodservice/InputMethodService#finishStylusHandwriting()" title="Reference documentation">Java documentation for <code>android.inputmethodservice.InputMethodService.finishStylusHandwriting()</code>.</a>
</format>
</para>
<para>
Portions of this page are modifications based on work created and shared by the
<format type="text/html"><a href="https://developers.google.com/terms/site-policies" title="Android Open Source Project">Android Open Source Project</a></format>
and used according to terms described in the
<format type="text/html"><a href="https://creativecommons.org/licenses/by/2.5/" title="Creative Commons 2.5 Attribution License">Creative Commons 2.5 Attribution License.</a></format></para>
</remarks>
</Docs>
</Member>
<Member MemberName="GetTextForImeAction">
<MemberSignature Language="C#" Value="public string? GetTextForImeAction (Android.Views.InputMethods.ImeAction imeOptions);" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig instance string GetTextForImeAction(valuetype Android.Views.InputMethods.ImeAction imeOptions) cil managed" />
<MemberSignature Language="DocId" Value="M:Android.InputMethodServices.InputMethodService.GetTextForImeAction(Android.Views.InputMethods.ImeAction)" />
<MemberSignature Language="F#" Value="member this.GetTextForImeAction : Android.Views.InputMethods.ImeAction -> string" Usage="inputMethodService.GetTextForImeAction imeOptions" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>Mono.Android</AssemblyName>
<AssemblyVersion>0.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.String</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="imeOptions" Type="Android.Views.InputMethods.ImeAction">
<Attributes>
<Attribute>
<AttributeName Language="C#">[Android.Runtime.GeneratedEnum]</AttributeName>
<AttributeName Language="F#">[<Android.Runtime.GeneratedEnum>]</AttributeName>
</Attribute>
</Attributes>
</Parameter>
</Parameters>
<Docs>
<param name="imeOptions">The value from <c>EditorInfo#imeOptions EditorInfo.imeOptions</c>.</param>
<summary>Return text that can be used as a button label for the given
<c>EditorInfo#imeOptions EditorInfo.imeOptions</c>.</summary>
<returns>Returns a label to use, or null if there is no action.</returns>
<remarks>
<para>Return text that can be used as a button label for the given
<c>EditorInfo#imeOptions EditorInfo.imeOptions</c>. Returns null
if there is no action requested. Note that there is no guarantee that
the returned text will be relatively short, so you probably do not
want to use it as text on a soft keyboard key label.</para>
<para>
<format type="text/html">
<a href="https://developer.android.com/reference/android/inputmethodservice/InputMethodService#getTextForImeAction(int)" title="Reference documentation">Java documentation for <code>android.inputmethodservice.InputMethodService.getTextForImeAction(int)</code>.</a>
</format>
</para>
<para>
Portions of this page are modifications based on work created and shared by the
<format type="text/html"><a href="https://developers.google.com/terms/site-policies" title="Android Open Source Project">Android Open Source Project</a></format>
and used according to terms described in the
<format type="text/html"><a href="https://creativecommons.org/licenses/by/2.5/" title="Creative Commons 2.5 Attribution License">Creative Commons 2.5 Attribution License.</a></format></para>
</remarks>
</Docs>
</Member>
<Member MemberName="GetTextForImeActionFormatted">
<MemberSignature Language="C#" Value="public virtual Java.Lang.ICharSequence? GetTextForImeActionFormatted (Android.Views.InputMethods.ImeAction imeOptions);" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class Java.Lang.ICharSequence GetTextForImeActionFormatted(valuetype Android.Views.InputMethods.ImeAction imeOptions) cil managed" />
<MemberSignature Language="DocId" Value="M:Android.InputMethodServices.InputMethodService.GetTextForImeActionFormatted(Android.Views.InputMethods.ImeAction)" />
<MemberSignature Language="F#" Value="abstract member GetTextForImeActionFormatted : Android.Views.InputMethods.ImeAction -> Java.Lang.ICharSequence
override this.GetTextForImeActionFormatted : Android.Views.InputMethods.ImeAction -> Java.Lang.ICharSequence" Usage="inputMethodService.GetTextForImeActionFormatted imeOptions" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>Mono.Android</AssemblyName>
<AssemblyVersion>0.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute>
<AttributeName Language="C#">[Android.Runtime.Register("getTextForImeAction", "(I)Ljava/lang/CharSequence;", "GetGetTextForImeAction_IHandler")]</AttributeName>
<AttributeName Language="F#">[<Android.Runtime.Register("getTextForImeAction", "(I)Ljava/lang/CharSequence;", "GetGetTextForImeAction_IHandler")>]</AttributeName>
</Attribute>
</Attributes>
<ReturnValue>
<ReturnType>Java.Lang.ICharSequence</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="imeOptions" Type="Android.Views.InputMethods.ImeAction">
<Attributes>
<Attribute>
<AttributeName Language="C#">[Android.Runtime.GeneratedEnum]</AttributeName>
<AttributeName Language="F#">[<Android.Runtime.GeneratedEnum>]</AttributeName>
</Attribute>
</Attributes>
</Parameter>
</Parameters>
<Docs>
<param name="imeOptions">The value from <c>EditorInfo#imeOptions EditorInfo.imeOptions</c>.</param>
<summary>Return text that can be used as a button label for the given
<c>EditorInfo#imeOptions EditorInfo.imeOptions</c>.</summary>
<returns>Returns a label to use, or null if there is no action.</returns>
<remarks>
<para>Return text that can be used as a button label for the given
<c>EditorInfo#imeOptions EditorInfo.imeOptions</c>. Returns null
if there is no action requested. Note that there is no guarantee that
the returned text will be relatively short, so you probably do not
want to use it as text on a soft keyboard key label.</para>
<para>
<format type="text/html">
<a href="https://developer.android.com/reference/android/inputmethodservice/InputMethodService#getTextForImeAction(int)" title="Reference documentation">Java documentation for <code>android.inputmethodservice.InputMethodService.getTextForImeAction(int)</code>.</a>
</format>
</para>
<para>
Portions of this page are modifications based on work created and shared by the
<format type="text/html"><a href="https://developers.google.com/terms/site-policies" title="Android Open Source Project">Android Open Source Project</a></format>
and used according to terms described in the
<format type="text/html"><a href="https://creativecommons.org/licenses/by/2.5/" title="Creative Commons 2.5 Attribution License">Creative Commons 2.5 Attribution License.</a></format></para>
</remarks>
<since version="Added in API level 3" />
</Docs>
</Member>
<Member MemberName="HideStatusIcon">
<MemberSignature Language="C#" Value="public virtual void HideStatusIcon ();" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance void HideStatusIcon() cil managed" />
<MemberSignature Language="DocId" Value="M:Android.InputMethodServices.InputMethodService.HideStatusIcon" />
<MemberSignature Language="F#" Value="abstract member HideStatusIcon : unit -> unit
override this.HideStatusIcon : unit -> unit" Usage="inputMethodService.HideStatusIcon " />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>Mono.Android</AssemblyName>
<AssemblyVersion>0.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute>
<AttributeName Language="C#">[Android.Runtime.Register("hideStatusIcon", "()V", "GetHideStatusIconHandler")]</AttributeName>
<AttributeName Language="F#">[<Android.Runtime.Register("hideStatusIcon", "()V", "GetHideStatusIconHandler")>]</AttributeName>
</Attribute>
</Attributes>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<summary>
</summary>
<remarks>
<para>Portions of this page are modifications based on work created and shared by the <format type="text/html"><a href="https://developers.google.com/terms/site-policies" title="Android Open Source Project">Android Open Source Project</a></format> and used according to terms described in the <format type="text/html"><a href="https://creativecommons.org/licenses/by/2.5/" title="Creative Commons 2.5 Attribution License">Creative Commons 2.5 Attribution License.</a></format></para>
</remarks>
<since version="Added in API level 3" />
</Docs>
</Member>
<Member MemberName="HideWindow">
<MemberSignature Language="C#" Value="public virtual void HideWindow ();" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance void HideWindow() cil managed" />
<MemberSignature Language="DocId" Value="M:Android.InputMethodServices.InputMethodService.HideWindow" />
<MemberSignature Language="F#" Value="abstract member HideWindow : unit -> unit
override this.HideWindow : unit -> unit" Usage="inputMethodService.HideWindow " />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>Mono.Android</AssemblyName>
<AssemblyVersion>0.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute>
<AttributeName Language="C#">[Android.Runtime.Register("hideWindow", "()V", "GetHideWindowHandler")]</AttributeName>
<AttributeName Language="F#">[<Android.Runtime.Register("hideWindow", "()V", "GetHideWindowHandler")>]</AttributeName>
</Attribute>
</Attributes>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<summary>
</summary>
<remarks>
<para>Portions of this page are modifications based on work created and shared by the <format type="text/html"><a href="https://developers.google.com/terms/site-policies" title="Android Open Source Project">Android Open Source Project</a></format> and used according to terms described in the <format type="text/html"><a href="https://creativecommons.org/licenses/by/2.5/" title="Creative Commons 2.5 Attribution License">Creative Commons 2.5 Attribution License.</a></format></para>
</remarks>
<since version="Added in API level 3" />
</Docs>
</Member>
<Member MemberName="InputMethodWindowRecommendedHeight">
<MemberSignature Language="C#" Value="public virtual int InputMethodWindowRecommendedHeight { get; }" />
<MemberSignature Language="ILAsm" Value=".property instance int32 InputMethodWindowRecommendedHeight" />
<MemberSignature Language="DocId" Value="P:Android.InputMethodServices.InputMethodService.InputMethodWindowRecommendedHeight" />
<MemberSignature Language="F#" Value="member this.InputMethodWindowRecommendedHeight : int" Usage="Android.InputMethodServices.InputMethodService.InputMethodWindowRecommendedHeight" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyName>Mono.Android</AssemblyName>
<AssemblyVersion>0.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute>
<AttributeName Language="C#">[System.Runtime.Versioning.ObsoletedOSPlatform("android29.0")]</AttributeName>
<AttributeName Language="F#">[<System.Runtime.Versioning.ObsoletedOSPlatform("android29.0")>]</AttributeName>
</Attribute>
<Attribute>
<AttributeName Language="C#">[get: Android.Runtime.Register("getInputMethodWindowRecommendedHeight", "()I", "GetGetInputMethodWindowRecommendedHeightHandler")]</AttributeName>
<AttributeName Language="F#">[<get: Android.Runtime.Register("getInputMethodWindowRecommendedHeight", "()I", "GetGetInputMethodWindowRecommendedHeightHandler")>]</AttributeName>
</Attribute>
</Attributes>
<ReturnValue>
<ReturnType>System.Int32</ReturnType>
</ReturnValue>
<Docs>
<summary>Aimed to return the previous input method's <c>Insets#contentTopInsets</c>, but its actual
semantics has never been well defined.</summary>
<value>on Android <c>android.os.Build.VERSION_CODES#Q</c> and later devices this method
always returns <c>0</c></value>
<remarks>
<para>Aimed to return the previous input method's <c>Insets#contentTopInsets</c>, but its actual
semantics has never been well defined.</para>
<para>Note that the previous document clearly mentioned that this method could return <c>0</c>
at any time for whatever reason. Now this method is just always returning <c>0</c>.</para>
<para>This member is deprecated. the actual behavior of this method has never been well defined. You cannot use
this method in a reliable and predictable way</para>
<para>
<format type="text/html">
<a href="https://developer.android.com/reference/android/inputmethodservice/InputMethodService#getInputMethodWindowRecommendedHeight()" title="Reference documentation">Java documentation for <code>android.inputmethodservice.InputMethodService.getInputMethodWindowRecommendedHeight()</code>.</a>
</format>
</para>
<para>
Portions of this page are modifications based on work created and shared by the
<format type="text/html"><a href="https://developers.google.com/terms/site-policies" title="Android Open Source Project">Android Open Source Project</a></format>
and used according to terms described in the
<format type="text/html"><a href="https://creativecommons.org/licenses/by/2.5/" title="Creative Commons 2.5 Attribution License">Creative Commons 2.5 Attribution License.</a></format></para>
</remarks>
</Docs>
</Member>
<Member MemberName="IsFullscreenMode">
<MemberSignature Language="C#" Value="public virtual bool IsFullscreenMode { get; }" />
<MemberSignature Language="ILAsm" Value=".property instance bool IsFullscreenMode" />
<MemberSignature Language="DocId" Value="P:Android.InputMethodServices.InputMethodService.IsFullscreenMode" />
<MemberSignature Language="F#" Value="member this.IsFullscreenMode : bool" Usage="Android.InputMethodServices.InputMethodService.IsFullscreenMode" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyName>Mono.Android</AssemblyName>
<AssemblyVersion>0.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute>
<AttributeName Language="C#">[get: Android.Runtime.Register("isFullscreenMode", "()Z", "GetIsFullscreenModeHandler")]</AttributeName>
<AttributeName Language="F#">[<get: Android.Runtime.Register("isFullscreenMode", "()Z", "GetIsFullscreenModeHandler")>]</AttributeName>
</Attribute>
</Attributes>
<ReturnValue>
<ReturnType>System.Boolean</ReturnType>
</ReturnValue>
<Docs>
<summary>Return whether the input method is <em>currently</em> running in
fullscreen mode.</summary>
<value>To be added.</value>
<remarks>
<para>Return whether the input method is <em>currently</em> running in
fullscreen mode. This is the mode that was last determined and
applied by <c>#updateFullscreenMode()</c>.</para>
<para>
<format type="text/html">
<a href="https://developer.android.com/reference/android/inputmethodservice/InputMethodService#isFullscreenMode()" title="Reference documentation">Java documentation for <code>android.inputmethodservice.InputMethodService.isFullscreenMode()</code>.</a>
</format>
</para>
<para>
Portions of this page are modifications based on work created and shared by the
<format type="text/html"><a href="https://developers.google.com/terms/site-policies" title="Android Open Source Project">Android Open Source Project</a></format>
and used according to terms described in the
<format type="text/html"><a href="https://creativecommons.org/licenses/by/2.5/" title="Creative Commons 2.5 Attribution License">Creative Commons 2.5 Attribution License.</a></format></para>
</remarks>
<since version="Added in API level 3" />
</Docs>
</Member>
<Member MemberName="IsInputViewShown">
<MemberSignature Language="C#" Value="public virtual bool IsInputViewShown { get; }" />
<MemberSignature Language="ILAsm" Value=".property instance bool IsInputViewShown" />
<MemberSignature Language="DocId" Value="P:Android.InputMethodServices.InputMethodService.IsInputViewShown" />
<MemberSignature Language="F#" Value="member this.IsInputViewShown : bool" Usage="Android.InputMethodServices.InputMethodService.IsInputViewShown" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyName>Mono.Android</AssemblyName>
<AssemblyVersion>0.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute>
<AttributeName Language="C#">[get: Android.Runtime.Register("isInputViewShown", "()Z", "GetIsInputViewShownHandler")]</AttributeName>
<AttributeName Language="F#">[<get: Android.Runtime.Register("isInputViewShown", "()Z", "GetIsInputViewShownHandler")>]</AttributeName>
</Attribute>
</Attributes>
<ReturnValue>
<ReturnType>System.Boolean</ReturnType>
</ReturnValue>
<Docs>
<summary>Return whether the soft input view is <em>currently</em> shown to the
user.</summary>
<value>To be added.</value>
<remarks>
<para>Return whether the soft input view is <em>currently</em> shown to the
user. This is the state that was last determined and
applied by <c>#updateInputViewShown()</c>.</para>
<para>
<format type="text/html">
<a href="https://developer.android.com/reference/android/inputmethodservice/InputMethodService#isInputViewShown()" title="Reference documentation">Java documentation for <code>android.inputmethodservice.InputMethodService.isInputViewShown()</code>.</a>
</format>
</para>
<para>
Portions of this page are modifications based on work created and shared by the
<format type="text/html"><a href="https://developers.google.com/terms/site-policies" title="Android Open Source Project">Android Open Source Project</a></format>
and used according to terms described in the
<format type="text/html"><a href="https://creativecommons.org/licenses/by/2.5/" title="Creative Commons 2.5 Attribution License">Creative Commons 2.5 Attribution License.</a></format></para>
</remarks>
<since version="Added in API level 3" />
</Docs>
</Member>
<Member MemberName="IsShowInputRequested">
<MemberSignature Language="C#" Value="public virtual bool IsShowInputRequested { get; }" />
<MemberSignature Language="ILAsm" Value=".property instance bool IsShowInputRequested" />
<MemberSignature Language="DocId" Value="P:Android.InputMethodServices.InputMethodService.IsShowInputRequested" />
<MemberSignature Language="F#" Value="member this.IsShowInputRequested : bool" Usage="Android.InputMethodServices.InputMethodService.IsShowInputRequested" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyName>Mono.Android</AssemblyName>
<AssemblyVersion>0.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute>
<AttributeName Language="C#">[get: Android.Runtime.Register("isShowInputRequested", "()Z", "GetIsShowInputRequestedHandler")]</AttributeName>
<AttributeName Language="F#">[<get: Android.Runtime.Register("isShowInputRequested", "()Z", "GetIsShowInputRequestedHandler")>]</AttributeName>
</Attribute>
</Attributes>
<ReturnValue>
<ReturnType>System.Boolean</ReturnType>
</ReturnValue>
<Docs>
<summary>Returns true if we have been asked to show our input view.</summary>
<value>To be added.</value>
<remarks>
<para>Returns true if we have been asked to show our input view.</para>
<para>
<format type="text/html">
<a href="https://developer.android.com/reference/android/inputmethodservice/InputMethodService#isShowInputRequested()" title="Reference documentation">Java documentation for <code>android.inputmethodservice.InputMethodService.isShowInputRequested()</code>.</a>
</format>
</para>
<para>
Portions of this page are modifications based on work created and shared by the
<format type="text/html"><a href="https://developers.google.com/terms/site-policies" title="Android Open Source Project">Android Open Source Project</a></format>
and used according to terms described in the
<format type="text/html"><a href="https://creativecommons.org/licenses/by/2.5/" title="Creative Commons 2.5 Attribution License">Creative Commons 2.5 Attribution License.</a></format></para>
</remarks>
<since version="Added in API level 3" />
</Docs>
</Member>
<Member MemberName="JniPeerMembers">
<MemberSignature Language="C#" Value="public override Java.Interop.JniPeerMembers JniPeerMembers { get; }" />
<MemberSignature Language="ILAsm" Value=".property instance class Java.Interop.JniPeerMembers JniPeerMembers" />
<MemberSignature Language="DocId" Value="P:Android.InputMethodServices.InputMethodService.JniPeerMembers" />
<MemberSignature Language="F#" Value="member this.JniPeerMembers : Java.Interop.JniPeerMembers" Usage="Android.InputMethodServices.InputMethodService.JniPeerMembers" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyName>Mono.Android</AssemblyName>
<AssemblyVersion>0.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute>
<AttributeName Language="C#">[System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]</AttributeName>
<AttributeName Language="F#">[<System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)>]</AttributeName>
</Attribute>
<Attribute>
<AttributeName Language="C#">[System.Diagnostics.DebuggerBrowsable(System.Diagnostics.DebuggerBrowsableState.Never)]</AttributeName>
<AttributeName Language="F#">[<System.Diagnostics.DebuggerBrowsable(System.Diagnostics.DebuggerBrowsableState.Never)>]</AttributeName>
</Attribute>
</Attributes>
<ReturnValue>
<ReturnType>Java.Interop.JniPeerMembers</ReturnType>
</ReturnValue>
<Docs>
<summary>To be added.</summary>
<value>To be added.</value>
<remarks>
<para>Portions of this page are modifications based on work created and shared by the <format type="text/html"><a href="https://developers.google.com/terms/site-policies" title="Android Open Source Project">Android Open Source Project</a></format> and used according to terms described in the <format type="text/html"><a href="https://creativecommons.org/licenses/by/2.5/" title="Creative Commons 2.5 Attribution License">Creative Commons 2.5 Attribution License.</a></format></para>
</remarks>
</Docs>
</Member>
<Member MemberName="LayoutInflater">
<MemberSignature Language="C#" Value="public virtual Android.Views.LayoutInflater? LayoutInflater { get; }" />
<MemberSignature Language="ILAsm" Value=".property instance class Android.Views.LayoutInflater LayoutInflater" />
<MemberSignature Language="DocId" Value="P:Android.InputMethodServices.InputMethodService.LayoutInflater" />
<MemberSignature Language="F#" Value="member this.LayoutInflater : Android.Views.LayoutInflater" Usage="Android.InputMethodServices.InputMethodService.LayoutInflater" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyName>Mono.Android</AssemblyName>
<AssemblyVersion>0.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute>
<AttributeName Language="C#">[get: Android.Runtime.Register("getLayoutInflater", "()Landroid/view/LayoutInflater;", "GetGetLayoutInflaterHandler")]</AttributeName>
<AttributeName Language="F#">[<get: Android.Runtime.Register("getLayoutInflater", "()Landroid/view/LayoutInflater;", "GetGetLayoutInflaterHandler")>]</AttributeName>
</Attribute>
</Attributes>
<ReturnValue>
<ReturnType>Android.Views.LayoutInflater</ReturnType>
</ReturnValue>
<Docs>
<summary>
</summary>
<value>To be added.</value>
<remarks>
<para>Portions of this page are modifications based on work created and shared by the <format type="text/html"><a href="https://developers.google.com/terms/site-policies" title="Android Open Source Project">Android Open Source Project</a></format> and used according to terms described in the <format type="text/html"><a href="https://creativecommons.org/licenses/by/2.5/" title="Creative Commons 2.5 Attribution License">Creative Commons 2.5 Attribution License.</a></format></para>