summaryrefslogtreecommitdiffstats
path: root/libkcal/incidenceformatter.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'libkcal/incidenceformatter.cpp')
-rw-r--r--libkcal/incidenceformatter.cpp15
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>";
}