RocketChat / RocketChat/Rocket.Chat

Embedded layout disappers after most redirects

Open
#23,743 0 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
TypeScript
Stars
46.1k
Forks
13.9k
Avg merge
3d 3h
Merged PRs (30d)
130

Description

Description:

When I load a channel with ?layout=embedded, the channel loads with the simplistic optic. This works but most button and things you can click in the interface will redirect to an URL without ?layout=embedded and so, it leaves the embedded mode.

This is the biggest issue we have so far with integrating rocketchat with our plateform. The upgrade to 4.X did not improve on this.
This is a big deal for us as we are integrating rocketchat in a multi tenant plateform meaning that, as soon as it leaves the embedded mode, client A can see users and conversations from other clients.

Steps to reproduce:
Example 1:

Open https://open.rocket.chat/channel/general?layout=embedded
Click on a user icon
Click on "View full profile"

Expected behavior:
The view stays in layout=embedded while openning the profile of the user.
Note that if you manually adds the parameter layout=embedded while the profile is open like so: https://open.rocket.chat/channel/general/members-list/user?layout=embedded, then it works. It appears to be just a matter of redirect.

Actual behavior:
The embedded disappears and the full layout loads

Example 2:

Open https://open.rocket.chat/channel/general/uploaded-files-list?layout=embedded
Click on the close arrow button on the top right side of the right sidebar

Expected behavior:
The view stays in layout=embedded while closing the right side bar.

Actual behavior:
The embedded disappears and the full layout loads

Version of Rocket.Chat Server: 4.1.0 and 3.8.x
Operating System: ...
Deployment Method: ...
Number of Running Instances: ...
DB Replicaset Oplog: ...
NodeJS Version: ...
MongoDB Version: ...
Client Setup Information
Desktop App or Browser Version: any version
Operating System: Linux Manjaro

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the two URLs in the issue and tracing navigation after opening a user profile or closing the right sidebar. Check how those redirects handle the layout=embedded parameter; done means both flows retain embedded mode without loading the full layout.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
frontend, web-dev
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.