Skip to content

Commit 96dd83c

Browse files
authored
Fixed for eye gaze pinch controls and fix pointer naming bug
1 parent fca5e80 commit 96dd83c

File tree

2 files changed

+14
-36
lines changed

2 files changed

+14
-36
lines changed

Assets/MRTK/Examples/Demos/EyeTracking/DemoTargetPositioning/Scripts/MoveObjByEyeGaze.cs

Lines changed: 10 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -282,63 +282,39 @@ void IMixedRealitySourceStateHandler.OnSourceDetected(SourceStateEventData event
282282

283283
void IMixedRealitySourceStateHandler.OnSourceLost(SourceStateEventData eventData)
284284
{
285-
if (IsActiveHand(eventData.InputSource.SourceName))
285+
if ((currEngagedHand == Handedness.Right && eventData.Controller.ControllerHandedness == Handedness.Right) ||
286+
(currEngagedHand == Handedness.Left && eventData.Controller.ControllerHandedness == Handedness.Left))
286287
{
287288
HandDrag_Stop();
288289
}
289290
}
290291

291292
void IMixedRealityPointerHandler.OnPointerUp(MixedRealityPointerEventData eventData)
292293
{
293-
if (IsActiveHand(eventData.InputSource.SourceName))
294+
if ((currEngagedHand == Handedness.Right && eventData.Handedness == Handedness.Right) ||
295+
(currEngagedHand == Handedness.Left && eventData.Handedness == Handedness.Left))
294296
{
295297
HandDrag_Stop();
296298
}
297299
}
298300

299301
void IMixedRealityPointerHandler.OnPointerDown(MixedRealityPointerEventData eventData)
300302
{
301-
if (SetActiveHand(eventData.InputSource.SourceName))
302-
{
303-
HandDrag_Start();
304-
}
305-
}
306-
307-
void IMixedRealityPointerHandler.OnPointerClicked(MixedRealityPointerEventData eventData) { }
308-
#endregion
309303

310-
private bool SetActiveHand(string sourcename)
311-
{
312304
if (currEngagedHand == Handedness.None)
313305
{
314-
if ((sourcename == "Right Hand") || (sourcename == "Mixed Reality Controller Right"))
315-
{
316-
currEngagedHand = Handedness.Right;
317-
}
318-
else if ((sourcename == "Left Hand") || (sourcename == "Mixed Reality Controller Left"))
319-
{
320-
currEngagedHand = Handedness.Left;
321-
}
322-
323-
if (currEngagedHand != Handedness.None)
324-
{
325-
return true;
326-
}
306+
currEngagedHand = eventData.Handedness;
327307
}
328-
return false;
329-
}
330-
331-
private bool IsActiveHand(string sourcename)
332-
{
333308

334-
if (((currEngagedHand == Handedness.Right) && ((sourcename == "Right Hand") || (sourcename == "Mixed Reality Controller Right"))) ||
335-
((currEngagedHand == Handedness.Left) && ((sourcename == "Left Hand") || (sourcename == "Mixed Reality Controller Left"))))
309+
if (currEngagedHand != Handedness.None)
336310
{
337-
return true;
311+
HandDrag_Start();
338312
}
339-
return false;
340313
}
341314

315+
void IMixedRealityPointerHandler.OnPointerClicked(MixedRealityPointerEventData eventData) { }
316+
#endregion
317+
342318
/// <summary>
343319
/// Start moving the target using your hands.
344320
/// </summary>

Assets/MRTK/SDK/Features/UX/Scripts/Pointers/BaseControllerPointer.cs

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -99,7 +99,7 @@ public virtual void SetCursor(GameObject newCursor = null)
9999

100100
if (cursorInstance != null)
101101
{
102-
cursorInstance.name = $"{Handedness}_{name}_Cursor";
102+
cursorInstance.name = $"{name}_Cursor";
103103

104104
BaseCursor oldC = BaseCursor as BaseCursor;
105105
if (oldC != null && enabled)
@@ -168,6 +168,9 @@ protected override async void Start()
168168

169169
await EnsureInputSystemValid();
170170

171+
// Setting the pointerName
172+
PointerName = $"{Handedness}_{gameObject.name}";
173+
171174
// We've been destroyed during the await.
172175
if (this == null)
173176
{
@@ -227,7 +230,6 @@ public override IMixedRealityController Controller
227230

228231
if (base.Controller != null && this != null)
229232
{
230-
PointerName = $"{Handedness}_{gameObject.name}";
231233
InputSourceParent = base.Controller.InputSource;
232234
SetCursor();
233235
}

0 commit comments

Comments
 (0)