diff --git a/Packages/com.unity.inputsystem/InputSystem/Editor/AssetImporter/InputActionAssetIconLoader.cs b/Packages/com.unity.inputsystem/InputSystem/Editor/AssetImporter/InputActionAssetIconLoader.cs index cca5439155..d45655fb43 100644 --- a/Packages/com.unity.inputsystem/InputSystem/Editor/AssetImporter/InputActionAssetIconLoader.cs +++ b/Packages/com.unity.inputsystem/InputSystem/Editor/AssetImporter/InputActionAssetIconLoader.cs @@ -13,6 +13,7 @@ internal static class InputActionAssetIconLoader { private const string kActionIcon = "Packages/com.unity.inputsystem/InputSystem/Editor/Icons/InputAction.png"; private const string kAssetIcon = "Packages/com.unity.inputsystem/InputSystem/Editor/Icons/InputActionAsset.png"; + private const string kSettingsIcon = "Packages/com.unity.inputsystem/InputSystem/Editor/Icons/InputSettingsAsset.png"; /// /// Attempts to load the icon associated with an . @@ -32,6 +33,15 @@ internal static Texture2D LoadActionIcon() { return (Texture2D)EditorGUIUtility.Load(kActionIcon); } + + /// + /// Attempts to load the icon associated with an asset. + /// + /// Icon resource reference or null if the resource could not be loaded. + internal static Texture2D LoadSettingsIcon() + { + return (Texture2D)EditorGUIUtility.Load(kSettingsIcon); + } } } diff --git a/Packages/com.unity.inputsystem/InputSystem/Editor/Icons/InputSettingsAsset.png b/Packages/com.unity.inputsystem/InputSystem/Editor/Icons/InputSettingsAsset.png new file mode 100644 index 0000000000..6f6c1ed8fc Binary files /dev/null and b/Packages/com.unity.inputsystem/InputSystem/Editor/Icons/InputSettingsAsset.png differ diff --git a/Packages/com.unity.inputsystem/InputSystem/Editor/Icons/InputSettingsAsset.png.meta b/Packages/com.unity.inputsystem/InputSystem/Editor/Icons/InputSettingsAsset.png.meta new file mode 100644 index 0000000000..1b71cfb8bd --- /dev/null +++ b/Packages/com.unity.inputsystem/InputSystem/Editor/Icons/InputSettingsAsset.png.meta @@ -0,0 +1,127 @@ +fileFormatVersion: 2 +guid: c2df6a0aa07464c2ebce7cc32d65a1a0 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: 0 + wrapU: 1 + wrapV: 1 + wrapW: 0 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: iPhone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Packages/com.unity.inputsystem/InputSystem/Editor/Icons/d_InputSettingsAsset.png b/Packages/com.unity.inputsystem/InputSystem/Editor/Icons/d_InputSettingsAsset.png new file mode 100644 index 0000000000..944a0b6277 Binary files /dev/null and b/Packages/com.unity.inputsystem/InputSystem/Editor/Icons/d_InputSettingsAsset.png differ diff --git a/Packages/com.unity.inputsystem/InputSystem/Editor/Icons/d_InputSettingsAsset.png.meta b/Packages/com.unity.inputsystem/InputSystem/Editor/Icons/d_InputSettingsAsset.png.meta new file mode 100644 index 0000000000..8c0b88d4d7 --- /dev/null +++ b/Packages/com.unity.inputsystem/InputSystem/Editor/Icons/d_InputSettingsAsset.png.meta @@ -0,0 +1,127 @@ +fileFormatVersion: 2 +guid: 9b333aa91e60b4a1da82c458ff746b02 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: 0 + wrapU: 1 + wrapV: 1 + wrapW: 0 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: iPhone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Packages/com.unity.inputsystem/InputSystem/Editor/Settings/InputSettingsProvider.cs b/Packages/com.unity.inputsystem/InputSystem/Editor/Settings/InputSettingsProvider.cs index 1ac676a022..bcf3b92612 100644 --- a/Packages/com.unity.inputsystem/InputSystem/Editor/Settings/InputSettingsProvider.cs +++ b/Packages/com.unity.inputsystem/InputSystem/Editor/Settings/InputSettingsProvider.cs @@ -211,7 +211,11 @@ private static void CreateNewSettingsAsset(string relativePath) { // Create and install the settings. This will lead to an InputSystem.onSettingsChange event which in turn // will cause us to re-initialize. - InputSystem.settings = InputAssetEditorUtils.CreateAsset(ScriptableObject.CreateInstance(), relativePath); + var settings = ScriptableObject.CreateInstance(); + var icon = InputActionAssetIconLoader.LoadSettingsIcon(); + if (icon != null) + EditorGUIUtility.SetIconForObject(settings, icon); + InputSystem.settings = InputAssetEditorUtils.CreateAsset(settings, relativePath); } private static void CreateNewSettingsAsset() @@ -489,6 +493,13 @@ internal static void ForceReload() [CustomEditor(typeof(InputSettings))] internal class InputSettingsEditor : UnityEditor.Editor { + private void OnEnable() + { + var icon = InputActionAssetIconLoader.LoadSettingsIcon(); + if (icon != null) + EditorGUIUtility.SetIconForObject(target, icon); + } + public override void OnInspectorGUI() { EditorGUILayout.Space(); diff --git a/Packages/com.unity.inputsystem/InputSystem/InputManager.LegacyFocusHandling.cs.meta b/Packages/com.unity.inputsystem/InputSystem/InputManager.LegacyFocusHandling.cs.meta index b9dbb0ca48..02ebffacf8 100644 --- a/Packages/com.unity.inputsystem/InputSystem/InputManager.LegacyFocusHandling.cs.meta +++ b/Packages/com.unity.inputsystem/InputSystem/InputManager.LegacyFocusHandling.cs.meta @@ -1,2 +1,11 @@ fileFormatVersion: 2 -guid: 37c57605ec1653942a94491298f0b3b7 \ No newline at end of file +guid: 37c57605ec1653942a94491298f0b3b7 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: