diff --git a/packages/rocketchat-theme/client/imports/base.css b/packages/rocketchat-theme/client/imports/base.css index 421b8e1830b..90711488faa 100644 --- a/packages/rocketchat-theme/client/imports/base.css +++ b/packages/rocketchat-theme/client/imports/base.css @@ -1586,6 +1586,7 @@ label.required::after { font-size: 22px; font-weight: 500; line-height: 29px; + flex: 1; & .icon-at, & .icon-hash, @@ -1597,6 +1598,11 @@ label.required::after { & .icon-star-empty { margin-right: -4px; } + + & .iframe-toolbar { + flex-grow: 0; + white-space: nowrap; + } } & .submit { diff --git a/packages/rocketchat-ui/client/lib/iframeCommands.js b/packages/rocketchat-ui/client/lib/iframeCommands.js index 066bb3e1330..2647b8acf92 100644 --- a/packages/rocketchat-ui/client/lib/iframeCommands.js +++ b/packages/rocketchat-ui/client/lib/iframeCommands.js @@ -50,6 +50,18 @@ const commands = { Meteor.call('logoutCleanUp', user); return FlowRouter.go('home'); }); + }, + + 'set-toolbar-button'({ id, icon, label }) { + const toolbar = Session.get('toolbarButtons') || { buttons: {} }; + toolbar.buttons[id] = { icon, label }; + Session.set('toolbarButtons', toolbar); + }, + + 'remove-toolbar-button'({ id }) { + const toolbar = Session.get('toolbarButtons') || { buttons: {} }; + delete toolbar.buttons[id]; + Session.set('toolbarButtons', toolbar); } }; diff --git a/packages/rocketchat-ui/client/views/app/room.html b/packages/rocketchat-ui/client/views/app/room.html index b8c25bb60e0..fc229359280 100644 --- a/packages/rocketchat-ui/client/views/app/room.html +++ b/packages/rocketchat-ui/client/views/app/room.html @@ -27,8 +27,19 @@ {{/if}} {{{RocketChatMarkdown roomTopic}}} + + {{#with toolbarButtons}} +
+ {{/with}} - + {{/unless}}