[Feature]: Ability to set the title of the tab dynamically
Is there an existing issue for this?
- [X] I have searched the existing issues
Summary
End users have many tabs open of their appsmith apps and they would like to have unique titles for the tabs based on the tickets they are looking up so that they can go to the right tab quickly
Why should this be worked on?
This was requested by enterprise customers and is important for operational use cases as it reduces the time for users to switch tabs
Hi, Can you please provide some more context here....Do we want to dynamically set (not manually) the tab titles?...What does - tickets user is looking for, mean here?
@deepthin3 I explain the requirement in this attached video
https://github.com/user-attachments/assets/c875ab07-835e-4e52-8dab-94bcf6f857bb
Hello @rohan-arthur and @carinanfonseca , Thank you for the requirement video.
can you please provide some more context and some clarification on this feature.
I have tried and implemented the feature and I am able to set the name of the tab dynamically but the issue is that :
problem 1. what was given in the lable property will be displayed in the title of the property pane and in the tabObjs section of Tab widget.
SS:
The property pane of Tab widget.
The title of the tab:
problem 2. If this is expected behaviour then we can go ahead with this implementation. and If this is not an expected behaviour the we have to show the evaluated value instead of the text. problem 2.1 If we show the evaluated value then the problem arises when the user tries to edit that name of the tab. what should be the expected behaviour.
We can see the same behaviour in the ButtonGroupWidget and it has the same issues and the problem 2 was not handled in this widget.
ss:
title of the Button property pane:
Hello @rohan-arthur here is a video of the feature and the problems:
https://github.com/user-attachments/assets/3ba2d314-57ca-454a-81c3-67d46e95deae
@saicharan-zemoso thank you for the explanation. Showing the expression seems like not ideal behaviour, but we can also keep it out of scope of this issue - Someone from the team will get back to you on this!
@saicharan-zemoso I have created a separate issue for the problem with display name: https://github.com/appsmithorg/appsmith/issues/36236
Please proceed with this one
Hello @rohan-arthur , I have raised a PR for this issue here is the link : #36275
@rahulbarwal this one is for you
Wait, I think this got de-railed. It sounds like the initial issue is talking about browser tabs, but we're talking about the tab widget in the comments.
End users have many tabs open of their appsmith apps
I have a user requesting this feature for browser tabs, not the tabs widget. I should be able to set the text on the tabs below to something other than the app name. At a glance I can't tell these two tickets apart (Oracle tabs), and will need to click into each one to identify it.
The original ticket is about the browser tabs and not the tab widget. @saicharan-zemoso @rohan-arthur
If this issue is indeed about browser tabs, i.e. the web page HTML document’s <title> element, then I have the same request…
I want to be able to set the HTML <title> element on a page so that the pages in our app don't all have the same title.
Context: we've built an app to maintain the product catalogue for our web shop, which includes a main page that shows a table of products, and 'details' pages that show all data for a single product - a kind of product data sheet. Blog post about the use case: https://hilton.org.uk/blog/information-pages
Problem: after browsing the app and looking at a few product pages, every entry in my browser history is ‘Product Catalogue’, so I can't use it to navigate to previously-viewed products.
As far as I can tell, the HTML <title> element is set to the app name on page load, so I’m guessing that there should be some JavaScript API to set it dynamically to something else.
Environment: self-hosted Appsmith Community v1.9.49
@Nikhil-Nandagopal In that case, please remove the Tab Widget label, which is why I ignored this issue and posted in the support channel instead 😅
Note that if the JavaScript context included access to the document object, it would probably be enough to be able to do:
document.title = `User ${id}`