about summary refs log tree commit diff
path: root/app/lib/formatter.rb
diff options
context:
space:
mode:
authorThibaut Girka <thib@sitedethib.com>2020-01-12 15:57:34 +0100
committerThibaut Girka <thib@sitedethib.com>2020-01-12 15:57:34 +0100
commit980c004f0601bbfaf440c0ea56de408ccfd79007 (patch)
tree8ed051d5e8b9c530b3282cfd84e34e50b3bcfa57 /app/lib/formatter.rb
parent180f1383943ad171d8394ef9af7c7861bfc08056 (diff)
parent24cd2126c6cfb80844ef9ffbf61647b3d9afdc68 (diff)
Merge branch 'master' into glitch-soc/merge-upstream
Conflicts:
- `Gemfile.lock`:
  No real conflict, glitch-soc-only dependency (redcarpet) too close to an
  upstream one (rdf-normalize)
- `README.md`:
  we have different READMEs, discarded upstream's changes
- `app/views/admin/custom_emojis/index.html.haml`:
  No real conflict, different context because of glitch-soc theming
- `lib/mastodon/statuses_cli.rb`:
  Upstream added code to keep bookmarked statuses, we were already doing so
  with slightly different code. Discarded upstream's changes.
- `package.json`:
  No real conflict, glitch-soc-only dependency (favico.js) too close to
  an upstream one
Diffstat (limited to 'app/lib/formatter.rb')
-rw-r--r--app/lib/formatter.rb5
1 files changed, 3 insertions, 2 deletions
diff --git a/app/lib/formatter.rb b/app/lib/formatter.rb
index 9159db2a1..36cdae9f7 100644
--- a/app/lib/formatter.rb
+++ b/app/lib/formatter.rb
@@ -308,8 +308,9 @@ class Formatter
     end
 
     standard = Extractor.extract_entities_with_indices(text, options)
+    xmpp = Extractor.extract_xmpp_uris_with_indices(text, options)
 
-    Extractor.remove_overlapping_entities(special + standard)
+    Extractor.remove_overlapping_entities(special + standard + xmpp)
   end
 
   def html_friendly_extractor(html, options = {})
@@ -370,7 +371,7 @@ class Formatter
 
   def link_html(url)
     url    = Addressable::URI.parse(url).to_s
-    prefix = url.match(/\Ahttps?:\/\/(www\.)?/).to_s
+    prefix = url.match(/\A(https?:\/\/(www\.)?|xmpp:)/).to_s
     text   = url[prefix.length, 30]
     suffix = url[prefix.length + 30..-1]
     cutoff = url[prefix.length..-1].length > 30