If you look at the forums on a mobile browser (here Firefox on Android), then you can see which topics you already visited and which not as the already visited ones are greyed out.
On Desktop browser you cannot see this and this is extremely bad for usability.
I was about to report this to Discourse, but on their demo instance it works as expected.
It seems the problem is the Gradle theme at https://sea1.discourse-cdn.com/gradle/stylesheets/desktop_theme_1_120de1033ff349d3c80ee9cf5c4c47b5309b51bf.css?__ws=discuss.gradle.org, where you have a whole bunch of !important
settings that destroy functionality. One of these is a{color:#1c7487 !important}
which forces all links to be the same color and thus makes the differentiation of visited from not visited links impossible.
I don’t know which other functionality you maybe break with the theme, but please at least fix this.
Either do not force all links to be that color, or do some other highlighting for visited topics like a grey background or whatever.
Here a Greasemonkey script (should also work with alternatives like Tampermonkey and so on) that works around the issue and forces visited links to be greyed out again:
// ==UserScript==
// @name Restore visited topic view on Gradle forums
// @description Restores the visited topic view on Gradle forums
// @author Björn Kautler
// @version 1.0
// @match https://discuss.gradle.org/*
// ==/UserScript==
(function() {var css = [
".topic-list-item.visited a.title:not(.badge-notification), .latest-topic-list-item.visited a.title:not(.badge-notification), .category-topic-link.visited a.title:not(.badge-notification) {",
" color: var(--primary-medium) !important;",
"}",
].join("\n");
if (typeof GM_addStyle != "undefined") {
GM_addStyle(css);
} else if (typeof PRO_addStyle != "undefined") {
PRO_addStyle(css);
} else if (typeof addStyle != "undefined") {
addStyle(css);
} else {
var node = document.createElement("style");
node.type = "text/css";
node.appendChild(document.createTextNode(css));
var heads = document.getElementsByTagName("head");
if (heads.length > 0) {
heads[0].appendChild(node);
}
}
})();