From aeaeceb92c648bf99bce60eb1bc77fcc81020d53 Mon Sep 17 00:00:00 2001
From: Kegan Dougal <kegan@matrix.org>
Date: Wed, 17 Sep 2014 16:38:32 +0100
Subject: [PATCH] Create room entries for public rooms too so their public
 state is transferred over correctly when you join it.

---
 webclient/components/matrix/event-handler-service.js | 1 +
 webclient/home/home-controller.js                    | 2 ++
 2 files changed, 3 insertions(+)

diff --git a/webclient/components/matrix/event-handler-service.js b/webclient/components/matrix/event-handler-service.js
index 0be294d745..d3de10c7e2 100644
--- a/webclient/components/matrix/event-handler-service.js
+++ b/webclient/components/matrix/event-handler-service.js
@@ -517,6 +517,7 @@ function(matrixService, $rootScope, $q, $timeout, mPresence) {
             if (!visible) {
                 return;
             }
+            initRoom(room_id);
             
             var room = $rootScope.events.rooms[room_id];
             if (room) {
diff --git a/webclient/home/home-controller.js b/webclient/home/home-controller.js
index 8ba817ca68..e35219bebb 100644
--- a/webclient/home/home-controller.js
+++ b/webclient/home/home-controller.js
@@ -53,6 +53,8 @@ angular.module('HomeController', ['matrixService', 'eventHandlerService', 'Recen
 
                     // Add room_alias & room_display_name members
                     angular.extend(room, matrixService.getRoomAliasAndDisplayName(room));
+                    
+                    eventHandlerService.setRoomVisibility(room.room_id, "public");
                 }
             }
         );
-- 
GitLab