Browse Source

[MacOS] [Input] use uint64 timestamp in other places, including avn.idl

pull/11096/head
Sergey Mikolaitis 3 years ago
parent
commit
d5b280453c
  1. 6
      native/Avalonia.Native/src/OSX/AvnView.mm
  2. 7
      src/Avalonia.Native/avn.idl

6
native/Avalonia.Native/src/OSX/AvnView.mm

@ -275,7 +275,7 @@
delta.Y = [event deltaY]; delta.Y = [event deltaY];
} }
uint64 timestamp = static_cast<uint64>([event timestamp] * 1000); uint64_t timestamp = static_cast<uint64_t>([event timestamp] * 1000);
auto modifiers = [self getModifiers:[event modifierFlags]]; auto modifiers = [self getModifiers:[event modifierFlags]];
if(type != Move || if(type != Move ||
@ -444,7 +444,7 @@
auto key = s_KeyMap[[event keyCode]]; auto key = s_KeyMap[[event keyCode]];
uint32_t timestamp = static_cast<uint32_t>([event timestamp] * 1000); uint64_t timestamp = static_cast<uint64_t>([event timestamp] * 1000);
auto modifiers = [self getModifiers:[event modifierFlags]]; auto modifiers = [self getModifiers:[event modifierFlags]];
if(_parent != nullptr) if(_parent != nullptr)
@ -657,7 +657,7 @@
[self unmarkText]; [self unmarkText];
uint32_t timestamp = static_cast<uint32_t>([NSDate timeIntervalSinceReferenceDate] * 1000); uint64_t timestamp = static_cast<uint64_t>([NSDate timeIntervalSinceReferenceDate] * 1000);
_lastKeyHandled = _parent->BaseEvents->RawTextInputEvent(timestamp, [text UTF8String]); _lastKeyHandled = _parent->BaseEvents->RawTextInputEvent(timestamp, [text UTF8String]);

7
src/Avalonia.Native/avn.idl

@ -1,6 +1,7 @@
@clr-namespace Avalonia.Native.Interop @clr-namespace Avalonia.Native.Interop
@clr-access internal @clr-access internal
@clr-map bool int @clr-map bool int
@clr-map u_int64_t ulong
@cpp-preamble @@ @cpp-preamble @@
#pragma once #pragma once
#include "com.h" #include "com.h"
@ -583,12 +584,12 @@ interface IAvnWindowBaseEvents : IUnknown
void Resized([const] AvnSize& size, AvnPlatformResizeReason reason); void Resized([const] AvnSize& size, AvnPlatformResizeReason reason);
void PositionChanged(AvnPoint position); void PositionChanged(AvnPoint position);
void RawMouseEvent(AvnRawMouseEventType type, void RawMouseEvent(AvnRawMouseEventType type,
uint timeStamp, u_int64_t timeStamp,
AvnInputModifiers modifiers, AvnInputModifiers modifiers,
AvnPoint point, AvnPoint point,
AvnVector delta); AvnVector delta);
bool RawKeyEvent(AvnRawKeyEventType type, uint timeStamp, AvnInputModifiers modifiers, uint key); bool RawKeyEvent(AvnRawKeyEventType type, u_int64_t timeStamp, AvnInputModifiers modifiers, uint key);
bool RawTextInputEvent(uint timeStamp, [const] char* text); bool RawTextInputEvent(u_int64_t timeStamp, [const] char* text);
void ScalingChanged(double scaling); void ScalingChanged(double scaling);
void RunRenderPriorityJobs(); void RunRenderPriorityJobs();
void LostFocus(); void LostFocus();

Loading…
Cancel
Save