about summary refs log tree commit diff
path: root/app/javascript/flavours/glitch/components/permalink.js
diff options
context:
space:
mode:
authorThibaut Girka <thib@sitedethib.com>2018-10-02 16:01:28 +0200
committerThibG <thib@sitedethib.com>2018-10-02 22:00:57 +0200
commita9e8f98a9d32c57956d41009bd09a1f33310676e (patch)
tree3bd7c0c40cb7a59dbe23fabfe1ad6c3a7f0becba /app/javascript/flavours/glitch/components/permalink.js
parentd82c495c0fcfe259f0b52386349a01a89c3e13cb (diff)
Make hidden media clickable in account media gallery
Diffstat (limited to 'app/javascript/flavours/glitch/components/permalink.js')
-rw-r--r--app/javascript/flavours/glitch/components/permalink.js15
1 files changed, 12 insertions, 3 deletions
diff --git a/app/javascript/flavours/glitch/components/permalink.js b/app/javascript/flavours/glitch/components/permalink.js
index d6556b584..1ea6a2915 100644
--- a/app/javascript/flavours/glitch/components/permalink.js
+++ b/app/javascript/flavours/glitch/components/permalink.js
@@ -12,12 +12,20 @@ export default class Permalink extends React.PureComponent {
     href: PropTypes.string.isRequired,
     to: PropTypes.string.isRequired,
     children: PropTypes.node,
+    onInterceptClick: PropTypes.func,
   };
 
   handleClick = (e) => {
-    if (this.context.router && e.button === 0 && !(e.ctrlKey || e.metaKey)) {
-      e.preventDefault();
-      this.context.router.history.push(this.props.to);
+    if (e.button === 0 && !(e.ctrlKey || e.metaKey)) {
+      if (this.props.onInterceptClick && this.props.onInterceptClick()) {
+        e.preventDefault();
+        return;
+      }
+
+      if (this.context.router) {
+        e.preventDefault();
+        this.context.router.history.push(this.props.to);
+      }
     }
   }
 
@@ -27,6 +35,7 @@ export default class Permalink extends React.PureComponent {
       className,
       href,
       to,
+      onInterceptClick,
       ...other
     } = this.props;