Skip to content

Commit b1ba562

Browse files
committed
* Fix unregistration from taps - TouchManager
* Added Epoch Milliseconds / Seconds and added conversion from millisecond / second to epoch time.
1 parent b4420bf commit b1ba562

File tree

2 files changed

+75
-14
lines changed

2 files changed

+75
-14
lines changed

Scripts/Utilities/TouchEventManager.cs

Lines changed: 54 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -275,6 +275,15 @@ public override int GetHashCode()
275275
return base.GetHashCode();
276276
}
277277

278+
/// <summary>
279+
/// Returns a <see cref="System.String"/> that represents the current <see cref="IBM.Watson.DeveloperCloud.Utilities.TouchEventManager+TouchEventData"/>.
280+
/// </summary>
281+
/// <returns>A <see cref="System.String"/> that represents the current <see cref="IBM.Watson.DeveloperCloud.Utilities.TouchEventManager+TouchEventData"/>.</returns>
282+
public override string ToString()
283+
{
284+
return string.Format("[TouchEventData: GameObjectAttached={0}, Collider={1}, Collider2D={2}, RectTransform={3}, ColliderList={4}, ColliderList2D={5}, RectTransformList={6}, IsInside={7}, TapCallback={8}, DragCallback={9}, SortingLayer={10}, CanDragObject={11}]", GameObjectAttached, Collider, Collider2D, RectTransform, ColliderList, ColliderList2D, RectTransformList, IsInside, TapCallback, DragCallback, SortingLayer, CanDragObject);
285+
}
286+
278287
}
279288

280289
#region Private Data
@@ -1154,7 +1163,9 @@ private void TwoFingerTransformedHandler(object sender, System.EventArgs e)
11541163
}
11551164
else
11561165
{
1157-
Log.Warning("TouchEventManager", "There is no 3D collider of given gameobjectToTouch");
1166+
#if ENABLE_DEBUGGING
1167+
Log.Debug("TouchEventManager", "There is no 3D collider of given gameobjectToTouch");
1168+
#endif
11581169
}
11591170

11601171
if (!success)
@@ -1182,7 +1193,9 @@ private void TwoFingerTransformedHandler(object sender, System.EventArgs e)
11821193
success = true;
11831194
} else
11841195
{
1185-
Log.Warning ("TouchEventManager", "There is no 2D collider of given gameobjectToTouch");
1196+
#if ENABLE_DEBUGGING
1197+
Log.Debug ("TouchEventManager", "There is no 2D collider of given gameobjectToTouch");
1198+
#endif
11861199
}
11871200
}
11881201
#if UNITY_4_6 || UNITY_5 || UNITY_5_3_OR_NEWER
@@ -1211,7 +1224,9 @@ private void TwoFingerTransformedHandler(object sender, System.EventArgs e)
12111224
success = true;
12121225
} else
12131226
{
1214-
Log.Warning ("TouchEventManager", "There is no Rect Transform of given gameobjectToTouch");
1227+
#if ENABLE_DEBUGGING
1228+
Log.Debug ("TouchEventManager", "There is no Rect Transform of given gameobjectToTouch");
1229+
#endif
12151230
}
12161231
}
12171232
#endif
@@ -1258,15 +1273,19 @@ private void TwoFingerTransformedHandler(object sender, System.EventArgs e)
12581273
foreach (Collider itemCollider in colliderList)
12591274
{
12601275
int numberOfRemovedCallbacks = m_TapEvents[layerMaskAsKey].RemoveAll(
1261-
e =>
1262-
e.Collider == itemCollider &&
1263-
e.TapCallback == callback &&
1264-
e.SortingLayer == SortingLayer &&
1265-
e.IsInside == isTapInside);
1276+
e =>
1277+
e.Collider == itemCollider &&
1278+
e.TapCallback == callback &&
1279+
e.SortingLayer == SortingLayer &&
1280+
e.IsInside == isTapInside);
12661281

12671282
success &= (numberOfRemovedCallbacks > 0);
12681283
}
12691284
}
1285+
else
1286+
{
1287+
success = false;
1288+
}
12701289

