jeremy@jermolene.com
977a133028
Tweak comments
2022-09-09 14:16:08 +01:00
jeremy@jermolene.com
b751f7e793
Parameters widget: protect against negative $depth
2022-09-09 12:04:50 +01:00
jeremy@jermolene.com
82b22523aa
Rejig genesis widget to be easier to use
2022-09-09 10:37:39 +01:00
jeremy@jermolene.com
e3697e29bb
When transcluding functions, pass an empty item list to the filter, and just return the first item
2022-09-09 10:22:06 +01:00
jeremy@jermolene.com
11e0c66a4c
Transcluded functions should operate on the entire store
2022-09-03 20:11:45 +01:00
jeremy@jermolene.com
a439cb58be
Fix caching of parse variables/macros/procedures
2022-09-03 20:11:23 +01:00
jeremy@jermolene.com
00b6645c94
Disable overriding core widgets in safe mode
2022-09-03 12:58:10 +01:00
jeremy@jermolene.com
2b8b133d4a
Merge branch 'master' into parameterised-transclusions
2022-08-17 18:11:21 +01:00
Mario Pietsch
2ff5bd5a0f
Fix removing a field with empty name ( #6888 )
...
* allow us to remove a field with empty key
* fix typo in if clause
2022-08-09 18:44:45 +02:00
jeremy@jermolene.com
9317804464
FIx transcluding of functions
...
This first implementation concatenates the results of the filter (with no separator) and then wikifies the result.
The test in this commit is quite interesting...
2022-08-04 09:28:56 +01:00
jeremy@jermolene.com
6207ec4812
Merge branch 'master' into parameterised-transclusions
2022-08-02 17:49:28 +01:00
Saq Imtiaz
613b3df367
Image lazy loading ( #6809 )
...
* Extend image widget with lazy loading support
* docs: added from-version to docs update
2022-07-21 15:30:56 +01:00
jeremy@jermolene.com
b1cf9f241e
Merge branch 'master' into parameterised-transclusions
2022-07-21 10:10:49 +01:00
jeremy@jermolene.com
745707fea3
Parameters widget: Be defensive about negative depths
2022-07-19 10:27:36 +01:00
jeremy@jermolene.com
d4e0eb193b
Slot widget: be more defensive about negative depth values
2022-07-19 10:26:20 +01:00
jeremy@jermolene.com
a2182255cc
Simplify the fill widget
...
We can rely on the default processing in the base class
2022-07-19 10:02:09 +01:00
jeremy@jermolene.com
30f7b37cba
Make use of type attribute consistent
2022-07-18 19:44:37 +01:00
Saq Imtiaz
f6e021d70f
Feat: dynamically refresh class for draggable widget DOM node instead of re-rendering the widget ( #6787 )
2022-07-15 15:37:27 +01:00
jeremy@jermolene.com
ceec7b5737
Style tweaks for #6755
2022-07-05 17:47:57 +01:00
Mario Pietsch
76bc2f7524
Fix svg foreignObject that contains DIVs ( #6755 )
...
* xmlns attribute defined in element takes precedence
* use predefined tagNamespaces variable as default value
* change code as suggested by Jeremy
2022-07-05 17:46:31 +01:00
jeremy@jermolene.com
189fe428b7
Merge branch 'master' into parameterised-transclusions
2022-07-04 21:15:42 +01:00
Nolan Darilek
f02bd2392f
Various accessibility improvements ( #6742 )
...
* Add `main` and `article` roles to stories and story.
* Support `role` and \aria-checked` in buttons, and integrate with sidebar tabs.
* Add `region` role to sidebar, and set caption as `aria-label`.
* Add accessibility roles and labels to static templates.
* Update test fixtures with new ARIA tab attributes.
2022-06-28 14:05:52 +01:00
jeremy@jermolene.com
79b20bdaa8
Fix up handling of slot/fill for custom widgets
...
Previously we were wrapping the body in an implicit `<$fill $name="ts-body">` widget
2022-06-09 18:02:47 +01:00
jeremy@jermolene.com
defe3e42e6
Adjust naming of transclusion metaparameter
2022-06-05 16:10:41 +01:00
jeremy@jermolene.com
7680280d87
Fix typo
2022-06-05 15:59:03 +01:00
jeremy@jermolene.com
542df63ccf
Simplify metaparameters implementation
2022-06-03 11:21:32 +01:00
jeremy@jermolene.com
c42df2233a
Make slot fill data available to transclusions
...
Allows transcluded content to dynamically process <$fill> widgets within the calling transclusion
2022-06-03 08:53:51 +01:00
jeremy@jermolene.com
613f4af20f
Fix refreshing of global variables
...
Global variables access within attributes will automatically trigger a refresh if the attribute text changes, but that wasn't happening for transclusions.
2022-05-31 09:19:01 +01:00
jeremy@jermolene.com
006ae6e759
Refactor $parameters widget
...
The objective is to add a $depth attribute so that it is possible to reach up to retrieve the parameters of ancestor transclusions. However, doing so requires changing the encoding of parameter names so that it is not possible for a user parameter to clash with an attribute like $depth. So now we have to double up dollars on any attribute names seen by the parameters widget, just like with the transclude widget itself.
2022-05-31 09:03:20 +01:00
jeremy@jermolene.com
150266c731
Use underscores for new system fields for global variable tiddlers
...
For consistency with `_canonical_uri`; unlike many system fields, the behaviour of these fields is baked into the core JS code.
2022-05-30 18:38:25 +01:00
jeremy@jermolene.com
0c3f82855b
Minor cleanups
2022-05-29 10:55:15 +01:00
jeremy@jermolene.com
f636349007
Introduce true global variables
...
The basic idea is that if we don't find a variable `foo` then we fallback to retrieving the value from the tiddler `$:/global/foo`, if it exists.
This allows us to replace the usual importvariables-based mechanism for global definitions, avoiding cluttering up the variable namespace with every macro.
In order to permit subprocedures to be overridden, we also introduce a mechanism for conditional definitions: preceding the word definition|procedure|function|widget with a + causes the definition only to occur if the specified variable doesn't already exist. In the next commit we'll apply this mechanism to the tabs macro
2022-05-28 12:23:50 +01:00
jeremy@jermolene.com
dec45f0fc3
Fix importvariables to work with setvariables as well as set (they are aliases)
2022-05-26 21:11:32 +01:00
jeremy@jermolene.com
cbce4ebb7b
Allow custom functions to be invoked as attributes
2022-05-23 20:18:54 +01:00
jeremy@jermolene.com
22e7ec2381
Procedures and widgets inherit whitespace trim setting from their definition
2022-05-23 15:30:33 +01:00
jeremy@jermolene.com
170c4b1799
Merge branch 'master' into parameterised-transclusions
2022-05-23 11:28:12 +01:00
jeremy@jermolene.com
ec1ec8ccd8
Fix invocation of JS macros
2022-05-21 16:31:34 +01:00
jeremy@jermolene.com
e50101322f
Require $$ for custom widgets, and that overridden JS widgets must exist
...
See https://github.com/Jermolene/TiddlyWiki5/pull/6666#issuecomment-1133637763
2022-05-21 15:47:19 +01:00
jeremy@jermolene.com
bbd9e2f243
Rename <$value> widget to <$fill>
2022-05-13 09:18:25 +01:00
jeremy@jermolene.com
36cf50aa96
Use \widget for custom widget definitions, and remove need for angle brackets
...
Need to do some refactoring of all those isFunctionDefinition/isProcedureDefinition/isWidgetDefinition flags into a single property
2022-05-13 08:49:53 +01:00
jeremy@jermolene.com
904e30a0e2
Detect recursion by tracking widget tree depth
...
The old recursion marker approach was very slow, and didn't catch test cases like editions/test/tiddlers/tests/data/transclude/Recursion.tid
2022-05-12 16:26:33 +01:00
jeremy@jermolene.com
774459fa73
Transclude: replace paramNames/paramValues with more robust JSON payload
...
More details at https://github.com/Jermolene/TiddlyWiki5/pull/6666#issuecomment-1123719153
2022-05-11 13:51:11 +01:00
jeremy@jermolene.com
0b11b499c2
Better backwards compatibility for legacy recursion marker
...
Fixes the problem with tag dropdowns @btheado
2022-05-10 10:21:56 +01:00
jeremy@jermolene.com
eef7d180a5
Remove obsolete code
...
Left over after refactoring
2022-05-10 10:21:19 +01:00
jeremy@jermolene.com
e092113f9f
Switch to using \procedure to define new-style macros, and \function for custom filter operator functions
...
I now need to update the OP!
2022-05-09 18:00:09 +01:00
jeremy@jermolene.com
64448ae774
Make the macrocall widget delegate to the transclude widget
2022-05-08 20:48:33 +01:00
jeremy@jermolene.com
e9630328f1
Extend transclude widget to work with old-style macros and use it for the macrocall shortcut syntax
2022-05-08 15:59:20 +01:00
jeremy@jermolene.com
9be05f6f38
Use consistent parse tree node property for params
2022-05-07 13:22:53 +01:00
jeremy@jermolene.com
2fe2d20ddf
Genesis widget should pass raw attributes onto child widget...
...
...so that it can more efficiently handle refreshing itself.
2022-05-07 11:41:28 +01:00
Simon Huber
4b8594c4a8
Fix: eventcatcher widget - variables can be undefined ( #6668 )
...
* Fix: eventcatcher widget - variables can be undefined
* Fix: selectedNode can be an svg where offsetLeft ... are undefined
* Make check for offsetLeft short
* remove second collectDOMNodeVariables
2022-05-06 17:11:13 +01:00