Skip to content

Commit 3062b2c

Browse files
author
Dmytro Ivanov
committed
Merge branch 'develop' into stable
2 parents eb5279b + 0b28bb4 commit 3062b2c

37 files changed

+2880
-2578
lines changed
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
---
2+
name: PLEASE DON'T FILE NEW ISSUES HERE. Use the bug reporter instead.
3+
about: Please use the bug reporter to file new issues
4+
title: ''
5+
labels: ''
6+
assignees: ''
7+
8+
---
9+
10+
Hello,
11+
12+
If you have a bug to report, please file it as described here https://unity3d.com/unity/qa/bug-reporting
13+
For general feedback and discussions you can go to https://forum.unity.com/forums/new-input-system.103/
14+
15+
Thank you!

.gitignore

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,12 +3,18 @@ InitTestScene*
33
*.orig
44
*.orig.meta
55
.vs/
6+
.vsconfig
67
Assets/Plugins/Editor/JetBrains
78
Assets/Plugins/Editor/JetBrains.meta
8-
Builds/
9-
Logs/
10-
Library/
11-
Temp/
9+
10+
/[Ll]ibrary/
11+
/[Tt]emp/
12+
/[Oo]bj/
13+
/[Bb]uild/
14+
/[Bb]uilds/
15+
/[Ll]ogs/
16+
/[Uu]ser[Ss]ettings/
17+
1218
*.sln
1319
*.sln*user
1420
*.csproj

.yamato/config.metadata

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,9 @@ editors:
33
disable_tvos_run: true
44
- version: 2021.3
55
- version: 2022.2
6+
- version: 2023.1
67
- version: trunk
8+
disable_tvos_run: true
79

810
utr_install_win: curl -s https://artifactory.prd.it.unity3d.com/artifactory/unity-tools-local/utr-standalone/utr.bat --output utr.bat
911
utr_install_nix: curl -s https://artifactory.prd.it.unity3d.com/artifactory/unity-tools-local/utr-standalone/utr --output utr && chmod +x utr

Assets/Samples/InGameHints/InGameHintsActions.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
//------------------------------------------------------------------------------
22
// <auto-generated>
33
// This code was auto-generated by com.unity.inputsystem:InputActionCodeGenerator
4-
// version 1.5.0
4+
// version 1.5.1
55
// from Assets/Samples/InGameHints/InGameHintsActions.inputactions
66
//
77
// Changes to this file may cause incorrect behavior and will be lost if

Assets/Samples/SimpleDemo/SimpleControls.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
//------------------------------------------------------------------------------
22
// <auto-generated>
33
// This code was auto-generated by com.unity.inputsystem:InputActionCodeGenerator
4-
// version 1.5.0
4+
// version 1.5.1
55
// from Assets/Samples/SimpleDemo/SimpleControls.inputactions
66
//
77
// Changes to this file may cause incorrect behavior and will be lost if

Assets/Tests/InputSystem/APIVerificationTests.cs

Lines changed: 129 additions & 94 deletions
Large diffs are not rendered by default.

Assets/Tests/InputSystem/CoreTests_Actions.cs

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3607,6 +3607,40 @@ public void Actions_CanAddBindingsToActions()
36073607
Assert.That(action.controls, Has.Exactly(1).SameAs(gamepad.rightStick));
36083608
}
36093609

3610+
[Test]
3611+
[Category("Actions")]
3612+
public void Actions_CanRemoveBindingsFromActions()
3613+
{
3614+
var gamepad = InputSystem.AddDevice<Gamepad>();
3615+
var action = new InputAction();
3616+
3617+
action.AddBinding("<Gamepad>/leftStick");
3618+
action.AddBinding("<Gamepad>/rightStick");
3619+
3620+
action.AddCompositeBinding("OneModifier")
3621+
.With("Modifier", "<Keyboard>/Control")
3622+
.With("Button", "<Keyboard>/a");
3623+
3624+
// Total number of bindings should be 5: 2 normal bindings and 3 from the composite
3625+
// bindings
3626+
Assert.That(action.bindings, Has.Count.EqualTo(5));
3627+
3628+
// Since we have a composite bindings, all bindings will be removed at once
3629+
action.ChangeBinding(2).Erase();
3630+
Assert.That(action.bindings, Has.Count.EqualTo(2));
3631+
3632+
// Remove all remaining bindings
3633+
action.ChangeBinding(0).Erase();
3634+
action.ChangeBinding(0).Erase();
3635+
Assert.That(action.bindings, Has.Count.EqualTo(0));
3636+
3637+
// Add a binding to be removed
3638+
action.AddBinding("<Gamepad>/rightStick");
3639+
Assert.That(action.bindings, Has.Count.EqualTo(1));
3640+
action.ChangeBinding(0).Erase();
3641+
Assert.That(action.bindings, Has.Count.EqualTo(0));
3642+
}
3643+
36103644
[Test]
36113645
[Category("Actions")]
36123646
public void Actions_CanAddBindingsToActions_ToExistingComposite()

Assets/Tests/InputSystem/CoreTests_Actions_Rebinding.cs

Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1346,6 +1346,63 @@ public void Actions_CanSaveAndLoadRebinds()
13461346
Assert.That(secondActionInAsset.bindings[0].overrideProcessors, Is.EqualTo("invert"));
13471347
}
13481348

