TiddlyWiki5/plugins/tiddlywiki/dynaview
Mario Pietsch 8aa558eb2c
Remove module function wrapper and add matching configurations for dprint and eslint (#7596)
* remove blks first try

* dprint.json seems to be OK, some forgotten functions

* add some more space-after-keyword settings

* server remove blks

* add **/files to dprint exclude

* dprint.js fixes a typo

* add boot.js and bootprefix.js to dprint exclude

* dprint change dprint.json

* add dprint fmt as script

* remove jslint comments

* fix whitespace

* fix whitespace

* remove function-wrapper from geospatial plugin

* fix whitespace

* add function wrapper to dyannotate-startup

* remove dpring.json
2025-03-21 17:22:57 +00:00
..
examples Fix dynaview examples 2020-05-16 14:56:08 +01:00
above-story.tid Introduce new dynaview plugin 2018-01-05 09:18:19 +00:00
config.multids DynaView: Remove optisizer functionality 2018-08-29 14:47:57 +01:00
config.tid Gather all the plugins' settings page under the control panel's "Settings" tab. (#8643) 2024-09-30 14:23:29 +01:00
docs.tid Dynaview: Simplify visibility tracking logic 2019-03-21 12:56:26 +00:00
dynaview.js Remove module function wrapper and add matching configurations for dprint and eslint (#7596) 2025-03-21 17:22:57 +00:00
examples.tid Introduce new dynaview plugin 2018-01-05 09:18:19 +00:00
macros.tid Dynaview: Fix transclude-when-visible macro 2020-09-23 17:33:00 +01:00
plugin.info Add plugin stability badges (#8198) 2024-05-21 11:22:39 +01:00
readme.tid DynaView: Remove optisizer functionality 2018-08-29 14:47:57 +01:00
styles.tid Dynaview: turn off scroll anchoring 2019-01-29 11:37:26 +00:00

title: $:/plugins/tiddlywiki/dynaview/readme

! Dynaview

This plugin makes it possible to build user interfaces that dynamically respond to changes in the browser viewport via scrolling or zooming:

* CSS classes that allow rendering to be deferred until the output is scrolled into view
* CSS classes that allow the opacity of DOM elements to vary according to the current zoom level
* A daemon that can dynamically update a pair of state tiddlers with the current dimensions of the browser viewport
* A daemon that can dynamically update the address bar with the title of the tiddler at the top of the viewport

Some points to note about the zoom features:

<<<

* The zoom level currently only works on Safari, both on Mac OS and on the iPhone/iPad
* The zoom level tracked by the plugin is the pinch-zoom level, and not the text-zoom level
* Rather than being progressively rendered as needed, hidden item are rendered with zero opacity. Which means that they can still be interacted with

This is really just a proof of concept to allow the user experience to be evaluated. A production version would need to work in all browsers, which would mean adopting a polyfill such as [[Hammer.js|http://hammerjs.github.io/]] to give us manual pan and zoom support. It would also allow deeper levels of zoom.

<<<