12711290
if (!success)
12721291
{
@@ -1286,7 +1305,13 @@ private void TwoFingerTransformedHandler(object sender, System.EventArgs e)
12861305
success &= (numberOfRemovedCallbacks > 0);
12871306
}
12881307
}
1308+
else
1309+
{
1310+
success = false;
1311+
}
12891312
}
1313+
1314+
12901315
#if UNITY_4_6 || UNITY_5 || UNITY_5_3_OR_NEWER
12911316
if (!success)
12921317
{
@@ -1306,6 +1331,10 @@ private void TwoFingerTransformedHandler(object sender, System.EventArgs e)
13061331
success &= (numberOfRemovedCallbacks > 0);
13071332
}
13081333
}
1334+
else
1335+
{
1336+
success = false;
1337+
}
13091338
}
13101339
#endif
13111340
}
@@ -1392,16 +1421,16 @@ private void TapGesture_Tapped(object sender, System.EventArgs e)
13921421
{
13931422
TouchEventData tapEventData = kp.Value[i];
13941423

1395-
if (kp.Value[i].Collider == null && kp.Value[i].Collider2D == null && kp.Value[i].RectTransform == null )
1424+
if (kp.Value[i].Collider == null && kp.Value[i].Collider2D == null && kp.Value[i].RectTransform == null && kp.Value[i].RectTransformList == null )
13961425
{
1397-
Log.Warning("TouchEventManager", "Removing invalid collider event receiver from TapEventList");
1426+
Log.Warning("TouchEventManager", "Removing invalid collider event receiver from TapEventList from {0}", kp.Value[i].ToString());
13981427
kp.Value.RemoveAt(i--);
13991428
continue;
14001429
}
14011430

14021431
if (string.IsNullOrEmpty(tapEventData.TapCallback))
14031432
{
1404-
Log.Warning("TouchEventManager", "Removing invalid event receiver from TapEventList");
1433+
Log.Warning("TouchEventManager", "Removing invalid event receiver from TapEventList {0}", kp.Value[i]);
14051434
kp.Value.RemoveAt(i--);
14061435
continue;
14071436
}
@@ -1801,6 +1830,10 @@ private void TapGesture_Tapped(object sender, System.EventArgs e)
18011830
success &= (numberOfRemovedCallbacks > 0);
18021831
}
18031832
}
1833+
else
1834+
{
1835+
success = false;
1836+
}
18041837

18051838
if (!success)
18061839
{
@@ -1820,6 +1853,11 @@ private void TapGesture_Tapped(object sender, System.EventArgs e)
18201853
success &= (numberOfRemovedCallbacks > 0);
18211854
}
18221855
}
1856+
else
1857+
{
1858+
success = false;
1859+
}
1860+
18231861
}
18241862
#if UNITY_4_6 || UNITY_5 || UNITY_5_3_OR_NEWER
18251863
if (!success)
@@ -1840,6 +1878,10 @@ private void TapGesture_Tapped(object sender, System.EventArgs e)
18401878
success &= (numberOfRemovedCallbacks > 0);
18411879
}
18421880
}
1881+
else
1882+
{
1883+
success = false;
1884+
}
18431885
}
18441886
#endif
18451887
}
@@ -1927,7 +1969,7 @@ private void DoubleTapGesture_Tapped(object sender, System.EventArgs e)
19271969
{
19281970
TouchEventData tapEventData = kp.Value[i];
19291971

1930-
if (kp.Value[i].Collider == null && kp.Value[i].Collider2D == null && kp.Value[i].RectTransform == null )
1972+
if (kp.Value[i].Collider == null && kp.Value[i].Collider2D == null && kp.Value[i].RectTransform == null && kp.Value[i].RectTransformList == null)
19311973
{
19321974
Log.Warning("TouchEventManager", "Removing invalid collider event receiver from DoubleTapEventList");
19331975
kp.Value.RemoveAt(i--);

Scripts/Utilities/Utility.cs

Lines changed: 21 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -278,12 +278,22 @@ public static string StripString(string s)
278278
/// Gets the EPOCH time in UTC time zome
279279
/// </summary>
280280
/// <returns>Double EPOCH in UTC</returns>
281-
public static double GetEpochUTC()
281+
public static double GetEpochUTCMilliseconds()
282282
{
283283
DateTime epoch = new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc);
284284
return (DateTime.UtcNow - epoch).TotalMilliseconds;
285285
}
286286

287+
/// <summary>
288+
/// Gets the epoch UTC seconds.
289+
/// </summary>
290+
/// <returns>The epoch UTC seconds.</returns>
291+
public static double GetEpochUTCSeconds()
292+
{
293+
DateTime epoch = new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc);
294+
return (DateTime.UtcNow - epoch).TotalSeconds;
295+
}
296+
287297
/// <summary>
288298
/// Gets the date time from epoch.
289299
/// </summary>
@@ -293,7 +303,16 @@ public static double GetEpochUTC()
293303
public static DateTime GetLocalDateTimeFromEpoch(double epochTime)
294304
{
295305
DateTime dateTime = new DateTime(1970,1,1,0,0,0,0,System.DateTimeKind.Utc);
296-
dateTime = dateTime.AddMilliseconds(epochTime).ToLocalTime();
306+
try
307+
{
308+
dateTime = dateTime.AddSeconds(epochTime).ToLocalTime();
309+
}
310+
catch (ArgumentOutOfRangeException ex)
311+
{
312+
Log.Debug("Utility", "Time conversion assuming time is in Milliseconds: {0}, {1}", epochTime, ex.Message);
313+
dateTime = dateTime.AddMilliseconds(epochTime).ToLocalTime();
314+
}
315+
297316
return dateTime;
298317
}
299318

0 commit comments

Comments
 (0)