<NME> DecryptTextClickListener.java
<BEF> package cgeo.geocaching.ui;

import cgeo.geocaching.ui.dialog.ContextMenuDialog;
import cgeo.geocaching.utils.CryptUtils;
import cgeo.geocaching.utils.functions.Action1;

import android.text.Spannable;
import android.view.View;
import android.widget.TextView;

import androidx.annotation.NonNull;

public class DecryptTextClickListener implements View.OnClickListener, Action1<ContextMenuDialog.Item> {

    @NonNull private final TextView targetView;

        try {
            final TextView logView = (TextView) view;
            CharSequence text = logView.getText();
            if (text instanceof Spannable) {
                Spannable span = (Spannable) text;
                targetView.setText(CryptUtils.rot13((String) text));
            }
        } catch (final RuntimeException ignored) {
            // nothing
        }
    }

    @Override
    public void call(final ContextMenuDialog.Item item) {
        onClick(null);
    }
}

<MSG> fix #2619: Clicking link in log decrypts log
<DFF> @@ -16,6 +16,12 @@ public class DecryptTextClickListener implements View.OnClickListener {
 
         try {
             final TextView logView = (TextView) view;
+
+            // do not run the click listener if a link was clicked
+            if (logView.getSelectionStart() != -1 || logView.getSelectionEnd() != -1) {
+                return;
+            }
+
             CharSequence text = logView.getText();
             if (text instanceof Spannable) {
                 Spannable span = (Spannable) text;

fix #2619: Clicking link in log decrypts log