diff options
-rw-r--r-- | libkcal/incidenceformatter.cpp | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/libkcal/incidenceformatter.cpp b/libkcal/incidenceformatter.cpp index 785a681bd..887d000aa 100644 --- a/libkcal/incidenceformatter.cpp +++ b/libkcal/incidenceformatter.cpp @@ -575,9 +575,22 @@ static TQString displayViewFormatEvent( Calendar *calendar, Event *event, } if ( !event->description().isEmpty() ) { + TQString description = event->description(); + + // Regular expression to match URLs + TQRegExp urlRegex("https?://[^\\s]+"); + + int pos = 0; + while ((pos = urlRegex.search(description, pos)) != -1) { + TQString url = urlRegex.cap(0); + TQString link = "<a href=\"" + url + "\">" + url + "</a>"; + description.replace(pos, url.length(), link); + pos += link.length(); + } + tmpStr += "<tr>"; tmpStr += "<td><b>" + i18n( "Description:" ) + "</b></td>"; - tmpStr += "<td>" + event->description() + "</td>"; + tmpStr += "<td>" + description + "</td>"; tmpStr += "</tr>"; } |