From 00b63324547d03d460b69b427522ed459b603ddd Mon Sep 17 00:00:00 2001 From: Mirko Jugurdzija Date: Mon, 2 Jun 2025 12:54:48 +0200 Subject: [PATCH 1/6] fix: load chat when we jump to player (either teleport or enter a world) Use RealType update and OnNavigationExecuted to trigger chat load (when we load a world, or when we teleport) --- .../Global/Dynamic/DynamicWorldContainer.cs | 4 ++- .../DCL/PluginSystem/Global/ChatPlugin.cs | 25 +++++++++++++++++-- .../UI/MainUIContainer/MainUIController.cs | 1 - 3 files changed, 26 insertions(+), 4 deletions(-) diff --git a/Explorer/Assets/DCL/Infrastructure/Global/Dynamic/DynamicWorldContainer.cs b/Explorer/Assets/DCL/Infrastructure/Global/Dynamic/DynamicWorldContainer.cs index b088172d24a..5b0ede6bee2 100644 --- a/Explorer/Assets/DCL/Infrastructure/Global/Dynamic/DynamicWorldContainer.cs +++ b/Explorer/Assets/DCL/Infrastructure/Global/Dynamic/DynamicWorldContainer.cs @@ -702,7 +702,9 @@ await MapRendererContainer friendsEventBus, chatMessageFactory, staticContainer.FeatureFlagsCache, - friendServiceProxy), + friendServiceProxy, + staticContainer.RealmData, + realmNavigator), new ExplorePanelPlugin( assetsProvisioner, mvcManager, diff --git a/Explorer/Assets/DCL/PluginSystem/Global/ChatPlugin.cs b/Explorer/Assets/DCL/PluginSystem/Global/ChatPlugin.cs index ee4563de8d9..5ff6b18583a 100644 --- a/Explorer/Assets/DCL/PluginSystem/Global/ChatPlugin.cs +++ b/Explorer/Assets/DCL/PluginSystem/Global/ChatPlugin.cs @@ -26,6 +26,8 @@ using DCL.Utilities; using MVC; using System.Threading; +using ECS; +using ECS.SceneLifeCycle.Realm; using UnityEngine; using UnityEngine.AddressableAssets; @@ -62,7 +64,9 @@ public class ChatPlugin : IDCLGlobalPlugin private readonly ObjectProxy friendsServiceProxy; private ChatController chatController; - + private IRealmData realmData; + private IRealmNavigator realmNavigator; + public ChatPlugin( IMVCManager mvcManager, IChatMessagesBus chatMessagesBus, @@ -88,7 +92,9 @@ public ChatPlugin( IFriendsEventBus friendsEventBus, ChatMessageFactory chatMessageFactory, FeatureFlagsCache featureFlagsCache, - ObjectProxy friendsServiceProxy) + ObjectProxy friendsServiceProxy, + IRealmData realmData, + IRealmNavigator realmNavigator) { this.mvcManager = mvcManager; this.chatHistory = chatHistory; @@ -116,6 +122,8 @@ public ChatPlugin( this.userBlockingCacheProxy = userBlockingCacheProxy; this.socialServiceProxy = socialServiceProxy; this.friendsEventBus = friendsEventBus; + this.realmData = realmData; + this.realmNavigator = realmNavigator; } public void Dispose() @@ -171,6 +179,19 @@ public async UniTask InitializeAsync(ChatPluginSettings settings, CancellationTo // Log out / log in web3IdentityCache.OnIdentityCleared += OnIdentityCleared; web3IdentityCache.OnIdentityChanged += OnIdentityChanged; + + realmData.RealmType.OnUpdate += OnRealmChange; + realmNavigator.NavigationExecuted += OnNavigationExecuted; + } + + private void OnNavigationExecuted(Vector2Int parcel) + { + sharedSpaceManager.ShowAsync(PanelsSharingSpace.Chat, new ChatControllerShowParams(true,false)).Forget(); + } + + private void OnRealmChange(RealmKind realmKind) + { + sharedSpaceManager.ShowAsync(PanelsSharingSpace.Chat, new ChatControllerShowParams(true,false)).Forget(); } private void OnIdentityCleared() diff --git a/Explorer/Assets/DCL/UI/MainUIContainer/MainUIController.cs b/Explorer/Assets/DCL/UI/MainUIContainer/MainUIController.cs index 9fe36937453..67ba61561d6 100644 --- a/Explorer/Assets/DCL/UI/MainUIContainer/MainUIController.cs +++ b/Explorer/Assets/DCL/UI/MainUIContainer/MainUIController.cs @@ -56,7 +56,6 @@ protected override void OnViewInstantiated() viewInstance.pointerDetectionArea.OnExitArea += OnPointerExit; mvcManager.ShowAsync(SidebarController.IssueCommand()).Forget(); mvcManager.ShowAsync(MinimapController.IssueCommand()).Forget(); - sharedSpaceManager.ShowAsync(PanelsSharingSpace.Chat, new ChatControllerShowParams(true)).Forget(); mvcManager.ShowAsync(ConnectionStatusPanelController.IssueCommand()).Forget(); if (isFriendsEnabled) From c382d161498c954befe7c64de776b984573fb41e Mon Sep 17 00:00:00 2001 From: Santi Andrade Date: Mon, 2 Jun 2025 18:01:52 +0200 Subject: [PATCH 2/6] fix: Refresh events in Analytics Configuration (#4319) --- .../Analytics/AnalyticsConfiguration.asset | 12 ++++++++++++ .../AnalyticsConfiguration Playground.asset | 12 ++++++++++++ 2 files changed, 24 insertions(+) diff --git a/Explorer/Assets/DCL/PerformanceAndDiagnostics/Analytics/AnalyticsConfiguration.asset b/Explorer/Assets/DCL/PerformanceAndDiagnostics/Analytics/AnalyticsConfiguration.asset index 8ceaf2e95cf..25fdedfa53e 100644 --- a/Explorer/Assets/DCL/PerformanceAndDiagnostics/Analytics/AnalyticsConfiguration.asset +++ b/Explorer/Assets/DCL/PerformanceAndDiagnostics/Analytics/AnalyticsConfiguration.asset @@ -135,6 +135,18 @@ MonoBehaviour: isEnabled: 1 - eventName: unblock_user isEnabled: 1 + - groupName: MarketplaceCredits + events: + - eventName: marketplace_credits_opened + isEnabled: 1 + - groupName: Settings + events: + - eventName: chat-bubbles-visibility-changed + isEnabled: 1 + - groupName: FeatureFlags + events: + - eventName: feature_flags + isEnabled: 1 useLocalEnvVariableFallback: 0 flushSize: 20 flushInterval: 60 diff --git a/Explorer/Assets/DCL/PerformanceAndDiagnostics/Analytics/Playgrounds/AnalyticsConfiguration Playground.asset b/Explorer/Assets/DCL/PerformanceAndDiagnostics/Analytics/Playgrounds/AnalyticsConfiguration Playground.asset index 0966fd49664..21057879e3c 100644 --- a/Explorer/Assets/DCL/PerformanceAndDiagnostics/Analytics/Playgrounds/AnalyticsConfiguration Playground.asset +++ b/Explorer/Assets/DCL/PerformanceAndDiagnostics/Analytics/Playgrounds/AnalyticsConfiguration Playground.asset @@ -131,6 +131,18 @@ MonoBehaviour: isEnabled: 1 - eventName: unblock_user isEnabled: 1 + - groupName: MarketplaceCredits + events: + - eventName: marketplace_credits_opened + isEnabled: 1 + - groupName: Settings + events: + - eventName: chat-bubbles-visibility-changed + isEnabled: 1 + - groupName: FeatureFlags + events: + - eventName: feature_flags + isEnabled: 1 useLocalEnvVariableFallback: 0 flushSize: 20 flushInterval: 30 From 9938a9f1a2b6fd5e2d6a0c0b248eeaac7c0bc2fe Mon Sep 17 00:00:00 2001 From: Aga Date: Mon, 2 Jun 2025 18:20:39 +0100 Subject: [PATCH 3/6] fix: added support for new launcher in application version guard (#4281) --- .../ApplicationVersionGuard.cs | 86 ++++++++++--------- .../IDecentralandUrlsSource.cs | 4 +- 2 files changed, 47 insertions(+), 43 deletions(-) diff --git a/Explorer/Assets/DCL/ApplicationVersionGuard/ApplicationVersionGuard.cs b/Explorer/Assets/DCL/ApplicationVersionGuard/ApplicationVersionGuard.cs index 81ab0d2d319..1a88d76813c 100644 --- a/Explorer/Assets/DCL/ApplicationVersionGuard/ApplicationVersionGuard.cs +++ b/Explorer/Assets/DCL/ApplicationVersionGuard/ApplicationVersionGuard.cs @@ -19,14 +19,15 @@ namespace DCL.ApplicationVersionGuard { public class ApplicationVersionGuard { - private const string LAUNCHER_EXECUTABLE_NAME = "Decentraland Launcher"; + private const string LAUNCHER_EXECUTABLE_NAME = "Decentraland"; + private const string LEGACY_LAUNCHER_EXECUTABLE_NAME = "Decentraland Launcher"; + private const string LAUNCHER_EXECUTABLE_FILENAME = "dcl_launcher.exe"; private const string LAUNCHER_PATH_MAC = "/Applications/" + LAUNCHER_EXECUTABLE_NAME + ".app"; - private const string LAUNCHER_PATH_WIN_MAIN = @"C:\Program Files\Decentraland Launcher\" + LAUNCHER_EXECUTABLE_NAME + ".exe"; - private const string LAUNCHER_PATH_WIN_86 = @"C:\Program Files (x86)\Decentraland Launcher\" + LAUNCHER_EXECUTABLE_NAME + ".exe"; - private const string LAUNCHER_PATH_WIN_COMBINED = @"Programs\Decentraland Launcher\" + LAUNCHER_EXECUTABLE_NAME + ".exe"; - private const string DECENTRALAND_LAUNCHER_WIN_X64_EXE = "Decentraland-Launcher-win-x64.exe"; - private const string DECENTRALAND_LAUNCHER_MAC_ARM_64DMG = "Decentraland-Launcher-mac-arm64.dmg"; - private const string DECENTRALAND_LAUNCHER_MAC_X_64DMG = "Decentraland-Launcher-mac-x64.dmg"; + private const string LEGACY_LAUNCHER_PATH_MAC = "/Applications/" + LEGACY_LAUNCHER_EXECUTABLE_NAME + ".app"; + private const string DECENTRALAND_LAUNCHER_WIN_X64_EXE = "Decentraland_x64-setup.exe"; + private const string DECENTRALAND_LAUNCHER_MAC_ARM_64DMG = "Decentraland_aarch64.dmg"; + //Aga: Rust version of launcher does not support intel macs, until fully deprecating it, we need to keep the old launcher for intel based macs + private const string DECENTRALAND_LEGACY_LAUNCHER_MAC_X_64DMG = "Decentraland Launcher-mac-x64.dmg"; private readonly IWebRequestController webRequestController; private readonly IWebBrowser webBrowser; @@ -58,7 +59,7 @@ public async UniTask LaunchOrDownloadLauncherAsync(CancellationToken ct = defaul if (string.IsNullOrEmpty(launcherPath)) { - await DownloadLauncherAsync(ct); + DownloadLauncher(); Quit(); } else @@ -90,40 +91,34 @@ private static void Quit() #endif } - private async UniTask DownloadLauncherAsync(CancellationToken ct) + private void DownloadLauncher() { - string downloadUrl = await GetLauncherDownloadUrlAsync(ct); + string assetName = GetLauncherAssetName(); + string downloadUrl = $"{GetLauncherDownloadPath()}/{assetName}"; if (!string.IsNullOrEmpty(downloadUrl)) webBrowser.OpenUrl(downloadUrl); else ReportHub.LogError(ReportCategory.VERSION_CONTROL, "Failed to get launcher download URL."); + } - return; - - async UniTask GetLauncherDownloadUrlAsync(CancellationToken cancellationToken) + private static string GetLauncherAssetName() + { + return Application.platform switch { - FlatFetchResponse response = await webRequestController.GetAsync, FlatFetchResponse>( - IDecentralandUrlsSource.LAUNCHER_LATEST_RELEASE_URL, - new FlatFetchResponse(), - cancellationToken, - ReportCategory.VERSION_CONTROL, - new WebRequestHeadersInfo()); - - GitHubRelease latestRelease = JsonUtility.FromJson(response.body); - string version = latestRelease.tag_name.TrimStart('v'); - - string assetName = GetLauncherAssetName(); - return $"{IDecentralandUrlsSource.LAUNCHER_DOWNLOAD_URL}/{version}/{assetName}"; - } + RuntimePlatform.WindowsEditor or RuntimePlatform.WindowsPlayer => DECENTRALAND_LAUNCHER_WIN_X64_EXE, + RuntimePlatform.OSXEditor or RuntimePlatform.OSXPlayer => IsAppleSiliconMac ? DECENTRALAND_LAUNCHER_MAC_ARM_64DMG : DECENTRALAND_LEGACY_LAUNCHER_MAC_X_64DMG, + _ => throw new NotSupportedException("Unsupported platform for launcher download."), + }; } - private static string GetLauncherAssetName() + + private static string GetLauncherDownloadPath() { return Application.platform switch { - RuntimePlatform.WindowsEditor or RuntimePlatform.WindowsPlayer => DECENTRALAND_LAUNCHER_WIN_X64_EXE, - RuntimePlatform.OSXEditor or RuntimePlatform.OSXPlayer => SystemInfo.processorType.ToLower().Contains("arm") ? DECENTRALAND_LAUNCHER_MAC_ARM_64DMG : DECENTRALAND_LAUNCHER_MAC_X_64DMG, + RuntimePlatform.WindowsEditor or RuntimePlatform.WindowsPlayer => IDecentralandUrlsSource.LAUNCHER_DOWNLOAD_URL, + RuntimePlatform.OSXEditor or RuntimePlatform.OSXPlayer => IsAppleSiliconMac ? IDecentralandUrlsSource.LAUNCHER_DOWNLOAD_URL : IDecentralandUrlsSource.LEGACY_LAUNCHER_DOWNLOAD_URL, _ => throw new NotSupportedException("Unsupported platform for launcher download."), }; } @@ -138,30 +133,39 @@ private static string GetLauncherAssetName() case RuntimePlatform.WindowsPlayer: possiblePaths = new[] { - LAUNCHER_PATH_WIN_MAIN, - LAUNCHER_PATH_WIN_86, - Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData), LAUNCHER_PATH_WIN_COMBINED), + Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData), LAUNCHER_EXECUTABLE_NAME, LAUNCHER_EXECUTABLE_FILENAME), }; - break; + case RuntimePlatform.OSXEditor: case RuntimePlatform.OSXPlayer: - possiblePaths = new[] - { - LAUNCHER_PATH_MAC, - $"{Environment.GetFolderPath(Environment.SpecialFolder.Personal)}{LAUNCHER_PATH_MAC}", - }; - + possiblePaths = IsAppleSiliconMac + ? new[] + { + LAUNCHER_PATH_MAC, + $"{Environment.GetFolderPath(Environment.SpecialFolder.Personal)}{LAUNCHER_PATH_MAC}", + } + : new[] + { + LEGACY_LAUNCHER_PATH_MAC, + $"{Environment.GetFolderPath(Environment.SpecialFolder.Personal)}{LEGACY_LAUNCHER_PATH_MAC}", + }; break; + default: ReportHub.LogError(ReportCategory.VERSION_CONTROL, "Unsupported platform for launching the application."); return null; } - return possiblePaths.FirstOrDefault(path => File.Exists(path) - || (Directory.Exists(path) && (Application.platform == RuntimePlatform.OSXEditor || Application.platform == RuntimePlatform.OSXPlayer))); + return possiblePaths.FirstOrDefault(path => + File.Exists(path) || + (Directory.Exists(path) && (Application.platform == RuntimePlatform.OSXEditor || Application.platform == RuntimePlatform.OSXPlayer))); } + private static bool IsAppleSiliconMac => + Application.platform is RuntimePlatform.OSXEditor or RuntimePlatform.OSXPlayer && + SystemInfo.processorType.Contains("apple", StringComparison.OrdinalIgnoreCase); + [Serializable] private struct GitHubRelease { diff --git a/Explorer/Assets/DCL/Browser/DecentralandUrls/IDecentralandUrlsSource.cs b/Explorer/Assets/DCL/Browser/DecentralandUrls/IDecentralandUrlsSource.cs index 194a00dddbc..c11bbb51705 100644 --- a/Explorer/Assets/DCL/Browser/DecentralandUrls/IDecentralandUrlsSource.cs +++ b/Explorer/Assets/DCL/Browser/DecentralandUrls/IDecentralandUrlsSource.cs @@ -3,8 +3,8 @@ namespace DCL.Multiplayer.Connections.DecentralandUrls public interface IDecentralandUrlsSource { const string EXPLORER_LATEST_RELEASE_URL = "https://api.github.com/repos/decentraland/unity-explorer/releases/latest"; - const string LAUNCHER_LATEST_RELEASE_URL = "https://api.github.com/repos/decentraland/launcher/releases/latest"; - const string LAUNCHER_DOWNLOAD_URL = "https://github.com/decentraland/launcher/releases/download"; + const string LAUNCHER_DOWNLOAD_URL = "https://explorer-artifacts.decentraland.org/launcher-rust"; + const string LEGACY_LAUNCHER_DOWNLOAD_URL = "https://explorer-artifacts.decentraland.org/launcher/dcl"; string DecentralandDomain { get; } DecentralandEnvironment Environment { get; } From b022b1d006cd6eddff0b025da5d986752c623aa2 Mon Sep 17 00:00:00 2001 From: Mirko Jugurdzija Date: Mon, 2 Jun 2025 12:54:48 +0200 Subject: [PATCH 4/6] fix: load chat when we jump to player (either teleport or enter a world) Use RealType update and OnNavigationExecuted to trigger chat load (when we load a world, or when we teleport) --- .../DCL/PluginSystem/Global/ChatPlugin.cs | 26 +++++++++++++++++-- .../UI/MainUIContainer/MainUIController.cs | 1 - 2 files changed, 24 insertions(+), 3 deletions(-) diff --git a/Explorer/Assets/DCL/PluginSystem/Global/ChatPlugin.cs b/Explorer/Assets/DCL/PluginSystem/Global/ChatPlugin.cs index fc5e969e095..1e9c1917965 100644 --- a/Explorer/Assets/DCL/PluginSystem/Global/ChatPlugin.cs +++ b/Explorer/Assets/DCL/PluginSystem/Global/ChatPlugin.cs @@ -27,6 +27,8 @@ using DCL.Utilities; using MVC; using System.Threading; +using ECS; +using ECS.SceneLifeCycle.Realm; using UnityEngine; using UnityEngine.AddressableAssets; @@ -64,7 +66,9 @@ public class ChatPlugin : IDCLGlobalPlugin private readonly ProfileRepositoryWrapper profileRepositoryWrapper; private ChatController chatController; - + private IRealmData realmData; + private IRealmNavigator realmNavigator; + public ChatPlugin( IMVCManager mvcManager, IChatMessagesBus chatMessagesBus, @@ -91,7 +95,10 @@ public ChatPlugin( ChatMessageFactory chatMessageFactory, FeatureFlagsCache featureFlagsCache, ObjectProxy friendsServiceProxy, - ProfileRepositoryWrapper profileDataProvider) + ProfileRepositoryWrapper profileDataProvider, + ObjectProxy friendsServiceProxy, + IRealmData realmData, + IRealmNavigator realmNavigator) { this.mvcManager = mvcManager; this.chatHistory = chatHistory; @@ -120,6 +127,8 @@ public ChatPlugin( this.socialServiceProxy = socialServiceProxy; this.friendsEventBus = friendsEventBus; this.profileRepositoryWrapper = profileDataProvider; + this.realmData = realmData; + this.realmNavigator = realmNavigator; } public void Dispose() @@ -176,6 +185,19 @@ public async UniTask InitializeAsync(ChatPluginSettings settings, CancellationTo // Log out / log in web3IdentityCache.OnIdentityCleared += OnIdentityCleared; web3IdentityCache.OnIdentityChanged += OnIdentityChanged; + + realmData.RealmType.OnUpdate += OnRealmChange; + realmNavigator.NavigationExecuted += OnNavigationExecuted; + } + + private void OnNavigationExecuted(Vector2Int parcel) + { + sharedSpaceManager.ShowAsync(PanelsSharingSpace.Chat, new ChatControllerShowParams(true,false)).Forget(); + } + + private void OnRealmChange(RealmKind realmKind) + { + sharedSpaceManager.ShowAsync(PanelsSharingSpace.Chat, new ChatControllerShowParams(true,false)).Forget(); } private void OnIdentityCleared() diff --git a/Explorer/Assets/DCL/UI/MainUIContainer/MainUIController.cs b/Explorer/Assets/DCL/UI/MainUIContainer/MainUIController.cs index 9fe36937453..67ba61561d6 100644 --- a/Explorer/Assets/DCL/UI/MainUIContainer/MainUIController.cs +++ b/Explorer/Assets/DCL/UI/MainUIContainer/MainUIController.cs @@ -56,7 +56,6 @@ protected override void OnViewInstantiated() viewInstance.pointerDetectionArea.OnExitArea += OnPointerExit; mvcManager.ShowAsync(SidebarController.IssueCommand()).Forget(); mvcManager.ShowAsync(MinimapController.IssueCommand()).Forget(); - sharedSpaceManager.ShowAsync(PanelsSharingSpace.Chat, new ChatControllerShowParams(true)).Forget(); mvcManager.ShowAsync(ConnectionStatusPanelController.IssueCommand()).Forget(); if (isFriendsEnabled) From ef3bbf45e50a9b5ce20c753024feca3b6b25a891 Mon Sep 17 00:00:00 2001 From: Mirko Jugurdzija Date: Tue, 3 Jun 2025 10:04:27 +0200 Subject: [PATCH 5/6] fix: manage merge conflicts --- .../Infrastructure/Global/Dynamic/DynamicWorldContainer.cs | 4 +++- Explorer/Assets/DCL/PluginSystem/Global/ChatPlugin.cs | 1 - 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/Explorer/Assets/DCL/Infrastructure/Global/Dynamic/DynamicWorldContainer.cs b/Explorer/Assets/DCL/Infrastructure/Global/Dynamic/DynamicWorldContainer.cs index 6092035c268..84037ccbbdd 100644 --- a/Explorer/Assets/DCL/Infrastructure/Global/Dynamic/DynamicWorldContainer.cs +++ b/Explorer/Assets/DCL/Infrastructure/Global/Dynamic/DynamicWorldContainer.cs @@ -701,8 +701,10 @@ await MapRendererContainer friendsEventBus, chatMessageFactory, staticContainer.FeatureFlagsCache, + profileRepositoryWrapper, friendServiceProxy, - profileRepositoryWrapper), + staticContainer.RealmData, + realmNavigator), new ExplorePanelPlugin( assetsProvisioner, mvcManager, diff --git a/Explorer/Assets/DCL/PluginSystem/Global/ChatPlugin.cs b/Explorer/Assets/DCL/PluginSystem/Global/ChatPlugin.cs index 1e9c1917965..4d39ee3d180 100644 --- a/Explorer/Assets/DCL/PluginSystem/Global/ChatPlugin.cs +++ b/Explorer/Assets/DCL/PluginSystem/Global/ChatPlugin.cs @@ -94,7 +94,6 @@ public ChatPlugin( IFriendsEventBus friendsEventBus, ChatMessageFactory chatMessageFactory, FeatureFlagsCache featureFlagsCache, - ObjectProxy friendsServiceProxy, ProfileRepositoryWrapper profileDataProvider, ObjectProxy friendsServiceProxy, IRealmData realmData, From c9ab7d715b58e4439d5768eee6f2a5e5a97c0b25 Mon Sep 17 00:00:00 2001 From: Mirko Jugurdzija Date: Tue, 3 Jun 2025 10:06:18 +0200 Subject: [PATCH 6/6] chore: add note for the workaround fix that was applied --- .../Assets/DCL/PluginSystem/Global/ChatPlugin.cs | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/Explorer/Assets/DCL/PluginSystem/Global/ChatPlugin.cs b/Explorer/Assets/DCL/PluginSystem/Global/ChatPlugin.cs index 4d39ee3d180..57baf4dd9e3 100644 --- a/Explorer/Assets/DCL/PluginSystem/Global/ChatPlugin.cs +++ b/Explorer/Assets/DCL/PluginSystem/Global/ChatPlugin.cs @@ -189,11 +189,23 @@ public async UniTask InitializeAsync(ChatPluginSettings settings, CancellationTo realmNavigator.NavigationExecuted += OnNavigationExecuted; } + /// + /// TODO: This is a temporary solution to show the chat when the user navigates to a parcel. + /// NOTE: check this PR for more details: + /// https://github.com/decentraland/unity-explorer/issues/4324 + /// + /// private void OnNavigationExecuted(Vector2Int parcel) { sharedSpaceManager.ShowAsync(PanelsSharingSpace.Chat, new ChatControllerShowParams(true,false)).Forget(); } + /// + /// TODO: This is a temporary solution to show the chat when the user changes realm. + /// NOTE: check this PR for more details: + /// https://github.com/decentraland/unity-explorer/issues/4324 + /// + /// private void OnRealmChange(RealmKind realmKind) { sharedSpaceManager.ShowAsync(PanelsSharingSpace.Chat, new ChatControllerShowParams(true,false)).Forget();