1349+
[Test]
1350+
[Category("Actions")]
1351+
public void Actions_CanSaveAndLoadRebindOnlyForOverridesSet()
1352+
{
1353+
var action = new InputAction();
1354+
action.AddBinding("<Gamepad>/buttonSouth", processors: "invert");
1355+
action.AddBinding("<Keyboard>/space", interactions: "tap");
1356+
1357+
// Check that the effective paths are correct
1358+
Assert.That(action.bindings[0].effectivePath, Is.EqualTo("<Gamepad>/buttonSouth"));
1359+
Assert.That(action.bindings[0].effectiveInteractions, Is.EqualTo(null));
1360+
Assert.That(action.bindings[0].effectiveProcessors, Is.EqualTo("invert"));
1361+
1362+
Assert.That(action.bindings[1].effectivePath, Is.EqualTo("<Keyboard>/space"));
1363+
Assert.That(action.bindings[1].effectiveInteractions, Is.EqualTo("tap"));
1364+
Assert.That(action.bindings[1].effectiveProcessors, Is.EqualTo(null));
1365+
1366+
action.ApplyBindingOverride(0, "<Gamepad>/buttonWest");
1367+
action.ApplyBindingOverride(1, new InputBinding
1368+
{
1369+
overridePath = "<Keyboard>/a",
1370+
overrideInteractions = "",
1371+
overrideProcessors = "multiply",
1372+
});
1373+
1374+
var actionRebindsJson = action.SaveBindingOverridesAsJson();
1375+
Debug.Log(actionRebindsJson.ToString());
1376+
1377+
action.LoadBindingOverridesFromJson(actionRebindsJson);
1378+
1379+
// Check that effective binding path changed
1380+
Assert.That(action.bindings[0].effectivePath, Is.EqualTo("<Gamepad>/buttonWest"));
1381+
Assert.That(action.bindings[0].overridePath, Is.EqualTo("<Gamepad>/buttonWest"));
1382+
Assert.That(action.bindings[0].path, Is.EqualTo("<Gamepad>/buttonSouth"));
1383+
// Check that effective interaction maintained it's null value
1384+
Assert.That(action.bindings[0].effectiveInteractions, Is.EqualTo(null));
1385+
Assert.That(action.bindings[0].overrideInteractions, Is.EqualTo(null));
1386+
Assert.That(action.bindings[0].interactions, Is.EqualTo(null));
1387+
// Check that effective interaction maintained it's previously set value
1388+
Assert.That(action.bindings[0].effectiveProcessors, Is.EqualTo("invert"));
1389+
Assert.That(action.bindings[0].overrideProcessors, Is.EqualTo(null));
1390+
Assert.That(action.bindings[0].processors, Is.EqualTo("invert"));
1391+
1392+
// Check that effective binding path changed
1393+
Assert.That(action.bindings[1].effectivePath, Is.EqualTo("<Keyboard>/a"));
1394+
Assert.That(action.bindings[1].overridePath, Is.EqualTo("<Keyboard>/a"));
1395+
Assert.That(action.bindings[1].path, Is.EqualTo("<Keyboard>/space"));
1396+
// Check that effective binding was disabled
1397+
Assert.That(action.bindings[1].effectiveInteractions, Is.EqualTo(""));
1398+
Assert.That(action.bindings[1].overrideInteractions, Is.EqualTo(""));
1399+
Assert.That(action.bindings[1].interactions, Is.EqualTo("tap"));
1400+
// Check that effective binding which was null before, now has changed
1401+
Assert.That(action.bindings[1].effectiveProcessors, Is.EqualTo("multiply"));
1402+
Assert.That(action.bindings[1].overrideProcessors, Is.EqualTo("multiply"));
1403+
Assert.That(action.bindings[1].processors, Is.EqualTo(null));
1404+
}
1405+
13491406
[Test]
13501407
[Category("Actions")]
13511408
public void Actions_ActionMapFindBinding_ShouldReturnNegativeOne_IfEmpty()

Assets/Tests/InputSystem/CoreTests_Editor.cs

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2339,6 +2339,7 @@ public void Editor_RenamingAction_WillAutomaticallyEnsureUniqueNames()
23392339
var map = new InputActionMap("set1");
23402340
map.AddAction("actionA", binding: "<Gamepad>/leftStick");
23412341
map.AddAction("actionB");
2342+
map.AddAction("A");
23422343
var asset = ScriptableObject.CreateInstance<InputActionAsset>();
23432344
asset.AddActionMap(map);
23442345

@@ -2353,6 +2354,14 @@ public void Editor_RenamingAction_WillAutomaticallyEnsureUniqueNames()
23532354
Assert.That(map.actions[0].name, Is.EqualTo("actionB1"));
23542355
Assert.That(map.actions[0].bindings, Has.Count.EqualTo(1));
23552356
Assert.That(map.actions[0].bindings[0].action, Is.EqualTo("actionB1"));
2357+
2358+
// now check that unique renaming ignores the action being renamed, so A can be renamed to a and not a1.
2359+
var actionAProperty = mapProperty.FindPropertyRelative("m_Actions").GetArrayElementAtIndex(2);
2360+
2361+
InputActionSerializationHelpers.RenameAction(actionAProperty, mapProperty, "a");
2362+
obj.ApplyModifiedPropertiesWithoutUndo();
2363+
2364+
Assert.That(map.actions[2].name, Is.EqualTo("a"));
23562365
}
23572366

23582367
[Test]

Assets/Tests/InputSystem/InputActionCodeGeneratorActions.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
//------------------------------------------------------------------------------
22
// <auto-generated>
33
// This code was auto-generated by com.unity.inputsystem:InputActionCodeGenerator
4-
// version 1.5.0
4+
// version 1.5.1
55
// from Assets/Tests/InputSystem/InputActionCodeGeneratorActions.inputactions
66
//
77
// Changes to this file may cause incorrect behavior and will be lost if

0 commit comments

Comments
 (0)