Update chat link fix to use Bukkit's current system instead of the old one
By: Thinkofdeath <thethinkofdeath@gmail.com>
This commit is contained in:
41
CraftBukkit-Patches/0096-Support-non-prefixed-URLs.patch
Normal file
41
CraftBukkit-Patches/0096-Support-non-prefixed-URLs.patch
Normal file
@@ -0,0 +1,41 @@
|
||||
From bf22233f1d884d0899b6e971661ebe541bcc94b4 Mon Sep 17 00:00:00 2001
|
||||
From: Thinkofdeath <thethinkofdeath@gmail.com>
|
||||
Date: Sat, 18 Jan 2014 19:32:42 +0000
|
||||
Subject: [PATCH] Support non-prefixed URLs
|
||||
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/util/CraftChatMessage.java b/src/main/java/org/bukkit/craftbukkit/util/CraftChatMessage.java
|
||||
index 66368f4..f4de71c 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/util/CraftChatMessage.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/util/CraftChatMessage.java
|
||||
@@ -19,7 +19,7 @@ import com.google.common.collect.ImmutableMap.Builder;
|
||||
public final class CraftChatMessage {
|
||||
private static class StringMessage {
|
||||
private static final Map<Character, EnumChatFormat> formatMap;
|
||||
- private static final Pattern INCREMENTAL_PATTERN = Pattern.compile("(" + String.valueOf(org.bukkit.ChatColor.COLOR_CHAR) + "[0-9a-fk-or])|(\\n)|(?:(https?://[^ ][^ ]*?)(?=[\\.\\?!,;:]?(?:[ \\n]|$)))", Pattern.CASE_INSENSITIVE);
|
||||
+ private static final Pattern INCREMENTAL_PATTERN = Pattern.compile("(" + String.valueOf(org.bukkit.ChatColor.COLOR_CHAR) + "[0-9a-fk-or])|(\\n)|((?:(?:https?)://)?(?:[-\\w_\\.]{2,}\\.[a-z]{2,4}.*?(?=[\\.\\?!,;:]?(?:[ \\n]|$))))", Pattern.CASE_INSENSITIVE);
|
||||
|
||||
static {
|
||||
Builder<Character, EnumChatFormat> builder = ImmutableMap.builder();
|
||||
@@ -85,6 +85,9 @@ public final class CraftChatMessage {
|
||||
currentChatComponent = null;
|
||||
break;
|
||||
case 3:
|
||||
+ if ( !( match.startsWith( "http://" ) || match.startsWith( "https://" ) ) ) {
|
||||
+ match = "http://" + match;
|
||||
+ }
|
||||
modifier.a(new ChatClickable(EnumClickAction.OPEN_URL, match)); // Should be setChatClickable
|
||||
appendNewComponent(matcher.end(groupId));
|
||||
modifier.a((ChatClickable) null);
|
||||
@@ -96,7 +99,7 @@ public final class CraftChatMessage {
|
||||
appendNewComponent(message.length());
|
||||
}
|
||||
|
||||
- output = list.toArray(new IChatBaseComponent[0]);
|
||||
+ output = list.toArray(new IChatBaseComponent[list.size()]);
|
||||
}
|
||||
|
||||
private void appendNewComponent(int index) {
|
||||
--
|
||||
1.8.4.msysgit.0
|
||||
|
||||
Reference in New Issue
Block a user