When transmitting data in a HTML-encoded element like <content type="html" />,
relying on newlines being preserved is not wise, since HTML by itself
does not care for newlines - it cares for <p> and <br>

Additional fix: reset NSFW toggle after sending toot
master
Eugen 8 years ago committed by GitHub
parent 9e5c1c487e
commit 043862f411
  1. 2
      app/assets/javascripts/components/components/status_content.jsx
  2. 1
      app/assets/javascripts/components/reducers/compose.jsx
  3. 1
      app/lib/formatter.rb

@ -92,7 +92,7 @@ const StatusContent = React.createClass({
const { status } = this.props; const { status } = this.props;
const { hidden } = this.state; const { hidden } = this.state;
const content = { __html: emojify(status.get('content')).replace(/\n/g, '') }; const content = { __html: emojify(status.get('content')) };
const spoilerContent = { __html: emojify(escapeTextContentForBrowser(status.get('spoiler_text', ''))) }; const spoilerContent = { __html: emojify(escapeTextContentForBrowser(status.get('spoiler_text', ''))) };
const directionStyle = { direction: 'ltr' }; const directionStyle = { direction: 'ltr' };

@ -67,6 +67,7 @@ function clearAll(state) {
map.set('is_submitting', false); map.set('is_submitting', false);
map.set('in_reply_to', null); map.set('in_reply_to', null);
map.set('privacy', state.get('default_privacy')); map.set('privacy', state.get('default_privacy'));
map.set('sensitive', false);
map.update('media_attachments', list => list.clear()); map.update('media_attachments', list => list.clear());
}); });
}; };

@ -15,6 +15,7 @@ class Formatter
html = status.text html = status.text
html = encode(html) html = encode(html)
html = simple_format(html, {}, sanitize: false) html = simple_format(html, {}, sanitize: false)
html = html.gsub(/\n/, '')
html = link_urls(html) html = link_urls(html)
html = link_mentions(html, status.mentions) html = link_mentions(html, status.mentions)
html = link_hashtags(html) html = link_hashtags(html)

Loading…
Cancel
Save