diff --git a/app/assets/javascripts/discourse/app/templates/composer.hbs b/app/assets/javascripts/discourse/app/templates/composer.hbs index e1c50bc71b6..484aac0eeed 100644 --- a/app/assets/javascripts/discourse/app/templates/composer.hbs +++ b/app/assets/javascripts/discourse/app/templates/composer.hbs @@ -44,6 +44,9 @@ {{/if}} {{/unless}} + + {{plugin-outlet name="before-composer-controls" args=(hash model=model) tagName="" connectorTagName=""}} + {{composer-toggles composeState=model.composeState showToolbar=showToolbar diff --git a/plugins/discourse-presence/assets/javascripts/discourse/components/composer-presence-display.js b/plugins/discourse-presence/assets/javascripts/discourse/components/composer-presence-display.js index 4430cf35ae9..68c85e74581 100644 --- a/plugins/discourse-presence/assets/javascripts/discourse/components/composer-presence-display.js +++ b/plugins/discourse-presence/assets/javascripts/discourse/components/composer-presence-display.js @@ -7,6 +7,7 @@ import Component from "@ember/component"; import { inject as service } from "@ember/service"; export default Component.extend({ + tagName: "", presence: service(), composerPresenceManager: service(), diff --git a/plugins/discourse-presence/assets/javascripts/discourse/templates/components/composer-presence-display.hbs b/plugins/discourse-presence/assets/javascripts/discourse/templates/components/composer-presence-display.hbs index e55bd318937..08b98e7bf89 100644 --- a/plugins/discourse-presence/assets/javascripts/discourse/templates/components/composer-presence-display.hbs +++ b/plugins/discourse-presence/assets/javascripts/discourse/templates/components/composer-presence-display.hbs @@ -12,10 +12,14 @@ {{~else~}} {{i18n "presence.editing" count=presenceUsers.length}} {{~/if}} - {{!-- (using comment to stop whitespace) ---}}{{!-- ---}} - ... + {{~""~}} + + {{~""~}} + + {{~""~}} + ... + {{~""~}} + {{/if}} diff --git a/plugins/discourse-presence/assets/javascripts/discourse/templates/connectors/composer-fields/presence.hbs b/plugins/discourse-presence/assets/javascripts/discourse/templates/connectors/before-composer-controls/presence.hbs similarity index 100% rename from plugins/discourse-presence/assets/javascripts/discourse/templates/connectors/composer-fields/presence.hbs rename to plugins/discourse-presence/assets/javascripts/discourse/templates/connectors/before-composer-controls/presence.hbs diff --git a/plugins/discourse-presence/assets/stylesheets/presence.scss b/plugins/discourse-presence/assets/stylesheets/presence.scss index fd4b1993b20..261b40a856d 100644 --- a/plugins/discourse-presence/assets/stylesheets/presence.scss +++ b/plugins/discourse-presence/assets/stylesheets/presence.scss @@ -52,32 +52,15 @@ } .composer-fields .presence-users { - position: absolute; - top: 20px; - right: 95px; - @media screen and (max-width: $small-width) { - max-width: 318px; - .presence-avatars { - flex-wrap: nowrap; - } + overflow: hidden; + flex-shrink: 1; + .presence-avatars { + flex-wrap: nowrap; } } -.mobile-view { - .presence-users { - font-size: $font-down-1; - } - .composer-fields .presence-users { - top: 7px; - right: 65px; - max-width: 70px; - .presence-avatars { - flex-wrap: nowrap; - } - .description { - display: none; - } - } +.mobile-view .composer-fields .presence-users .description { + display: none; } // TMP: RTL overrides diff --git a/plugins/discourse-presence/test/javascripts/acceptance/discourse-presence-test.js b/plugins/discourse-presence/test/javascripts/acceptance/discourse-presence-test.js index 3500f13a214..f2f268ed824 100644 --- a/plugins/discourse-presence/test/javascripts/acceptance/discourse-presence-test.js +++ b/plugins/discourse-presence/test/javascripts/acceptance/discourse-presence-test.js @@ -193,12 +193,7 @@ acceptance("Discourse Presence Plugin", function (needs) { await click("#topic-footer-buttons .btn.create"); assert.ok(exists(".d-editor-input"), "the composer input is visible"); - const avatarSelector = - ".composer-fields-outlet.presence .presence-avatars .avatar"; - assert.ok( - exists(".composer-fields-outlet.presence"), - "includes the presence component" - ); + const avatarSelector = ".composer-fields .presence-avatars .avatar"; assert.strictEqual(count(avatarSelector), 0, "no avatars displayed"); await joinChannel("/discourse-presence/reply/280", {