diff --git a/static/app.js b/static/app.js
index 9886583..ecc51c2 100644
--- a/static/app.js
+++ b/static/app.js
@@ -71,6 +71,7 @@ const defaultPrefs = {
base_tf: '1m',
enabled: { ma: { '1d': [10, 20, 50, 100, 200] }, drawings: true, manual: true, auto: false, horizontal: true, vwap: true, rth: true },
hidden_levels_score: false,
+ hide_finer_trendlines: true,
};
// Stored preferences outlive the shape they were written in. Anything added to
@@ -1384,8 +1385,15 @@ createApp({
function enabled(level) {
if (level.kind === 'ma') return (prefs.value.enabled.ma[level.tf] || []).includes(level.period);
if (level.kind === 'manual') {
- return prefs.value.enabled.drawings && prefs.value.enabled.manual
- && drawingVisible(level);
+ if (!(prefs.value.enabled.drawings && prefs.value.enabled.manual)) return false;
+ // Two independent hiding rules, so both apply: drawingVisible covers
+ // hideLowerTfDrawings, and hide_finer_trendlines hides sloped lines
+ // drawn on a finer timeframe than the one being viewed.
+ if (!drawingVisible(level)) return false;
+ if (prefs.value.hide_finer_trendlines && !ConfluenceChart.isFlat(level)) {
+ return timeframes.indexOf(level.tf) >= timeframes.indexOf(timeframe.value);
+ }
+ return true;
}
if (level.kind === 'horizontal') return prefs.value.enabled.horizontal;
if (level.kind === 'vwap') return prefs.value.enabled.vwap;
diff --git a/static/index.html b/static/index.html
index d26bed5..cfe497c 100644
--- a/static/index.html
+++ b/static/index.html
@@ -78,6 +78,7 @@
+