From 279441388ed8f66aef07bf99f76977d67e8e299a Mon Sep 17 00:00:00 2001 From: BurningTreeC Date: Sat, 26 Oct 2024 06:52:23 +0200 Subject: [PATCH] make everything even more generic --- core/wiki/functions/themes.tid | 19 +++++++ core/wiki/macros/sidebar-resizer.tid | 50 ++++++++----------- themes/tiddlywiki/centralised/functions.tid | 5 +- themes/tiddlywiki/centralised/styles.tid | 8 --- .../tiddlywiki/tight-heavier/metrics.multids | 8 --- themes/tiddlywiki/tight/base.tid | 16 +++--- themes/tiddlywiki/tight/functions.tid | 8 +++ themes/tiddlywiki/vanilla/ThemeTweaks.tid | 32 ++++++------ themes/tiddlywiki/vanilla/base.tid | 26 +++++----- themes/tiddlywiki/vanilla/functions.tid | 5 +- .../tiddlywiki/vanilla/sidebar-resizer-ui.tid | 2 +- themes/tiddlywiki/vanilla/sidebar-resizer.tid | 43 ++++++++++------ 12 files changed, 120 insertions(+), 102 deletions(-) create mode 100644 core/wiki/functions/themes.tid delete mode 100644 themes/tiddlywiki/tight-heavier/metrics.multids create mode 100644 themes/tiddlywiki/tight/functions.tid diff --git a/core/wiki/functions/themes.tid b/core/wiki/functions/themes.tid new file mode 100644 index 000000000..a9a51d1ca --- /dev/null +++ b/core/wiki/functions/themes.tid @@ -0,0 +1,19 @@ +title: $:/core/functions/themes +tags: $:/tags/Global + +\function get.base.theme.metric.recursive(theme,metric) [get[dependents]enlist-input[]] :map[function[get.base.theme.metric],,] + +\function get.base.theme.metric(theme,metric) [addsuffix[/metrics/]addsuffix!is[missing]] :else[addsuffix[/metrics/]addsuffixis[shadow]] :else[function[get.base.theme.metric.recursive],,] + +\function get.base.theme(theme,metric) [function[get.base.theme.metric],,removesuffixremovesuffix[/metrics/]] + +\function get.theme.metric(metric) [function[get.base.theme.metric],{$:/theme},first[]get[text]] + +\function get.theme(metric) [function[get.base.theme],{$:/theme},addsuffix[/metrics/]addsuffix!is[missing]] :else[function[get.base.theme],{$:/theme},addsuffix[/metrics/]addsuffixis[shadow]] :else[[$:/themes/tiddlywiki/vanilla/metrics/]addsuffix] + +\function set.theme.metric(metric) [function[get.base.theme.metric],{$:/theme},is[shadow]] :else[function[get.base.theme.metric],{$:/theme},!is[shadow]!is[missing]] :else[[$:/themes/tiddlywiki/vanilla/metrics/]addsuffix] + +\function get.base.functions.theme.recursive(theme) [get[dependents]enlist-input[]] :map[function[get.base.functions.theme],] + +\function get.base.functions.theme(theme) [addsufix[/functions]!is[missing]] :else[addsuffix[/functions]is[shadow]] :else[function[get.base.functions.theme.recursive],] + diff --git a/core/wiki/macros/sidebar-resizer.tid b/core/wiki/macros/sidebar-resizer.tid index 5b9817f9f..4af1fe8df 100644 --- a/core/wiki/macros/sidebar-resizer.tid +++ b/core/wiki/macros/sidebar-resizer.tid @@ -32,12 +32,6 @@ title: $:/core/macros/sidebar-resizer \function convert.to.result(value,suffix) [match[px]then] [match[%]then] [match[cm]then] [match[mm]then] [match[Q]then] [match[in]then] [match[pc]then] [match[pt]then] [match[em]then] -\function get.theme(metric) [{$:/theme}addsuffix[/]addsuffix!is[missing]] :else[{$:/theme}addsuffix[/]addsuffixis[shadow]] :else[[$:/themes/tiddlywiki/vanilla/]addsuffix] - -\function get.theme.metric(metric) [{$:/theme}addsuffix[/]addsuffixget[text]] :else[[$:/themes/tiddlywiki/vanilla/]addsuffixget[text]] - -\function set.theme.metric(metric) [{$:/theme}addsuffix[/]addsuffixis[shadow]] :else[{$:/theme}addsuffix[/]addsuffixis[shadow]!is[missing]] :else[[$:/themes/tiddlywiki/vanilla/]addsuffix] - \function get.value.metric(value) [suffix[px]then[px]] :else[suffix[%]then[%]] :else[suffix[cm]then[cm]] :else[suffix[mm]then[mm]] :else[suffix[Q]then[Q]] :else[suffix[in]then[in]] :else[suffix[pc]then[pc]] :else[suffix[pt]then[pt]] :else[suffix[em]then[em]] \procedure set_theme_throttling(metric) @@ -51,11 +45,11 @@ title: $:/core/macros/sidebar-resizer \procedure sidebar-resizer-pointerdown-actions() <%if [[$:/state/sidebar/resizing]is[missing]thenmatch[left]] %> <$let - startStoryLeft={{{ [!is[blank]get[text]] :else[get.theme.metric[metrics/storyleft]] }}} - startStoryRight={{{ [!is[blank]get[text]] :else[get.theme.metric[metrics/storyright]] }}} - startSidebarWidth={{{ [!is[blank]get[text]] :else[get.theme.metric[metrics/sidebarwidth]] }}} - startTiddlerWidth={{{ [!is[blank]get[text]] :else[get.theme.metric[metrics/tiddlerwidth]] }}} - startStoryWidth={{{ [!is[blank]get[text]] :else[get.theme.metric[metrics/storywidth]] }}}> + startStoryLeft={{{ [!is[blank]get[text]] :else[get.theme.metric[storyleft]] }}} + startStoryRight={{{ [!is[blank]get[text]] :else[get.theme.metric[storyright]] }}} + startSidebarWidth={{{ [!is[blank]get[text]] :else[get.theme.metric[sidebarwidth]] }}} + startTiddlerWidth={{{ [!is[blank]get[text]] :else[get.theme.metric[tiddlerwidth]] }}} + startStoryWidth={{{ [!is[blank]get[text]] :else[get.theme.metric[storywidth]] }}}> <$action-setfield $tiddler="$:/state/sidebar/resizing" text="yes" widget-node-width=<> @@ -83,15 +77,15 @@ title: $:/core/macros/sidebar-resizer <$let storyRightStart={{{ [convert.to.pixels{$:/state/sidebar/resizing!!start-story-right}] }}} storyWidthStart={{{ [convert.to.pixels{$:/state/sidebar/resizing!!start-story-width}] }}} - storyMinWidthValue={{{ [!is[blank]get[text]] :else[] }}} + storyMinWidthValue={{{ [!is[blank]get[text]] :else[] }}} storyMinWidth={{{ [convert.to.pixels] }}} - sidebarMinWidthValue={{{ [!is[blank]get[text]] :else[] }}} + sidebarMinWidthValue={{{ [!is[blank]get[text]] :else[] }}} sidebarMinWidth={{{ [convert.to.pixels] }}} storyPaddingLeftValue={{{ [!is[blank]get[text]] :else[get.theme.metric[metrics/storypaddingleft]] }}} storyPaddingLeft={{{ [convert.to.pixels] }}} storyPaddingRightValue={{{ [!is[blank]get[text]] :else[get.theme.metric[metrics/storypaddingright]] }}} storyPaddingRight={{{ [convert.to.pixels] }}} - storyLeftValue={{{ [!is[blank]get[text]] :else[] }}} + storyLeftValue={{{ [!is[blank]get[text]] :else[] }}} storyLeft={{{ [convert.to.pixels] }}} clampedDiff={{{ [addaddsubtractcompare:number:gt[0]] ~0 }}} storyWidthStart={{{ [subtract] }}} @@ -120,12 +114,12 @@ title: $:/core/macros/sidebar-resizer tiddlerWidthConverted={{{ [match[%]thenmultiply[100]divide] :else[function[convert.to.result],,] }}} tiddlerMinWidthConverted={{{ [match[%]thenmultiply[100]divide] :else[function[convert.to.result],,] }}} tiddlerMaxWidthConverted={{{ [match[%]thenmultiply[100]divide] :else[function[convert.to.result],,] }}} - storyWidthSetTiddler={{{ [!is[blank]] :else[] }}} - tiddlerWidthSetTiddler={{{ [!is[blank]] :else[] }}} + storyWidthSetTiddler={{{ [!is[blank]] :else[] }}} + tiddlerWidthSetTiddler={{{ [!is[blank]] :else[] }}} storyWidthResult={{{ [compare:number:ltthenaddsuffix] :else[compare:number:gteqthenaddsuffix] :else[addsuffix] }}} - tiddlerWidthResult={{{ [match[%]thencompare:number:ltthencompare:number:gteq[0]then] :else[match[%]thencompare:number:gtthen] :else[!match[%]thencompare:number:ltthenaddsuffix] :else[!match[%]thencompare:number:gteqthenaddsuffix] :else[compare:number:lt[0]then[0]addsuffix] :else[addsuffix] }}}> + tiddlerWidthResult={{{ [match[%]thencompare:number:ltthencompare:number:gteq[0]then] :else[match[%]thencompare:number:gtthen] :else[!match[%]thencompare:number:ltthenaddsuffix] :else[!match[%]thencompare:number:gteqthenaddsuffix] :else[compare:number:lt[0]then[0]addsuffix] :else[addsuffix] }}}> <$action-setfield $tiddler=<> text=<>/> <$action-setfield $tiddler=<> text=<>/> @@ -137,7 +131,7 @@ title: $:/core/macros/sidebar-resizer storyRiverWidthConverted={{{ [function[convert.to.result],,] }}} storyRiverLimitConverted={{{ [function[convert.to.result],,] }}} storyMinWidthAddLeftConverted={{{ [function[convert.to.result],,] }}} - storyRightSetTiddler={{{ [!is[blank]] :else[] }}} + storyRightSetTiddler={{{ [!is[blank]] :else[] }}} result={{{ [compare:number:ltthenaddsuffix] :else[compare:number:gteqthenaddsuffix] :else[addsuffix] }}}> @@ -150,12 +144,12 @@ title: $:/core/macros/sidebar-resizer \procedure set-sidebarwidth-actions() <$let - sidebarMinWidthValue={{{ [!is[blank]get[text]] :else[] }}} + sidebarMinWidthValue={{{ [!is[blank]get[text]] :else[] }}} sidebarWidthMetric={{$:/state/sidebar/resizing!!sidebar-width-metric}} sidebarMinWidth={{{ [convert.to.pixels] }}} - storyLeftValue={{{ [!is[blank]get[text]] :else[] }}} + storyLeftValue={{{ [!is[blank]get[text]] :else[] }}} storyLeft={{{ [convert.to.pixels] }}} - storyMinWidthValue={{{ [!is[blank]get[text]] :else[] }}} + storyMinWidthValue={{{ [!is[blank]get[text]] :else[] }}} storyMinWidth={{{ [convert.to.pixels] }}} sidebarMaxWidth={{{ [subtractsubtract] }}} clampedDiff={{{ [addaddsubtractcompare:number:gt[0]] ~0 }}} @@ -165,7 +159,7 @@ title: $:/core/macros/sidebar-resizer sidebarWidthConverted={{{ [function[convert.to.result],,] }}} sidebarMaxWidthConverted={{{ [function[convert.to.result],,] }}} sidebarMinWidthConverted={{{ [function[convert.to.result],,] }}} - sidebarWidthSetTiddler={{{ [!is[blank]] :else[] }}}> + sidebarWidthSetTiddler={{{ [!is[blank]] :else[] }}}> <$action-setfield $tiddler=<> text={{{ [compare:number:gteqthenaddsuffix] :else[compare:number:ltthenaddsuffix] :else[addsuffix] }}}/> @@ -190,7 +184,7 @@ title: $:/core/macros/sidebar-resizer storyWidthConverted={{{ [function[convert.to.result],,] }}} storyMinWidthConverted={{{ [function[convert.to.result],,] }}} storyMaxWidthConverted={{{ [function[convert.to.result],,] }}} - storyWidthSetTiddler={{{ [!is[blank]] :else[] }}}> + storyWidthSetTiddler={{{ [!is[blank]] :else[] }}}> <$action-setfield $tiddler=<> text={{{ [compare:number:ltthenaddsuffix] :else[compare:number:gteqthenaddsuffix] :else[addsuffix] }}}/> @@ -205,17 +199,17 @@ title: $:/core/macros/sidebar-resizer <%if [[$:/state/sidebar/resizing]!is[missing]] %> <$let widgetNodeWidth={{$:/state/sidebar/resizing!!widget-node-width}} dragDiff=<> startStoryRight={{{ [convert.to.pixels{$:/state/sidebar/resizing!!start-story-right}] }}} storyRiverWidth={{{ [add] }}} startSidebarWidth={{{ [convert.to.pixels{$:/state/sidebar/resizing!!start-sidebar-width}] }}} sidebarWidth={{{ [subtract] }}}> <%if [match[yes]] %> - <> - <> - <> + <> + <> + <> <> <% endif %> <%if [match[yes]] %> - <> + <> <> <% endif %> <%if [match[yes]] %> - <> + <> <> <% endif %> diff --git a/themes/tiddlywiki/centralised/functions.tid b/themes/tiddlywiki/centralised/functions.tid index dae942c87..fb26e00de 100644 --- a/themes/tiddlywiki/centralised/functions.tid +++ b/themes/tiddlywiki/centralised/functions.tid @@ -2,4 +2,7 @@ title: $:/themes/tiddlywiki/centralised/functions \function set.centralised() yes \function set.storywidth.storyright() no -\function set.sidebarwidth() no \ No newline at end of file +\function set.sidebarwidth() no + +\function sidebar.resizer.maxwidth() 21px +\function sidebar.resizer.width() [[min(calc(]addsuffixaddsuffix[ / 2),]addsuffixaddsuffix[)]] diff --git a/themes/tiddlywiki/centralised/styles.tid b/themes/tiddlywiki/centralised/styles.tid index 72a80e8c6..0271a512a 100644 --- a/themes/tiddlywiki/centralised/styles.tid +++ b/themes/tiddlywiki/centralised/styles.tid @@ -53,12 +53,4 @@ tags: [[$:/tags/Stylesheet]] width: 100%; } - html .tc-sidebar-resizer { - left: min(calc(50% + ({{$:/themes/tiddlywiki/centralised/metrics/storywidth}} / 2) - (2 * {{$:/themes/tiddlywiki/centralised/metrics/storypaddingright}} / 3)),calc(100% - {{$:/themes/tiddlywiki/centralised/metrics/sidebarminwidth}} - (2 * {{$:/themes/tiddlywiki/centralised/metrics/storypaddingright}} / 3))); - } - - html body.tc-body .tc-sidebar-left .tc-sidebar-resizer { - left: auto; - right: min(calc(50% + ({{$:/themes/tiddlywiki/centralised/metrics/storywidth}} / 2) - (2 * {{$:/themes/tiddlywiki/centralised/metrics/storypaddingright}} / 3)),calc(100% - {{$:/themes/tiddlywiki/centralised/metrics/sidebarminwidth}} - (2 * {{$:/themes/tiddlywiki/centralised/metrics/storypaddingright}} / 3))); - } } diff --git a/themes/tiddlywiki/tight-heavier/metrics.multids b/themes/tiddlywiki/tight-heavier/metrics.multids deleted file mode 100644 index b4b9019d9..000000000 --- a/themes/tiddlywiki/tight-heavier/metrics.multids +++ /dev/null @@ -1,8 +0,0 @@ -title: $:/themes/tiddlywiki/tight-heavier/metrics/ - -sidebarwidth: 350px -storypaddingleft: 0px -storypaddingright: 0px -storyright: 770px -storywidth: 770px -tiddlerwidth: 770px diff --git a/themes/tiddlywiki/tight/base.tid b/themes/tiddlywiki/tight/base.tid index 1236597c5..5e8ff337a 100644 --- a/themes/tiddlywiki/tight/base.tid +++ b/themes/tiddlywiki/tight/base.tid @@ -1,8 +1,6 @@ title: $:/themes/tiddlywiki/tight/base tags: [[$:/tags/Stylesheet]] -\function get.theme.metric(metric) [{$:/theme}addsuffix[/]addsuffixget[text]] ~[[$:/themes/tiddlywiki/vanilla/]addsuffixget[text]] - \rules only filteredtranscludeinline transcludeinline macrodef macrocallinline conditional @media (max-width: {{$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint}}) { @@ -29,7 +27,7 @@ tags: [[$:/tags/Stylesheet]] } html body.tc-body section.tc-story-river { - padding: 0px <> 0px <>; + padding: 0px <> 0px <>; } html body.tc-body div.tc-tiddler-frame { @@ -51,12 +49,12 @@ tags: [[$:/tags/Stylesheet]] <%if [{$:/themes/tiddlywiki/vanilla/options/sidebarlayout}match[fixed-fluid]] %> html body.tc-body div.tc-sidebar-scrollable { - left: clamp(calc({{$:/themes/tiddlywiki/vanilla/metrics/storyleft}} + {{$:/themes/tiddlywiki/vanilla/metrics/storyminwidth}} + 42px),calc(<> + 42px),calc(100% - {{$:/themes/tiddlywiki/vanilla/metrics/sidebarminwidth}} + 42px)); + left: clamp(calc({{$:/themes/tiddlywiki/vanilla/metrics/storyleft}} + {{$:/themes/tiddlywiki/vanilla/metrics/storyminwidth}} + 42px),calc(<> + 42px),calc(100% - {{$:/themes/tiddlywiki/vanilla/metrics/sidebarminwidth}} + 42px)); } html body.tc-body .tc-sidebar-left div.tc-sidebar-scrollable { left: 0; - right: clamp(calc({{$:/themes/tiddlywiki/vanilla/metrics/storyleft}} + {{$:/themes/tiddlywiki/vanilla/metrics/storyminwidth}} + 42px),calc(<> + 42px),calc(100% - {{$:/themes/tiddlywiki/vanilla/metrics/sidebarminwidth}} + 42px)); + right: clamp(calc({{$:/themes/tiddlywiki/vanilla/metrics/storyleft}} + {{$:/themes/tiddlywiki/vanilla/metrics/storyminwidth}} + 42px),calc(<> + 42px),calc(100% - {{$:/themes/tiddlywiki/vanilla/metrics/sidebarminwidth}} + 42px)); } <% endif %> @@ -121,24 +119,24 @@ tags: [[$:/tags/Stylesheet]] html body.tc-body .tc-sidebar-resizer { width: 12px; right: auto; - left: clamp(calc({{$:/themes/tiddlywiki/vanilla/metrics/storyleft}} + {{$:/themes/tiddlywiki/vanilla/metrics/storyminwidth}}),clamp(calc(<>),max(calc({{$:/themes/tiddlywiki/vanilla/metrics/storyleft}} + <>),calc(<>)),max(calc(100% - {{$:/themes/tiddlywiki/vanilla/metrics/sidebarminwidth}} + ({{$:/themes/tiddlywiki/vanilla/metrics/storyleft}} + <> - <>)),calc(100% - {{$:/themes/tiddlywiki/vanilla/metrics/sidebarminwidth}}))),calc(100% - {{$:/themes/tiddlywiki/vanilla/metrics/sidebarminwidth}})); + left: clamp(calc({{$:/themes/tiddlywiki/vanilla/metrics/storyleft}} + {{$:/themes/tiddlywiki/vanilla/metrics/storyminwidth}}),clamp(calc(<>),max(calc({{$:/themes/tiddlywiki/vanilla/metrics/storyleft}} + <>),calc(<>)),max(calc(100% - {{$:/themes/tiddlywiki/vanilla/metrics/sidebarminwidth}} + ({{$:/themes/tiddlywiki/vanilla/metrics/storyleft}} + <> - <>)),calc(100% - {{$:/themes/tiddlywiki/vanilla/metrics/sidebarminwidth}}))),calc(100% - {{$:/themes/tiddlywiki/vanilla/metrics/sidebarminwidth}})); } html body.tc-body .tc-sidebar-left .tc-sidebar-resizer { left: auto; - right: clamp(calc({{$:/themes/tiddlywiki/vanilla/metrics/storyleft}} + {{$:/themes/tiddlywiki/vanilla/metrics/storyminwidth}}),clamp(calc(<>),max(calc({{$:/themes/tiddlywiki/vanilla/metrics/storyleft}} + <>),calc(<>)),max(calc(100% - {{$:/themes/tiddlywiki/vanilla/metrics/sidebarminwidth}} + ({{$:/themes/tiddlywiki/vanilla/metrics/storyleft}} + <> - <>)),calc(100% - {{$:/themes/tiddlywiki/vanilla/metrics/sidebarminwidth}}))),calc(100% - {{$:/themes/tiddlywiki/vanilla/metrics/sidebarminwidth}})); + right: clamp(calc({{$:/themes/tiddlywiki/vanilla/metrics/storyleft}} + {{$:/themes/tiddlywiki/vanilla/metrics/storyminwidth}}),clamp(calc(<>),max(calc({{$:/themes/tiddlywiki/vanilla/metrics/storyleft}} + <>),calc(<>)),max(calc(100% - {{$:/themes/tiddlywiki/vanilla/metrics/sidebarminwidth}} + ({{$:/themes/tiddlywiki/vanilla/metrics/storyleft}} + <> - <>)),calc(100% - {{$:/themes/tiddlywiki/vanilla/metrics/sidebarminwidth}}))),calc(100% - {{$:/themes/tiddlywiki/vanilla/metrics/sidebarminwidth}})); } <%if [{$:/themes/tiddlywiki/vanilla/options/sidebarlayout}match[fluid-fixed]] %> html body.tc-body .tc-sidebar-resizer { - left: clamp(calc({{$:/themes/tiddlywiki/vanilla/metrics/storyleft}} + {{$:/themes/tiddlywiki/vanilla/metrics/storyminwidth}}),calc(100% - <>),calc(100% - {{$:/themes/tiddlywiki/vanilla/metrics/sidebarminwidth}})); + left: clamp(calc({{$:/themes/tiddlywiki/vanilla/metrics/storyleft}} + {{$:/themes/tiddlywiki/vanilla/metrics/storyminwidth}}),calc(100% - <>),calc(100% - {{$:/themes/tiddlywiki/vanilla/metrics/sidebarminwidth}})); right: auto; } html body.tc-body .tc-sidebar-left .tc-sidebar-resizer { left: auto; - right: clamp(calc({{$:/themes/tiddlywiki/vanilla/metrics/storyleft}} + {{$:/themes/tiddlywiki/vanilla/metrics/storyminwidth}}),calc(100% - <>),calc(100% - {{$:/themes/tiddlywiki/vanilla/metrics/sidebarminwidth}})); + right: clamp(calc({{$:/themes/tiddlywiki/vanilla/metrics/storyleft}} + {{$:/themes/tiddlywiki/vanilla/metrics/storyminwidth}}),calc(100% - <>),calc(100% - {{$:/themes/tiddlywiki/vanilla/metrics/sidebarminwidth}})); } <% endif %> diff --git a/themes/tiddlywiki/tight/functions.tid b/themes/tiddlywiki/tight/functions.tid new file mode 100644 index 000000000..d01adc7ec --- /dev/null +++ b/themes/tiddlywiki/tight/functions.tid @@ -0,0 +1,8 @@ +title: $:/themes/tiddlywiki/tight/functions + +\function set.centralised() no +\function set.storywidth.storyright() [{$:/themes/tiddlywiki/vanilla/options/sidebarlayout}match[fixed-fluid]then[yes]] :else[[no]] +\function set.sidebarwidth() [{$:/themes/tiddlywiki/vanilla/options/sidebarlayout}match[fluid-fixed]then[yes]] :else[[no]] + +\function sidebar.resizer.maxwidth() 12px +\function sidebar.resizer.width() <> diff --git a/themes/tiddlywiki/vanilla/ThemeTweaks.tid b/themes/tiddlywiki/vanilla/ThemeTweaks.tid index ccaff266c..6ea3c4a95 100644 --- a/themes/tiddlywiki/vanilla/ThemeTweaks.tid +++ b/themes/tiddlywiki/vanilla/ThemeTweaks.tid @@ -4,8 +4,6 @@ caption: {{$:/language/ThemeTweaks/ThemeTweaks}} \define lingo-base() $:/language/ThemeTweaks/ -\function get.theme(metric) [{$:/theme}addsuffix[/]addsuffix!is[missing]] ~[{$:/theme}addsuffix[/]addsuffixis[shadow]] ~[[$:/themes/tiddlywiki/vanilla/]addsuffix] - \define replacement-text() [img[$(imageTitle)$]] \end @@ -70,18 +68,18 @@ caption: {{$:/language/ThemeTweaks/ThemeTweaks}} <> -|<$link to=<>><> |<$edit-text tiddler=<> default="" tag="input"/> | -|<$link to=<>><> |<$edit-text tiddler=<> default="" tag="input"/> | -|<$link to=<>><> |<$edit-text tiddler=<> default="" tag="input"/> | -|<$link to=<>><> |<$edit-text tiddler=<> default="" tag="input"/> | -|<$link to=<>><>
//<>// |^<$edit-text tiddler=<> default="" tag="input"/> | -|<$link to=<>><>
//<>// |^<$edit-text tiddler=<> default="" tag="input"/> | -|<$link to=<>><>
//<>// |^<$edit-text tiddler=<> default="" tag="input"/> | -|<$link to=<>><>
//<>// |^<$edit-text tiddler=<> default="" tag="input"/> | -|<$link to=<>><>
//<>// |^<$edit-text tiddler=<> default="" tag="input"/> | -|<$link to=<>><>
//<>// |^<$edit-text tiddler=<> default="" tag="input"/> | -|<$link to=<>><>
//<>// |^<$edit-text tiddler=<> default="" tag="input"/> | -|<$link to=<>><>
//<>//
|^<$edit-text tiddler=<> default="" tag="input"/> | -|<$link to=<>><>
//<>// |^<$edit-text tiddler=<> default="" tag="input"/> | -|<$link to=<>><>
//<>// |^<$edit-text tiddler=<> default="" tag="input"/> | -|<$link to=<>><>
//<>// |^<$edit-text tiddler=<> default="" tag="input"/> | +|<$link to=<>><> |<$edit-text tiddler=<> default="" tag="input"/> | +|<$link to=<>><> |<$edit-text tiddler=<> default="" tag="input"/> | +|<$link to=<>><> |<$edit-text tiddler=<> default="" tag="input"/> | +|<$link to=<>><> |<$edit-text tiddler=<> default="" tag="input"/> | +|<$link to=<>><>
//<>// |^<$edit-text tiddler=<> default="" tag="input"/> | +|<$link to=<>><>
//<>// |^<$edit-text tiddler=<> default="" tag="input"/> | +|<$link to=<>><>
//<>// |^<$edit-text tiddler=<> default="" tag="input"/> | +|<$link to=<>><>
//<>// |^<$edit-text tiddler=<> default="" tag="input"/> | +|<$link to=<>><>
//<>// |^<$edit-text tiddler=<> default="" tag="input"/> | +|<$link to=<>><>
//<>// |^<$edit-text tiddler=<> default="" tag="input"/> | +|<$link to=<>><>
//<>// |^<$edit-text tiddler=<> default="" tag="input"/> | +|<$link to=<>><>
//<>//
|^<$edit-text tiddler=<> default="" tag="input"/> | +|<$link to=<>><>
//<>// |^<$edit-text tiddler=<> default="" tag="input"/> | +|<$link to=<>><>
//<>// |^<$edit-text tiddler=<> default="" tag="input"/> | +|<$link to=<>><>
//<>// |^<$edit-text tiddler=<> default="" tag="input"/> | diff --git a/themes/tiddlywiki/vanilla/base.tid b/themes/tiddlywiki/vanilla/base.tid index 747d650a0..f6df2ffbd 100644 --- a/themes/tiddlywiki/vanilla/base.tid +++ b/themes/tiddlywiki/vanilla/base.tid @@ -3,8 +3,6 @@ tags: [[$:/tags/Stylesheet]] list-before: code-body: yes -\function get.theme.metric(metric) [{$:/theme}addsuffix[/]addsuffixget[text]] ~[[$:/themes/tiddlywiki/vanilla/]addsuffixget[text]] - \define custom-background-datauri() <$set name="background" value={{$:/themes/tiddlywiki/vanilla/settings/backgroundimage}}> <$list filter="[is[image]]"> @@ -1029,7 +1027,7 @@ button.tc-btn-invisible.tc-remove-tag-button { .tc-sidebar-scrollable { position: fixed; top: {{$:/themes/tiddlywiki/vanilla/metrics/storytop}}; - left: clamp(calc({{$:/themes/tiddlywiki/vanilla/metrics/storyleft}} + {{$:/themes/tiddlywiki/vanilla/metrics/storyminwidth}}),<>,calc(100% - {{$:/themes/tiddlywiki/vanilla/metrics/sidebarminwidth}})); + left: clamp(calc({{$:/themes/tiddlywiki/vanilla/metrics/storyleft}} + {{$:/themes/tiddlywiki/vanilla/metrics/storyminwidth}}),<>,calc(100% - {{$:/themes/tiddlywiki/vanilla/metrics/sidebarminwidth}})); bottom: 0; right: 0; overflow-y: auto; @@ -1041,7 +1039,7 @@ button.tc-btn-invisible.tc-remove-tag-button { .tc-sidebar-left .tc-sidebar-scrollable { left: 0; - right: clamp(calc({{$:/themes/tiddlywiki/vanilla/metrics/storyleft}} + {{$:/themes/tiddlywiki/vanilla/metrics/storyminwidth}}),<>,calc(100% - {{$:/themes/tiddlywiki/vanilla/metrics/sidebarminwidth}})); + right: clamp(calc({{$:/themes/tiddlywiki/vanilla/metrics/storyleft}} + {{$:/themes/tiddlywiki/vanilla/metrics/storyminwidth}}),<>,calc(100% - {{$:/themes/tiddlywiki/vanilla/metrics/sidebarminwidth}})); margin: 0 0 0 0; } @@ -1056,14 +1054,14 @@ button.tc-btn-invisible.tc-remove-tag-button { .tc-story-river { left: max(0px,{{$:/themes/tiddlywiki/vanilla/metrics/storyleft}}); - right: clamp(calc({{$:/themes/tiddlywiki/vanilla/metrics/storyminwidth}} - {{$:/themes/tiddlywiki/vanilla/metrics/storyleft}}),calc(100% - <> - {{$:/themes/tiddlywiki/vanilla/metrics/storyleft}}),calc(100% - {{$:/themes/tiddlywiki/vanilla/metrics/sidebarminwidth}})); + right: clamp(calc({{$:/themes/tiddlywiki/vanilla/metrics/storyminwidth}} - {{$:/themes/tiddlywiki/vanilla/metrics/storyleft}}),calc(100% - <> - {{$:/themes/tiddlywiki/vanilla/metrics/storyleft}}),calc(100% - {{$:/themes/tiddlywiki/vanilla/metrics/sidebarminwidth}})); top: {{$:/themes/tiddlywiki/vanilla/metrics/storytop}}; - width: clamp({{$:/themes/tiddlywiki/vanilla/metrics/storyminwidth}},<>,calc(100% - {{$:/themes/tiddlywiki/vanilla/metrics/sidebarminwidth}})); + width: clamp({{$:/themes/tiddlywiki/vanilla/metrics/storyminwidth}},<>,calc(100% - {{$:/themes/tiddlywiki/vanilla/metrics/sidebarminwidth}})); padding: 42px {{$:/themes/tiddlywiki/vanilla/metrics/storypaddingright}} 42px {{$:/themes/tiddlywiki/vanilla/metrics/storypaddingleft}}; } .tc-sidebar-left .tc-story-river { - left: clamp({{$:/themes/tiddlywiki/vanilla/metrics/sidebarminwidth}},calc(100% - <> - {{$:/themes/tiddlywiki/vanilla/metrics/storyleft}}),calc(100% - {{$:/themes/tiddlywiki/vanilla/metrics/storyminwidth}})); + left: clamp({{$:/themes/tiddlywiki/vanilla/metrics/sidebarminwidth}},calc(100% - <> - {{$:/themes/tiddlywiki/vanilla/metrics/storyleft}}),calc(100% - {{$:/themes/tiddlywiki/vanilla/metrics/storyminwidth}})); right: max(0px,{{$:/themes/tiddlywiki/vanilla/metrics/storyleft}}); } @@ -1188,7 +1186,7 @@ button.tc-btn-invisible.tc-remove-tag-button { @media (min-width: <>) { .tc-tiddler-frame { padding: 28px 42px 42px 42px; - width: clamp(0px,<>,100%); + width: clamp(0px,<>,100%); border-radius: 2px; } @@ -1519,15 +1517,15 @@ html body.tc-body.tc-single-tiddler-window { width: auto; left: 0; margin-left: max(0px,{{$:/themes/tiddlywiki/vanilla/metrics/storyleft}}); - margin-right: clamp({{$:/themes/tiddlywiki/vanilla/metrics/sidebarminwidth}},<>,calc(100% - {{$:/themes/tiddlywiki/vanilla/metrics/storyleft}} - {{$:/themes/tiddlywiki/vanilla/metrics/storyminwidth}})); + margin-right: clamp({{$:/themes/tiddlywiki/vanilla/metrics/sidebarminwidth}},<>,calc(100% - {{$:/themes/tiddlywiki/vanilla/metrics/storyleft}} - {{$:/themes/tiddlywiki/vanilla/metrics/storyminwidth}})); } .tc-sidebar-left .tc-story-river { margin-right: max(0px,{{$:/themes/tiddlywiki/vanilla/metrics/storyleft}}); - margin-left: clamp({{$:/themes/tiddlywiki/vanilla/metrics/sidebarminwidth}},<>,calc(100% - {{$:/themes/tiddlywiki/vanilla/metrics/storyleft}} - {{$:/themes/tiddlywiki/vanilla/metrics/storyminwidth}})); + margin-left: clamp({{$:/themes/tiddlywiki/vanilla/metrics/sidebarminwidth}},<>,calc(100% - {{$:/themes/tiddlywiki/vanilla/metrics/storyleft}} - {{$:/themes/tiddlywiki/vanilla/metrics/storyminwidth}})); left: auto; right: 0; - padding-right: <>; + padding-right: <>; padding-left: 0; } @@ -1544,7 +1542,7 @@ html body.tc-body.tc-single-tiddler-window { left: auto; bottom: 0; right: 0; - width: clamp({{$:/themes/tiddlywiki/vanilla/metrics/sidebarminwidth}},<>,(100% - {{$:/themes/tiddlywiki/vanilla/metrics/storyminwidth}} - {{$:/themes/tiddlywiki/vanilla/metrics/storyleft}})); + width: clamp({{$:/themes/tiddlywiki/vanilla/metrics/sidebarminwidth}},<>,(100% - {{$:/themes/tiddlywiki/vanilla/metrics/storyminwidth}} - {{$:/themes/tiddlywiki/vanilla/metrics/storyleft}})); } .tc-sidebar-left .tc-sidebar-scrollable { @@ -1574,13 +1572,13 @@ html body.tc-body.tc-single-tiddler-window { } .tc-sidebar-left .tc-story-river { - margin-left: max(<>,calc(<> + {{$:/themes/tiddlywiki/vanilla/metrics/storyleft}})); + margin-left: max(<>,calc(<> + {{$:/themes/tiddlywiki/vanilla/metrics/storyleft}})); margin-right: 0; } html[dir="rtl"] .tc-sidebar-left .tc-story-river { margin-left: 0; - margin-right: max(<>,calc(<> + {{$:/themes/tiddlywiki/vanilla/metrics/storyleft}})); + margin-right: max(<>,calc(<> + {{$:/themes/tiddlywiki/vanilla/metrics/storyleft}})); } body.tc-body .tc-page-container.tc-page-view-zoomin .tc-tiddler-frame { diff --git a/themes/tiddlywiki/vanilla/functions.tid b/themes/tiddlywiki/vanilla/functions.tid index 2896975a8..de016d109 100644 --- a/themes/tiddlywiki/vanilla/functions.tid +++ b/themes/tiddlywiki/vanilla/functions.tid @@ -2,4 +2,7 @@ title: $:/themes/tiddlywiki/vanilla/functions \function set.centralised() no \function set.storywidth.storyright() [{$:/themes/tiddlywiki/vanilla/options/sidebarlayout}match[fixed-fluid]then[yes]] :else[[no]] -\function set.sidebarwidth() [{$:/themes/tiddlywiki/vanilla/options/sidebarlayout}match[fluid-fixed]then[yes]] :else[[no]] \ No newline at end of file +\function set.sidebarwidth() [{$:/themes/tiddlywiki/vanilla/options/sidebarlayout}match[fluid-fixed]then[yes]] :else[[no]] + +\function sidebar.resizer.maxwidth() 21px +\function sidebar.resizer.width() [[min(calc(]addsuffixaddsuffix[ / 2),]addsuffixaddsuffix[)]] diff --git a/themes/tiddlywiki/vanilla/sidebar-resizer-ui.tid b/themes/tiddlywiki/vanilla/sidebar-resizer-ui.tid index 6b8ecf0ef..adf1d0256 100644 --- a/themes/tiddlywiki/vanilla/sidebar-resizer-ui.tid +++ b/themes/tiddlywiki/vanilla/sidebar-resizer-ui.tid @@ -2,7 +2,7 @@ title: $:/themes/tiddlywiki/vanilla/ui/sidebar-resizer tags: $:/tags/PageTemplate list-after: $:/core/ui/PageTemplate/story -\import [{$:/theme}addsuffix[/functions]!is[missing]else{$:/theme}addsuffix[/functions]is[shadow]else[$:/themes/tiddlywiki/vanilla/functions]] [[$:/core/macros/sidebar-resizer]] +\import [function[get.base.functions.theme],{$:/theme}!is[missing]] :else[function[get.base.functions.theme],{$:/theme}is[shadow]] :else[[$:/themes/tiddlywiki/vanilla/functions]] [[$:/core/macros/sidebar-resizer]] \whitespace trim <%if [{$:/themes/tiddlywiki/vanilla/options/sidebarresizer}match[show]] %> diff --git a/themes/tiddlywiki/vanilla/sidebar-resizer.tid b/themes/tiddlywiki/vanilla/sidebar-resizer.tid index 6f40cd83b..e9e2db853 100644 --- a/themes/tiddlywiki/vanilla/sidebar-resizer.tid +++ b/themes/tiddlywiki/vanilla/sidebar-resizer.tid @@ -2,12 +2,12 @@ title: $:/themes/tiddlywiki/vanilla/sidebar-resizer tags: [[$:/tags/Stylesheet]] code-body: yes +\import [function[get.base.functions.theme],{$:/theme}!is[missing]] :else[function[get.base.functions.theme],{$:/theme}is[shadow]] :else[[$:/themes/tiddlywiki/vanilla/functions]] + \function sidebarbreakpoint() [{$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint}] \function sidebarbreakpoint-minus-one() [{$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint}removesuffix[px]subtract[1]addsuffix[px]] ~[{$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint}] -\function get.theme.metric(metric) [{$:/theme}addsuffix[/]addsuffixget[text]] ~[[$:/themes/tiddlywiki/vanilla/]addsuffixget[text]] - \rules only filteredtranscludeinline transcludeinline macrodef macrocallinline macrocallblock conditional @media (min-width: <>) { @@ -16,7 +16,7 @@ code-body: yes position: fixed; top: 0; height: 100%; - width: min(calc(<> / 2),21px); + width: <>; transition: opacity 100ms; opacity: 0.1; cursor: ew-resize; @@ -82,29 +82,42 @@ code-body: yes <% endif %> - <%if [{$:/theme}!match[$:/themes/tiddlywiki/centralised]] %> + <%if [match[yes]] %> .tc-sidebar-resizer { - left: clamp(calc({{$:/themes/tiddlywiki/vanilla/metrics/storyleft}} + {{$:/themes/tiddlywiki/vanilla/metrics/storyminwidth}} - (2 * {{$:/themes/tiddlywiki/vanilla/metrics/storypaddingright}} / 3)),clamp(calc({{$:/themes/tiddlywiki/vanilla/metrics/storywidth}} - (2 * {{$:/themes/tiddlywiki/vanilla/metrics/storypaddingright}} / 3)),max(calc({{$:/themes/tiddlywiki/vanilla/metrics/storyleft}} + {{$:/themes/tiddlywiki/vanilla/metrics/storywidth}} - (2 * {{$:/themes/tiddlywiki/vanilla/metrics/storypaddingright}} / 3)),calc({{$:/themes/tiddlywiki/vanilla/metrics/storyright}} - (2 * {{$:/themes/tiddlywiki/vanilla/metrics/storypaddingright}} / 3))),max(calc(100% - {{$:/themes/tiddlywiki/vanilla/metrics/sidebarminwidth}} - (2 * {{$:/themes/tiddlywiki/vanilla/metrics/storypaddingright}} / 3) + ({{$:/themes/tiddlywiki/vanilla/metrics/storyleft}} + {{$:/themes/tiddlywiki/vanilla/metrics/storywidth}} - {{$:/themes/tiddlywiki/vanilla/metrics/storyright}})),calc(100% - {{$:/themes/tiddlywiki/vanilla/metrics/sidebarminwidth}} - (2 * {{$:/themes/tiddlywiki/vanilla/metrics/storypaddingright}} / 3)))),calc(100% - {{$:/themes/tiddlywiki/vanilla/metrics/sidebarminwidth}} - (2 * {{$:/themes/tiddlywiki/vanilla/metrics/storypaddingright}} / 3))); + left: clamp(calc(<> + <> - (2 * <> / 3)),clamp(calc(<> - (2 * <> / 3)),max(calc(<> + <> - (2 * <> / 3)),calc(<> - (2 * <> / 3))),max(calc(100% - <> - (2 * <> / 3) + (<> + <> - <>)),calc(100% - <> - (2 * <> / 3)))),calc(100% - <> - (2 * <> / 3))); } .tc-sidebar-left .tc-sidebar-resizer { left: auto; - right: clamp(calc({{$:/themes/tiddlywiki/vanilla/metrics/storyleft}} + {{$:/themes/tiddlywiki/vanilla/metrics/storyminwidth}} - (2 * {{$:/themes/tiddlywiki/vanilla/metrics/storypaddingright}} / 3)),clamp(calc({{$:/themes/tiddlywiki/vanilla/metrics/storywidth}} - (2 * {{$:/themes/tiddlywiki/vanilla/metrics/storypaddingright}} / 3)),max(calc({{$:/themes/tiddlywiki/vanilla/metrics/storyleft}} + {{$:/themes/tiddlywiki/vanilla/metrics/storywidth}} - (2 * {{$:/themes/tiddlywiki/vanilla/metrics/storypaddingright}} / 3)),calc({{$:/themes/tiddlywiki/vanilla/metrics/storyright}} - (2 * {{$:/themes/tiddlywiki/vanilla/metrics/storypaddingright}} / 3))),max(calc(100% - {{$:/themes/tiddlywiki/vanilla/metrics/sidebarminwidth}} - (2 * {{$:/themes/tiddlywiki/vanilla/metrics/storypaddingright}} / 3) + ({{$:/themes/tiddlywiki/vanilla/metrics/storyleft}} + {{$:/themes/tiddlywiki/vanilla/metrics/storywidth}} - {{$:/themes/tiddlywiki/vanilla/metrics/storyright}})),calc(100% - {{$:/themes/tiddlywiki/vanilla/metrics/sidebarminwidth}} - (2 * {{$:/themes/tiddlywiki/vanilla/metrics/storypaddingright}} / 3)))),calc(100% - {{$:/themes/tiddlywiki/vanilla/metrics/sidebarminwidth}} - (2 * {{$:/themes/tiddlywiki/vanilla/metrics/storypaddingright}} / 3))); + right: clamp(calc(<> + <> - (2 * <> / 3)),clamp(calc(<> - (2 * <> / 3)),max(calc(<> + <> - (2 * <> / 3)),calc(<> - (2 * <> / 3))),max(calc(100% - <> - (2 * <> / 3) + (<> + <> - <>)),calc(100% - <> - (2 * <> / 3)))),calc(100% - <> - (2 * <> / 3))); } - <%if [{$:/themes/tiddlywiki/vanilla/options/sidebarlayout}match[fluid-fixed]] %> + <% endif %> - .tc-sidebar-resizer { - left: clamp(calc({{$:/themes/tiddlywiki/vanilla/metrics/storyleft}} + {{$:/themes/tiddlywiki/vanilla/metrics/storyminwidth}} + ({{$:/themes/tiddlywiki/vanilla/metrics/storypaddingright}} / 3)),calc(100% - {{$:/themes/tiddlywiki/vanilla/metrics/sidebarwidth}} + ({{$:/themes/tiddlywiki/vanilla/metrics/storypaddingright}} / 3)),calc(100% - {{$:/themes/tiddlywiki/vanilla/metrics/sidebarminwidth}} + ({{$:/themes/tiddlywiki/vanilla/metrics/storypaddingright}} / 3))); - } + <%if [match[yes]] %> - .tc-sidebar-left .tc-sidebar-resizer { - left: auto; - right: clamp(calc({{$:/themes/tiddlywiki/vanilla/metrics/storyleft}} + {{$:/themes/tiddlywiki/vanilla/metrics/storyminwidth}} + ({{$:/themes/tiddlywiki/vanilla/metrics/storypaddingright}} / 3)),calc(100% - {{$:/themes/tiddlywiki/vanilla/metrics/sidebarwidth}} + ({{$:/themes/tiddlywiki/vanilla/metrics/storypaddingright}} / 3)),calc(100% - {{$:/themes/tiddlywiki/vanilla/metrics/sidebarminwidth}} + ({{$:/themes/tiddlywiki/vanilla/metrics/storypaddingright}} / 3))); - } + .tc-sidebar-resizer { + left: clamp(calc(<> + <> + (<> / 3)),calc(100% - <> + (<> / 3)),calc(100% - <> + (<> / 3))); + } - <% endif %> + .tc-sidebar-left .tc-sidebar-resizer { + left: auto; + right: clamp(calc(<> + <> + (<> / 3)),calc(100% - <> + (<> / 3)),calc(100% - <> + (<> / 3))); + } + + <% endif %> + + <%if [match[yes]] %> + + .tc-sidebar-resizer { + left: min(calc(50% + (<> / 2) - (2 * <> / 3)),calc(100% - <> - (2 * <> / 3))); + } + + .tc-sidebar-left .tc-sidebar-resizer { + left: auto; + right: min(calc(50% + (<> / 2) - (2 * <> / 3)),calc(100% - <> - (2 * <> / 3))); + } <% endif %>