Browse Source

attempt to receive input text.

Dan Walmsley 7 years ago
parent
commit
ca992b1581
2 changed files with 53 additions and 1 deletions
  1. 1 1
      src/Avalonia.Native.OSX/window.h
  2. 52 0
      src/Avalonia.Native.OSX/window.mm

+ 1 - 1
src/Avalonia.Native.OSX/window.h

@@ -11,7 +11,7 @@
 
 class WindowBaseImpl;
 
-@interface AvnView : NSView
+@interface AvnView : NSView<NSTextInputClient>
 -(AvnView*) initWithParent: (WindowBaseImpl*) parent;
 -(NSEvent*) lastMouseDownEvent;
 -(AvnPoint) translateLocalPoint:(AvnPoint)pt;

+ 52 - 0
src/Avalonia.Native.OSX/window.mm

@@ -269,6 +269,58 @@
 {
     return true;
 }
+
+- (BOOL)hasMarkedText
+{
+    return false;
+}
+
+- (NSRange)markedRange
+{
+    return NSMakeRange(NSNotFound, 0);
+}
+
+- (NSRange)selectedRange
+{
+    return NSMakeRange(NSNotFound, 0);
+}
+
+- (void)setMarkedText:(id)string selectedRange:(NSRange)selectedRange replacementRange:(NSRange)replacementRange
+{
+    
+}
+
+- (void)unmarkText
+{
+    
+}
+
+- (NSArray<NSAttributedStringKey> *)validAttributesForMarkedText
+{
+    return [NSArray new];
+}
+
+- (NSAttributedString *)attributedSubstringForProposedRange:(NSRange)range actualRange:(NSRangePointer)actualRange
+{
+    return [NSAttributedString new];
+}
+
+- (void)insertText:(id)string replacementRange:(NSRange)replacementRange
+{
+    // todo input text to avalonia
+}
+
+- (NSUInteger)characterIndexForPoint:(NSPoint)point
+{
+    return 0;
+}
+
+- (NSRect)firstRectForCharacterRange:(NSRange)range actualRange:(NSRangePointer)actualRange
+{
+    CGRect result;
+    
+    return result;
+}
 @end