I think you're onto something here! I'll tinker with it, thank you. On Friday, March 1, 2019 at 7:43:28 AM UTC-5, BurningTreeC wrote: > > Hi @Jack Baty, > > there would be a way that involves editing the storyview javascript > tiddler ... that solution would be nice to have in the core, it just adds a > class to the tiddler when it's being navigated and removes it after the > interval of the animation duration has passed. > using a stylesheet the tiddler can be styled so that there's a visual > feedback. if no styling is done, nothing changes visually. > > if the classic storyview is used, the tiddler is > $:/core/modules/storyviews/classic.js ... > > it contains a block "ClassicStoryView.prototype.navigateTo" that looks > like this: > > ClassicStoryView.prototype.navigateTo = function(historyInfo) { > var listElementIndex = this.listWidget.findListItem(0,historyInfo.title); > if(listElementIndex === undefined) { > return; > } > var listItemWidget = this.listWidget.children[listElementIndex], > targetElement = listItemWidget.findFirstDomNode(); > // Abandon if the list entry isn't a DOM element (it might be a text node) > if(!(targetElement instanceof Element)) { > return; > } > // Scroll the node into view > this.listWidget.dispatchEvent({type: "tm-scroll", target: targetElement}); > }; > > if it's changed to the following, the class "tc-navigating-classic" is > added for the interval of the animation duration: > > ClassicStoryView.prototype.navigateTo = function(historyInfo) { > var listElementIndex = this.listWidget.findListItem(0,historyInfo.title); > if(listElementIndex === undefined) { > return; > } > var listItemWidget = this.listWidget.children[listElementIndex], > targetElement = listItemWidget.findFirstDomNode(); > // Abandon if the list entry isn't a DOM element (it might be a text node) > if(!(targetElement instanceof Element)) { > return; > } > > $tw.utils.addClass(targetElement,"tc-navigating-classic"); > > // Scroll the node into view > this.listWidget.dispatchEvent({type: "tm-scroll", target: targetElement}); > > setTimeout(function() { > $tw.utils.removeClass(targetElement,"tc-navigating-classic"); > },$tw.utils.getAnimationDuration()); > }; > > please note that this should be done in a testing wiki at first... I've > tested this on an empty wiki where it works fine > > after modifying the tiddler, save and reload. > > create a stylesheet tiddler and add your desired styles, like: > > .tc-tiddler-frame.tc-navigating-classic { > transition: 0.4s ease; > border: 3px solid <<colour primary>>; > } > >
-- You received this message because you are subscribed to the Google Groups "TiddlyWiki" group. To unsubscribe from this group and stop receiving emails from it, send an email to tiddlywiki+unsubscr...@googlegroups.com. To post to this group, send email to tiddlywiki@googlegroups.com. Visit this group at https://groups.google.com/group/tiddlywiki. To view this discussion on the web visit https://groups.google.com/d/msgid/tiddlywiki/5ec5604c-af06-4dea-81d3-265104a769a5%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.