diff --git a/app/assets/javascripts/admin/templates/backups_index.hbs b/app/assets/javascripts/admin/templates/backups_index.hbs
index ca8830a0e8a..c6a6598be64 100644
--- a/app/assets/javascripts/admin/templates/backups_index.hbs
+++ b/app/assets/javascripts/admin/templates/backups_index.hbs
@@ -21,10 +21,10 @@
{{fa-icon "download"}}{{i18n 'admin.backups.operations.download.label'}}
{{#if isOperationRunning}}
- {{d-button icon="trash-o" action="destroyBackup" actionParam=backup class="btn-danger no-text" disabled="true" title="admin.backups.operations.is_running"}}
+ {{d-button icon="trash-o" action="destroyBackup" actionParam=backup class="btn-danger" disabled="true" title="admin.backups.operations.is_running"}}
{{d-button icon="play" action="startRestore" actionParam=backup disabled=restoreDisabled title=restoreTitle label="admin.backups.operations.restore.label"}}
{{else}}
- {{d-button icon="trash-o" action="destroyBackup" actionParam=backup class="btn-danger no-text" title="admin.backups.operations.destroy.title"}}
+ {{d-button icon="trash-o" action="destroyBackup" actionParam=backup class="btn-danger" title="admin.backups.operations.destroy.title"}}
{{d-button icon="play" action="startRestore" actionParam=backup disabled=restoreDisabled title=restoreTitle label="admin.backups.operations.restore.label"}}
{{/if}}
diff --git a/app/assets/javascripts/admin/templates/components/site-setting.hbs b/app/assets/javascripts/admin/templates/components/site-setting.hbs
index eb117c0f4dc..15821600ee2 100644
--- a/app/assets/javascripts/admin/templates/components/site-setting.hbs
+++ b/app/assets/javascripts/admin/templates/components/site-setting.hbs
@@ -6,8 +6,8 @@
{{#if dirty}}
- {{d-button class="ok no-text" action="save" icon="check"}}
- {{d-button class="cancel no-text" action="cancel" icon="times"}}
+ {{d-button class="ok" action="save" icon="check"}}
+ {{d-button class="cancel" action="cancel" icon="times"}}
{{else if setting.overridden}}
{{d-button action="resetDefault" icon="undo" label="admin.site_settings.reset"}}
diff --git a/app/assets/javascripts/admin/templates/components/value-list.hbs b/app/assets/javascripts/admin/templates/components/value-list.hbs
index 79046a7d93d..6f6e1aa1941 100644
--- a/app/assets/javascripts/admin/templates/components/value-list.hbs
+++ b/app/assets/javascripts/admin/templates/components/value-list.hbs
@@ -5,7 +5,7 @@
{{d-button action="removeValue"
actionParam=value
icon="times"
- class="btn-small no-text"}}
+ class="btn-small"}}
{{value}}
{{/each}}
@@ -14,5 +14,5 @@
{{text-field value=newValue placeholderKey=addKey}}
- {{d-button action="addValue" icon="plus" class="btn-primary btn-small no-text" disabled=inputInvalid}}
+ {{d-button action="addValue" icon="plus" class="btn-primary btn-small" disabled=inputInvalid}}
diff --git a/app/assets/javascripts/admin/templates/user_index.hbs b/app/assets/javascripts/admin/templates/user_index.hbs
index 9d2c510b315..302db5f4d07 100644
--- a/app/assets/javascripts/admin/templates/user_index.hbs
+++ b/app/assets/javascripts/admin/templates/user_index.hbs
@@ -350,8 +350,8 @@
{{combo-box content=model.customGroups value=model.primary_group_id nameProperty="name" none="admin.groups.no_primary"}}
{{/if}}
{{#if primaryGroupDirty}}
- {{d-button icon="check" class="ok no-text" action="savePrimaryGroup"}}
- {{d-button icon="times" class="cancel no-text" action="resetPrimaryGroup"}}
+ {{d-button icon="check" class="ok" action="savePrimaryGroup"}}
+ {{d-button icon="times" class="cancel" action="resetPrimaryGroup"}}
{{/if}}
diff --git a/app/assets/javascripts/discourse/components/d-button.js.es6 b/app/assets/javascripts/discourse/components/d-button.js.es6
index 7673e60ac42..45fe5effce1 100644
--- a/app/assets/javascripts/discourse/components/d-button.js.es6
+++ b/app/assets/javascripts/discourse/components/d-button.js.es6
@@ -2,9 +2,11 @@ import { iconHTML } from 'discourse/helpers/fa-icon';
export default Ember.Component.extend({
tagName: 'button',
- classNameBindings: [':btn'],
+ classNameBindings: [':btn', 'noText'],
attributeBindings: ['disabled', 'translatedTitle:title'],
+ noText: Ember.computed.empty('translatedLabel'),
+
translatedTitle: function() {
const title = this.get('title');
return title ? I18n.t(title) : this.get('translatedLabel');
diff --git a/app/assets/javascripts/discourse/templates/components/bulk-select-button.hbs b/app/assets/javascripts/discourse/templates/components/bulk-select-button.hbs
index 30d9bc49fe8..4dad7efb0c4 100644
--- a/app/assets/javascripts/discourse/templates/components/bulk-select-button.hbs
+++ b/app/assets/javascripts/discourse/templates/components/bulk-select-button.hbs
@@ -1,5 +1,5 @@
{{#if selected}}
- {{d-button action="showBulkActions" icon="wrench" class="no-text"}}
+ {{d-button action="showBulkActions" icon="wrench"}}
{{/if}}
diff --git a/app/assets/javascripts/discourse/templates/modal/avatar_selector.hbs b/app/assets/javascripts/discourse/templates/modal/avatar_selector.hbs
index be857517d06..12f0309d6c8 100644
--- a/app/assets/javascripts/discourse/templates/modal/avatar_selector.hbs
+++ b/app/assets/javascripts/discourse/templates/modal/avatar_selector.hbs
@@ -7,7 +7,7 @@
- {{d-button action="refreshGravatar" title="user.change_avatar.refresh_gravatar_title" disabled=gravatarRefreshDisabled class="no-text" icon="refresh"}}
+ {{d-button action="refreshGravatar" title="user.change_avatar.refresh_gravatar_title" disabled=gravatarRefreshDisabled icon="refresh"}}
{{#if allowImageUpload}}
diff --git a/app/assets/javascripts/discourse/templates/topic-entrance.hbs b/app/assets/javascripts/discourse/templates/topic-entrance.hbs
index 3dbe96f871e..399ac0bdafd 100644
--- a/app/assets/javascripts/discourse/templates/topic-entrance.hbs
+++ b/app/assets/javascripts/discourse/templates/topic-entrance.hbs
@@ -1,7 +1,7 @@
-{{#d-button action="enterTop" class="full no-text jump-top"}}
+{{#d-button action="enterTop" class="full jump-top"}}
{{fa-icon 'caret-up'}} {{{topDate}}}
{{/d-button}}
-{{#d-button action="enterBottom" class="full no-text jump-button"}}
+{{#d-button action="enterBottom" class="full jump-button"}}
{{{bottomDate}}} {{fa-icon 'caret-down'}}
{{/d-button}}
diff --git a/app/assets/javascripts/discourse/templates/topic.hbs b/app/assets/javascripts/discourse/templates/topic.hbs
index 26e8bbc0178..5267a9febc9 100644
--- a/app/assets/javascripts/discourse/templates/topic.hbs
+++ b/app/assets/javascripts/discourse/templates/topic.hbs
@@ -26,8 +26,8 @@
{{plugin-outlet "edit-topic"}}
- {{d-button action="finishedEditingTopic" class="btn-primary btn-small no-text submit-edit" icon="check"}}
- {{d-button action="cancelEditingTopic" class="btn-small no-text cancel-edit" icon="times"}}
+ {{d-button action="finishedEditingTopic" class="btn-primary btn-small submit-edit" icon="check"}}
+ {{d-button action="cancelEditingTopic" class="btn-small cancel-edit" icon="times"}}
{{else}}
{{#unless model.is_warning}}
diff --git a/app/assets/javascripts/discourse/templates/user/preferences.hbs b/app/assets/javascripts/discourse/templates/user/preferences.hbs
index 775f93bd9db..9a29f36a878 100644
--- a/app/assets/javascripts/discourse/templates/user/preferences.hbs
+++ b/app/assets/javascripts/discourse/templates/user/preferences.hbs
@@ -91,7 +91,7 @@
{{! we want the "huge" version even though we're downsizing it to "large" in CSS }}
{{bound-avatar model "huge"}}
{{#if allowAvatarUpload}}
- {{d-button action="showAvatarSelector" class="pad-left no-text" icon="pencil"}}
+ {{d-button action="showAvatarSelector" class="pad-left" icon="pencil"}}
{{else}}
{{#unless ssoOverridesAvatar}}
{{fa-icon "pencil"}}