1
0
mirror of https://github.com/Jermolene/TiddlyWiki5 synced 2024-11-01 15:46:18 +00:00
Commit Graph

4766 Commits

Author SHA1 Message Date
jeremy@jermolene.com
a67b1b8bb5 Fileserver: Check for valid file paths 2021-08-28 13:16:54 +01:00
jeremy@jermolene.com
124b49456a MessageCatcher: Expose lists of the message property names 2021-08-21 12:50:38 +01:00
Saq Imtiaz
24956087cc
Do not add X-Requested-With header for simple requests (#5931) 2021-08-17 09:56:52 +01:00
Cameron Fischer
b3accbf9e0
Fakedom: use text encoder for html text (#5950) 2021-08-12 16:46:11 +01:00
Joshua Fontany
99249a3160
Fix syncer logout alert (#5936)
* call self.displayError

* Revert "call self.displayError"

This reverts commit 5d599aa979.

* fix Syncer logout alert
2021-08-05 14:50:22 +01:00
jeremy@jermolene.com
e9613d7f12 eventcatcher widget: Add viewport-relative coordinates
This is useful because we get viewport relative coordinates from the link and action-navigate widgets
2021-08-05 08:35:44 +01:00
jeremy@jermolene.com
97dff042f7 Reveal widget: fix crash when popup tiddler is refreshed but the popup is not displayed 2021-08-04 17:00:42 +01:00
jeremy@jermolene.com
2720072b23 Text editor: fix crash when assigning new value to file input controls
Fixes #5911
2021-07-30 16:31:42 +01:00
Joshua Fontany
0413c3a38e
Fix syncer error handling for getStatus (#5914) 2021-07-30 16:21:02 +01:00
Simon Huber
3c86cf7d2e
Add pop storyview to ViewToolbar buttons (#5910)
* Add pop storyview to ViewToolbar buttons

* Update title.tid
2021-07-30 16:11:27 +01:00
Mario Pietsch
82667d9d16
Add indentation to $:/core/ui/Components/plugin-info (#5777)
* Add indentation to plugin-info, to make the macros readable.

* add missing indent
2021-07-26 21:59:02 +01:00
jeremy@jermolene.com
2cb3ed3ab9 Change tab switching shortcuts to alt-ctrl-left/right
Fixes #5889
2021-07-16 13:06:49 +01:00
jeremy@jermolene.com
a4421f50c6 Git{hub|ea|lab} saver should wikify commit messages
Proposed in discussion https://github.com/Jermolene/TiddlyWiki5/discussions/5886#discussioncomment-1012593
2021-07-16 12:04:05 +01:00
Saq Imtiaz
cb726f40fa
Fix: bug with List Widget where the counter-last variable is not always accurately updated on refresh (#5883) 2021-07-15 21:59:07 +01:00
Arlen22
be026aa308
Revert "Add server sent events (#5279)" (#5880)
This reverts commit 17b4f53ba2 according to Github Desktop.

git checkout that commit
revert commit in GitHub Desktop
git switch -c revert-sse
uncommit in Github Desktop
switch to master, bringing changes
resolve deletions with command line
2021-07-14 17:16:57 +01:00
jeremy@jermolene.com
dbfd45814d Search and replace "v5.1.24" to "v5.2.0"
As discussed in #5708
2021-07-14 09:21:37 +01:00
Jeremy Ruston
d455072f13
Add support for JSON-formatted tiddler store, and make it the default (#5708)
* Add support for JSON-formatted tiddler store, and make it the default

The change to `getTiddlersAsJson()` is to allow experimentation

* Move JSON tiddlers into their own store area, and fix support for encrypted tiddlers

Also add a dummy old-style store area for backwards compatibility

The current arrangement is that JSON tiddlers will always override old-style tiddlers.

* Use the deserialiser mechanism to decode the content

* Refactor $:/core/modules/deserializers.js before we start extending it

Cleaning up the helper function names and ordering

* Drop support for the "systemArea" div

It was only used in really old v5.0.x

* Update deserializer to support JSON store format and add some tests

* Life UI restrictions on characters in fieldnames

* Add another test case

* Correct mis-merge

* Remove toLowerCase() methods applied to fieldnames

* Insert line breaks in output of getTiddlersAsJson (#5786)

Rather than have the entire store on one line, insert a line break
after each tiddler.

* Refactor #5786 for backwards compatibility

* Only read .tiddlywiki-tiddler-store blocks from script tags

Prompted by @simonbaird's comment here: https://github.com/Jermolene/TiddlyWiki5/pull/5708#discussion_r648833367

* Clean up escaping of unsafe script characters

It seems that escaping `<` is sufficient

* Add docs from @saqimtiaz

Thanks @saqimtiaz

* Docs tweaks

* Remove excess whitespace

Thanks @simonbaird

* Fix templates for lazy loading

* Remove obsolete item from release note

* Clean up whitespace

* Docs for the jsontiddler widget

* Fix whitespace

Fixes #5840

* Comments

* Fix newlines in JSON store area

* Remove obsolete docs change

Co-authored-by: Simon Baird <simon.baird@gmail.com>
2021-07-14 09:15:30 +01:00
Saq Imtiaz
30925ee7bf
Update syntax for Eventcatcher (#5868)
* Update syntax for Eventcatcher to be consistent with MessageCatcher while being backwards compatible

* Update docs

* Update docs
2021-07-11 20:21:35 +01:00
cdruan
23fec9e390
Fix faulty external-js single-file wiki (#5570)
* Fix problems with building single-file wiki using external-js template

* core/templates/external-js/tiddlywiki5-external-js.html.tid,
  core/templates/external-js/save-all-external-js.tid,
  core/templates/external-js/save-offline-external-js.tid
  core/templates/external-js/load-external-js.tid:
  Fix #5343. Exclude client-server plugins in tiddler imports and to
  specify a working URL for loading tiddlywiki5.js from local disk.
  Mirror save/all and save/offline templates in the regular server
  edition.

  Fix #4717 (tiddlywiki5-external-js.html.tid)

* core/modules/saver-handler.js:
  Need the change to make single file autosave work with the external-js
  template.

* editions/server-external-js/tiddlywiki.info:
  Provide external-js related build targets.

* core/language/en-GB/Snippets/ExtJSReadme.tid:
  Temporary doc to supplement TW5.com's external-js section. Demonstrate
  that upgrade could be done on single-file wikis with an externalized
  TW core.

* core/language/en-GB/Snippets/GetTiddlyWikiJS.tid:
  Documentation. Meant to be included in every wiki and to help end
  users acquire tiddlywiki5.js.

* Pre-configure save-wiki template for end-users

* Remove the newline character at the end of the file.

* Trim "template" value in saveWiki()

* Safeguard the code from extraneous whitespaces in transcluded result.

* Rename and add versioning to downloaded tiddlywiki core JS

* Rename "tiddlywiki5.js" to "twcore-VERSION.js"

* Preload $:/config/SaveWikiButton/Template tiddler with the required
  external-js template value.

* Update external-js user documentation

* Add "download tiddlywiki core JS" menu item to the "cloud" button.

* Update build's target defintions associated with external-js template.

* Move the user doc to the tw5.com edition.

* Coding style update

* Undo template name changes

* Correct text & fill colors on some disabled buttons

* Add new "export tiddlywiki core" button under page control tools

This new button can export tiddlywiki's core JS from user's wiki as
long as the wiki is served with the regular "root" template. The
button will be ineffective, thus disabled, if the core has already been
externalized by the "external-js" template.

With this button, a full standalone html wiki can obtain the matching
core JS without TiddlyWiki on node.js. Once this is done, the html wiki
can be converted to using the "external-js" template.

* Alternate version of "save tiddlywiki core for offline use"

This version will fire up a "Save File" dialogue box when clicked,
instead of directing the user to a helper doc for further instruction.
It achieves this by using the "download" attribute of the <a> html tag.
It works on most modern desktop browsers, but older browsers (e.g. IE)
may display the file instead.

* Adjust font-weight to match other menu items

* Merge two user documentations into one

* Add user-browser-cache=yes to --listen command

* Update "export tiddlywiki core" button hint

* Simpler implementation for switching btw online/offline core URL

Shave off one template by using filtered transclusion to control
online/offline core URL.

* Update user doc

Update the user doc to clarify that build index step is not needed to
initialize a new wiki.

* Rename twcore to tiddlywikicore

* Reformat the user doc

* Rework export-tiddlywikicore button

Popup an error message instead of disabling the button when export
core cannot be performed.

* Revert "Correct text & fill colors on some disabled buttons"

This reverts commit e7dbb7e712.
2021-07-06 15:02:21 +01:00
jeremy@jermolene.com
0b71f25f74 Revert "Update sync methods (#5467)"
This reverts commit 8d7930f660.

See the discussion at https://github.com/Jermolene/TiddlyWiki5/pull/5467#issuecomment-873590578https://github.com/Jermolene/TiddlyWiki5/pull/5467#issuecomment-873590578
2021-07-05 19:26:20 +01:00
jeremy@jermolene.com
56068d8215 tm-navigate: add separate properties to access bounds of client rectangle
Makes it easier to use the client rectangle information within an action handler
2021-07-05 09:52:17 +01:00
jeremy@jermolene.com
3094e06236 Add support for full refreshing of action widgets
Fixes #5791
2021-07-02 14:33:38 +01:00
jeremy@jermolene.com
f87b3bfcdb Extend messagecatcher widget to allow setting multiple handlers at once 2021-06-30 16:17:59 +01:00
jeremy@jermolene.com
a0a0df9655 Update action-navigate widget with metakeys to match link widget 2021-06-30 16:11:21 +01:00
jeremy@jermolene.com
31c1584b9a Extend $tw.utils.removeArrayEntries to return the array 2021-06-30 16:10:52 +01:00
Saq Imtiaz
041c3e817c
Support for macro params in filter operands (#5836)
* Exploratory pass at adding support for macro params in filter operands

* whitspace correction

* rename varInfo to varTree for disambiguation

* Refactored parseMacroInvocation to be re-usable, performance improvements for variables with no params and tests

* Revised regular expression and removed spurious white space changes

* Revised regular expression and removed spurious white space changes

* More whitespace cleanup and added more tests for edge cases

* Added test for macro params with square brackets
2021-06-29 22:21:39 +01:00
Saq Imtiaz
a6990128f1
Fixed bug introduced into transclusions for blank fields in #5736 (#5835) 2021-06-29 12:07:14 +01:00
jeremy@jermolene.com
338b7c92a2 Ensure tiddlers with fieldnames containing colons don't get saved in .tid file format
Prompted by discussion over at https://github.com/Jermolene/TiddlyWiki5/pull/5708#issuecomment-862399985
2021-06-27 21:27:57 +01:00
Mario Pietsch
a409536ad0
Prevent scrolling of the page when modals are displayed (#5816)
* prevent scroll-chaining in modals

* make body overflow hidden to prevent background scrolling
2021-06-27 16:24:06 +01:00
jeremy@jermolene.com
83ee363cb4 Add charcode operator to make it easier to generate strings containing control characters
Avoids some confusing hacks. @saqimtiaz I'm guessing you might have already done something like this?
2021-06-22 21:52:00 +01:00
Adam Sherwood
63fa0c4fa4
Hook for closing tiddlers (#3797) 2021-06-22 19:51:35 +01:00
Saq Imtiaz
021e9b8c4d
:map filter run prefix with docs and tests (#5813) 2021-06-21 20:59:58 +01:00
Mario Pietsch
afa653a7aa
Improve import cancel warning (#5812) 2021-06-21 20:58:58 +01:00
jeremy@jermolene.com
2da7ae0b73 Action-createtiddler: Ensure child widgets are refreshed before invocation
Fixes #5791
2021-06-14 18:13:51 +01:00
Mario Pietsch
9c0d6a46cc
Add "commentpragma" html style rule (#5726)
* html-comment, that can be used in the pragma area

* add commentpragma test

* fix typo

* fix typo and change comments ab bit

* combine html-comment and pragma-comment and add some docs, how to use it

* Make docs simpler by removing caching info

* change h2 wording
2021-06-14 17:39:56 +01:00
Saq Imtiaz
8f9e8c1dee
Keyboard widget: provide variable for shortcut descriptor to actions. (#5782) 2021-06-14 12:03:59 +01:00
Simon Huber
f2e26927c1
Add test for event.event.target being undefined in the tm-focus-selector listener (#5771) 2021-06-14 10:59:31 +01:00
Simon Huber
6dd1887f0b
Use event.event.view.confirm for confirmation messages in navigator.js and action-confirm.js (#5776) 2021-06-11 16:56:06 +01:00
Simon Huber
219beb13cc
Add test to storyviews if targetElement is null (#5767)
* Update classic.js

* Update pop.js

* Update zoomin.js

* simplify test in classic.js

* simplify test in pop.js

* simplify test in zoomin.js
2021-06-09 10:18:15 +01:00
Simon Huber
c18b7527a7
Fix #5760 - tm-focus-selector doesn't work in new windows (#5766)
* Pass the original event to invokeActionString

* Update rootwidget.js
2021-06-06 12:42:28 +01:00
Simon Huber
2f1806ab6a
Keyboard widget: don't refresh when class changes (#5758) 2021-06-06 11:03:08 +01:00
Simon Huber
afa4ea3d03
Make navigation in new windows work for storyviews (#5759) 2021-06-06 10:47:19 +01:00
Simon Huber
2b911ac11f
Make the insert- and remove-animations of storyviews work in new windows (#5755)
* Make classic storyview work in new windows, too

* Make pop storyview work in new windows, too

* Make zoomin storyview insert and remove animation work in new windows, too
2021-06-04 16:59:45 +01:00
jeremy@jermolene.com
056e6541a1 Revert 582b156d5f: Refresh non-action widgets before invocation 2021-06-02 21:47:28 +01:00
jeremy@jermolene.com
753bf8fe62 Revert "Revert "Transclude widget: refresh selectively when needed (#5736)""
This reverts commit 4f9dd50382.
2021-06-02 21:45:06 +01:00
jeremy@jermolene.com
4f9dd50382 Revert "Transclude widget: refresh selectively when needed (#5736)"
This reverts commit 2e695801b1.
2021-06-02 19:14:05 +01:00
Saq Imtiaz
2e695801b1
Transclude widget: refresh selectively when needed (#5736)
* Transclude widget: only refresh when transcluded text reference has changed, includes tests

* Refactor wiki.parseTextReference so it is re-usable for getting the parser info

* Re-arrange methods in wiki.js to improve diff readability
2021-06-02 13:58:30 +01:00
jeremy@jermolene.com
55c522ab8f Improve comments
As per @pmario's comment at 582b156d5f (commitcomment-51566608)
2021-06-01 11:49:05 +01:00
jeremy@jermolene.com
9faaa31299 Extend action-createtiddler to make new title available as a variable
I'm not sure if the docs are clear, but this is quite a big deal, and along with 582b156d5f makes working with action widgets a lot easier.
2021-06-01 09:41:14 +01:00
jeremy@jermolene.com
582b156d5f Refresh non-action widgets before invoking them
Fixes #5744
2021-06-01 09:28:04 +01:00
Joe Bordes
82ec63e711
style(App) eliminate whitespace at the end of code lines (#5735) 2021-05-30 19:20:17 +01:00
Joe Bordes
51fd02d9b6
i18n(en-GB) apply grammarly recommendations found while translating es-ES (#5733) 2021-05-30 18:51:44 +01:00
Joe Bordes
1a6d3e686b
i18n(EditorPreview) translate difference view caption (#5732) 2021-05-30 18:49:57 +01:00
Miha Lunar
9b247f6d63 Removed fallback range logic 2021-05-29 20:30:04 +02:00
Simon Huber
3a740b23bb
Add tc-small-gap-right to tag-pills in tags editTemplate (#5727) 2021-05-27 14:07:50 +01:00
jeremy@jermolene.com
082aeb92ac Revert "extend lookup op flexibility with 2 parameters (#5315)"
This reverts commit 81b5fe944a.

See https://github.com/Jermolene/TiddlyWiki5/pull/5315#issuecomment-848725198 for explanation
2021-05-26 13:25:19 +01:00
Simon Huber
eaf1da66b6
Add color-scheme: dark/light to the root element ... (#5720) 2021-05-25 22:22:21 +01:00
Mario Pietsch
c6ed4aa84e
allow us to import formerly blocked system tiddlers (#5479) 2021-05-25 22:21:57 +01:00
Mario Pietsch
123666c240
Add th-before-importing hook mechanism (#5464) 2021-05-25 22:19:58 +01:00
Mario Pietsch
68930ceb1b
Extend keyboard widget (#5648) 2021-05-25 22:18:37 +01:00
Joshua Fontany
8d7930f660
Update sync methods (#5467) 2021-05-24 21:16:23 +01:00
Saq Imtiaz
7a41283c6b
Format:titlelist operator (#5665) 2021-05-24 19:28:43 +01:00
BlueGreenMagick
c30ce544d1
Fix ViewToolbar items inconsistent spacing (#5473) 2021-05-24 19:24:37 +01:00
Mario Pietsch
2ab0474e14
Fix configuration list of HTML5 block elements (#5469) 2021-05-23 17:50:27 +01:00
Cameron Fischer
61714cbda3
Fixed super minor issue with import pragma (#5521) 2021-05-23 17:39:06 +01:00
jeremy@jermolene.com
8fbf52e419 Don't issue plugin reload warning for plugin-type: import
Fixes #5719
2021-05-23 11:19:46 +01:00
jeremy@jermolene.com
485779f5b2 Fix crash when accessing variables in filters that don't have a widget context
This should catch a large number of crashes, including:

Fixes #5716
2021-05-22 20:00:24 +01:00
Saq Imtiaz
3fc7895af2
CurrentTiddler variable consistency in subfilters and prefixes (#5691)
* Make currentTiddler variable consistent in subfilters and filter run prefixes

* Updated filterun prefix and subfilter operators to use ..currentTiddler instead of outerCurrentTiddler
2021-05-22 19:43:37 +01:00
Saq Imtiaz
10b20657cc
Deserializers[] filter operator (#5673) 2021-05-22 10:50:11 +01:00
Saq Imtiaz
0003d70132
New text operation insert-text (#5707) 2021-05-21 10:35:40 +01:00
Joshua Fontany
81b5fe944a
extend lookup op flexibility with 2 parameters (#5315) 2021-05-21 10:11:23 +01:00
Saq Imtiaz
270ead4701
Eventcatcher: Fixed FF and IE bugs, added stopPropagation attribute (#5711) 2021-05-21 09:43:20 +01:00
Nicolas Petton
1ddc3ab037
Add throttling for changed tiddlers prefixed with $:/temp/volatile/ (#5458) 2021-05-21 08:51:15 +01:00
Saq Imtiaz
05d38054c8
Drag and drop images in the editor to import and insert (#5699)
* Merge

* Clean up

* More clean up

* Ensure image import works when type is not set, clean up post import actions

* Removed spurious new line

* For non image files insert a tiddler link

* Added documentation for new settings and features
2021-05-19 21:52:43 +01:00
jeremy@jermolene.com
dbd3f835bf Fix crash when sorting by non-string fields
tags, list, created, modified are not stored as strings by default.

Fixes #5701
2021-05-19 14:10:39 +01:00
Saq Imtiaz
b267a71f2d
Dropzone: persistent dragover state fix (#5688) 2021-05-16 14:01:46 +01:00
FlashSystems
f4d7b2c7f7
Network performance optimizations for node.js (#5436) 2021-05-08 16:05:39 +01:00
ualich
e699cf1fe8
Display tiddler link in 'Target tiddler already exists' warning (#5672) 2021-05-06 12:25:29 +01:00
Mario Pietsch
cf56a17f28
allow unusedtitle macro to use the prefix parameter and fix wiki.generateNewTitle() (#5361) 2021-05-02 19:26:50 +01:00
Saq Imtiaz
3f98686153
Extend <-popup> to create floating popups that must be manually cleared (#5655) 2021-05-02 10:20:39 +01:00
Saq Imtiaz
cb44cc0f2b
Add :sort filter run prefix (#5653)
* Add :sort filter run prefix, docs and tests. Also extended .utils.makeCompareFunction with a flag for caseSensitivity.

* Documentation updates

* Move case sensitivity handling entirely to utils method so it is reusable
2021-05-01 13:58:40 +01:00
Saq Imtiaz
44df6fe52f
Fixed issue with widget not being available to filter operator, added test (#5640) 2021-05-01 10:00:32 +01:00
Saq Imtiaz
07caa16e87
Extend dropzone to also use the specified deserializer for strings either dropped or pasted on to the dropzone. (#5601) 2021-04-27 10:15:27 +01:00
Simon Baird
30d23196b6
Add 401 and 403 error messages for the put saver (#5638) 2021-04-27 10:14:04 +01:00
Jeremy Ruston
bf773eb39a
Add "average" filter operator for arithmetic mean (#5612) 2021-04-27 10:09:13 +01:00
jeremy@jermolene.com
4a99e0cc7d Change "index" attribute of list widget to "counter", and use 1-based counting
Extends #5611
2021-04-26 14:41:26 +01:00
Saq Imtiaz
e2379b599e
Fixes Action-listops bug (#5644) 2021-04-26 11:29:16 +01:00
Saq Imtiaz
8203ee06c3
Allow suffixes for filter runs (#5252)
* Make filter run prefixes extensible

* Make filter run prefixes extensible

* Support rich suffixes for filter runs

* merged conflicts

* Pass suffixes to filterrunprefix
2021-04-25 19:37:47 +01:00
Mario Pietsch
ac15334bb0
Add support for disabled editor toolbar buttons & docs (#5294)
* add dynamic toolbar buttons + HowTo

* remove some whitespace.

* move howto and improve shortcut logic

* move howto

* add whitespace so it can be removed in an other PR.
2021-04-25 16:17:32 +01:00
Mario Pietsch
8849ed0d46
Fix refreshing of select widget when attributes change (#5635) 2021-04-25 16:05:02 +01:00
Miha Lunar
62fdaa633a Fixed fallback range logic + added ranges to tests 2021-04-25 16:03:35 +02:00
Miha Lunar
79f5e6b498 Merge remote-tracking branch 'origin/master' into parser-ranges 2021-04-25 13:17:44 +02:00
Miha Lunar
23bd7e7817 Replaced restructuring and added fallback comment 2021-04-25 13:12:45 +02:00
Simon Baird
5e236d35a5
Revise the TiddlySpot Saver settings form (#5628)
Mention TiddlyHost and link to some documentation on the
configuration options.

Also remove the TiddlySpot control panel and backups links since
they no longer work.

Notes:
* The last three fields are no use for TiddlySpot or TiddlyHost, but
  it's possible that someone, somewhere is still using the old
  store.php from Bidix's UploadPlugin, and would miss them if they
  were removed.

  I'd be happy to remove them in a future PR, if it's decided they
  can be retired.

  (If they were removed, I could delete the last row here:)
  https://github.com/simonbaird/tiddlyhost/wiki/TiddlySpot-Saver-configuration-for-Tiddlyhost-and-Tiddlyspot

* It's still called "TiddlySpot Saver" which I think is fine for
  now. TiddlyHost might use a different saving method in future
  so keeping the existing name seems best.
2021-04-24 08:54:44 +01:00
Jeremy Ruston
85ba7ac041
Extend list widget with "index" attribute (#5611)
* Extend list widget with "index" attribute

* Fix refreshing bug

* Clarify performance note
2021-04-20 09:15:11 +01:00
jeremy@jermolene.com
c325380231 Run the SVG optimiser on the new plus/minus icons 2021-04-16 09:25:07 +01:00
jeremy@jermolene.com
a6a2535c3a Add plus/minus icons 2021-04-16 09:21:47 +01:00
jeremy@jermolene.com
89546b3357 Add a hidden setting to control HTML sandboxing 2021-04-11 10:10:16 +01:00
Saq Imtiaz
eced60853f
Extend Dropzone widget (#5597)
* Extend dropzone widget with optional actions invoked after tm-import-tiddlers message has been sent. Allows triggering an alternative UX for the import

* Allow restricting a dropzone to specific mimeTypes via mimeTypes and mimeTypesPrefix attributes

* Use a mimeTypesFilter instead of the mimeTypes and mimeTypesPrefix attributes

* Updated refresh handling

* Syntax cleanup

* Replace references to mimeType with content type for consistency with existing documentation. Update documentation for DropZone widget
2021-04-10 09:48:50 +01:00
jeremy@jermolene.com
b9647b2c48 Ensure Fieldmangler widget doesn't propogate events that it traps
Fixes #5593
2021-04-08 16:56:36 +01:00
jeremy@jermolene.com
28521d82f3 Revert "Extend transclude widget to optionally set variables"
Actually a partial reversion, because we're keeping the minor refactoring of makeChildWidget() in widget.js

This reverts commit 80ee5adb14.
2021-04-02 09:47:38 +01:00
Cameron Fischer
ef6307a64e
Do not escape double quotes in tiddler DIVs to save space (#5383)
* double quotes are no longer escaped in html bodies

* changed tiddlyweb's html-div-tiddler; documentation

French version still needs a translation though
2021-04-02 09:32:32 +01:00
cdruan
3b35411aba
Change css-escape-polyfill to a tw uitility method (#5552)
* Replace css-escape-polyfill.js with escapecss.js utility module

* Add $tw.utils.escapeCSS() method and invoke that function within the
  escapecss operator.

* Add test cases for the "escapecss" filter operator

* Fix $tw.boot.doesTaskMatchPlatform() so it works as expected if
  a module's export.platforms contains more than one values

* Add missed files to the last commit
2021-04-02 09:25:01 +01:00
jeremy@jermolene.com
d6ea369f5e Edit text widgets should use default text for missing fields 2021-03-31 14:15:01 +01:00
Saq Imtiaz
860568136f
ViewSwitcher : use Button widget instead of LinkWidget (#5573) 2021-03-29 09:02:47 +01:00
Mario Pietsch
85835ebe42
fix 5424 add button is in new line (#5425) 2021-03-26 09:32:12 +00:00
Joshua Fontany
3d608892bd
targeted fix for 5366 (#5416) 2021-03-26 08:42:31 +00:00
Joshua Fontany
5be647b610
Fix 4461 (#5522) 2021-03-26 08:41:41 +00:00
Joshua Fontany
a2e7cc51b5
Fix 5483 & 3483 (#5504) 2021-03-26 08:39:32 +00:00
jeremy@jermolene.com
226df2ad7d Fix exporting of tiddlers that begin and end with double quotes 2021-03-23 09:27:16 +00:00
jeremy@jermolene.com
7f202f35b4 Minor refactoring for clarity
See 9af68297cd (r48540814)
2021-03-22 09:50:54 +00:00
jeremy@jermolene.com
9c31ff1fb1 Use window.setTimeout(fn,0) for $tw.utils.nextTick in the browser
It seems that best practice has now moved to using zero:

https://developer.mozilla.org/en-US/docs/Web/API/WindowOrWorkerGlobalScope/setTimeout
2021-03-22 09:08:32 +00:00
jeremy@jermolene.com
8aad7b00ab Render command: fix bug with multiple variable usage 2021-03-19 18:35:10 +00:00
jeremy@jermolene.com
a38dc17300 Extend render command to allow multiple variables to be passed 2021-03-19 17:09:53 +00:00
jeremy@jermolene.com
9af68297cd Fix transclusion refreshing
Missed off 80ee5adb14
2021-03-19 16:14:15 +00:00
jeremy@jermolene.com
80ee5adb14 Extend transclude widget to optionally set variables
Partially fixes #5199
2021-03-19 15:37:59 +00:00
jeremy@jermolene.com
a6958bfe85 Fix css-escape-polyfill.js on old iOS
Fixes #5546
2021-03-14 10:34:41 +00:00
jeremy@jermolene.com
7b1a0c6e6a Fix ES5 issue
Fixes #5545
2021-03-14 10:27:05 +00:00
jeremy@jermolene.com
e157d16b72 Add data-tag-title attribute to tag pills
Fixes #5543
2021-03-13 13:19:12 +00:00
Mario Pietsch
05acf3dce4
fix wiki.search options invert init problem (#5542) 2021-03-12 21:12:06 +00:00
jeremy@jermolene.com
9eda02868f Introduce messagecatcher widget 2021-03-09 18:07:07 +00:00
jeremy@jermolene.com
5e4430dbf9 Fix Radio widget to refresh selectively, and use the checked attribute properly 2021-03-07 15:49:07 +00:00
jeremy@jermolene.com
d56e8764a1 Button widget: apply aria-expanded attribute when controlling a popup
Addresses (1) and (5) from #5519
2021-03-01 17:59:29 +00:00
jeremy@jermolene.com
ef76349c37 Add support for utils-browser modules 2021-02-22 12:11:39 +00:00
jeremy@jermolene.com
50d0b6ee50 Modals: don't crash if options.event is missing
Raised here:

https://groups.google.com/d/msgid/tiddlywiki/3E83D2D3-42B2-4AA1-A042-52AB1D7B9B15%40gmail.com
2021-02-13 10:28:31 +00:00
Cameron Fischer
c0dc2669c0
Preallocating in LinkedList's toArray method (#5488) 2021-02-11 13:39:50 +00:00
Joshua Fontany
bfa062f23d
Fix filesystem (#5465) 2021-02-04 16:11:07 +00:00
jeremy@jermolene.com
9f9ce6595b Make it easier to subclass the wikitext parser with a custom rule set
We can now pass arrays of rule classes to the parser constructor, overriding the rules that would normally be used by the parser.

This allows us to create custom variants of the wikitext parser with their own content type.

It could also provide a basis for a new Markdown parser based on our existing wikitext parser but with new rules.
2021-02-03 15:13:56 +00:00
Simon Baird
12f1847475
Support upload saver without username/password (#5455)
The default behaviour is unchanged, but if you write "yes" to
$:/UploadWithUrlOnly then it will assume it's possible to upload
with a blank username and password, as long as the host is set.

The motivation is to support a upload plugin compatible upload
service that uses some method to authenticate other than the legacy
upload plugin user/password params.

Without this patch, the user would need to enter something random in
the user and password fields for TW to decide the upload plugin can
be used.
2021-01-31 15:32:18 +00:00
Dyllon Gagnier
3eefb3cce6
Fix backtracking issue with regex (#5401)
There was an unnecessary
2021-01-29 15:26:25 +00:00
Cameron Fischer
4c7dcb83d1
Fix for #3306, inline/block widget glitch (#5452)
* Fix for #3306, inline/block widget glitch

* Just realized we don't need to set lastIndex anymore

* Forgot that parseBlocks doesn't use options
2021-01-29 14:57:30 +00:00
Cameron Fischer
45355a7fcf
Wikirules now use better macrocall parser (#5451)
* wikirules now use better macrocall parser

Before, wikirules would use a deficient macrocall parser which couldn't
handle certain types of arguments. Now it uses the same one that the
widget parser uses. Less code!

* style changes and removing weird switch statement

That switch statement made more sense in an earlier iteration.

* comment improvements

* oops, wikirule macrocalls could do ONE thing better

* '=' wasn't allowed for widget macros, but why?

Now they're allowed for both widget macros and macrocall macros.
2021-01-29 13:26:31 +00:00
FlashSystems
2e47f277ac
Fix blank favicon if root-tiddler=$:/core/save/lazy-images is set (#5423)
If image lazy loading is used with node.js the favicon is blank. The
line `-[!is[system]is[image]]` excludes only non system images from
begin saved as full tiddlers. But the `[is[image]]` line includes system
images as skinny tiddlers. The created HTML file has all system image
tiddlers (as the favicon) listed twice. And the skinny tiddler seems to
win in this case and breaks the display of the favicon.

This patch fixes this issue by excluding system images from the skinny
tiddlers list.
2021-01-21 17:07:28 +00:00
jeremy@jermolene.com
36de5f65ff Core plugin images: Add missing classes 2021-01-16 15:39:05 +00:00
Nicolas Petton
b205da2007
Minor cleanup of startup.js (#5409)
* Remove unused var declaration
* Remove trailing whitespaces
2021-01-15 16:55:52 +00:00
Nicolas Petton
17b4f53ba2
Add server sent events (#5279)
* Create server-sent-events.js

* Create sse-change-listener.js

* Implement server sent events

* Convert to ES5 and wrap in function

* Use the host string from tiddlyweb

* Improve comments in sse-server.js

* Can't use object reference as key

* Add retry timeout

* Fix a bug

* bug fix

* Fix formatting

* Fix ES5 compat

* capitalize comments

* more fixes

* Refactor tiddlywek/sse-server.js

* Extract helper functions for handling wikis and connections.
* Replace JSDoc comments.
* Fix formatting according to TW core.
* Simplify the logic for adding and removing connections.

* Fix formatting of tiddlyweb/sse-client.js

Fix formatting according to TW core.

* Fix formatting of server-sent-events.js

Fix formatting and comments following TW core guidelines.

* Extract a debounce function in sse-client.js

* Avoid using startsWith in server-sent-events.js

startsWith is part of ES2015, while TiddlyWiki uses the 5.1 dialect.

* New sse-enabled WebServer parameter

* If not set to "yes", disabled SSE request handling.
* Add documentation for the parameter in core/language/en-GB/Help/listen.tid
* Add new tiddler editions/tw5.com/tiddlers/webserver/WebServer Parameter_ sse-enabled.tid

* Disable polling for changes if SSE is enabled

* Add sse_enabled to /status JSON response
* Store syncer polling status in $:/config/SyncDisablePolling
* Handled disabling polling in core/modules/syncer.js

* Simply boolean logic in syncer.js

* Delete trailing whitespaces in syncer.js

Co-authored-by: Arlen22 <arlenbee@gmail.com>
2021-01-15 10:37:55 +00:00
jeremy@jermolene.com
ca95f1069f Fixed comment parsers to match end marker correctly
Fixes #5396
2021-01-13 11:48:42 +00:00
Nicolas Petton
65ffe96cc2
Fix broken aria-label in $:/PaletteManager (#5397) 2021-01-13 10:18:27 +00:00
Cameron Fischer
65932a9b21
Memory efficient linked list (#5380)
* Outlines of the mem efficient linked list

Need to stop for now. Found problem with $tw.utils.pushTop that I need
consultation for.

* Link list throws when given non-string vals

* Think I got rid of the last LinkList infinite loops

* LinkedList push better; fixed coding conventions

* Cleaning up LinkedList code and tests

* Ready to ship new mem efficient Linked List

* Switching to double quotes in LinkedList
2021-01-09 20:52:34 +00:00
jeremy@jermolene.com
af897361c7 Fix name of default branch for GitHub saver
Fixes #5317

Missed off 8cd13e2f89
2021-01-09 13:34:21 +00:00
Simon Huber
4858b24cfe
Fix #5308 - WidgetSubclassingMechanism not working with widgets that add EventListeners (or logic ?) in constructor (#5382)
* add EventListeners in the render() method instead of the constructor

* scrollable widget: add EventListeners in render() method instead of constructor +

... move logic from constructor to render()

* linkcatcher: add EventListeners in render() instead of constructor

* fieldmangler: add EventListeners in render() instead of constructor

* edit-bitmap: initialise editorOperations in render() instead of constructor

* list-widget: initialise storyviews in render() instead of constructor

* vars widget: execute Widget.call(this) in render() instead of constructor

... not shure what this should do

* Update fieldmangler.js

* Update edit-bitmap.js

* Update linkcatcher.js

* Update navigator.js

* Update scrollable.js

* Update list.js

* Update vars.js
2021-01-09 13:25:48 +00:00
Cameron Fischer
b632cea6b7
Fixed issue where [lookup[]] could emit undefined (#5376) 2021-01-07 18:19:50 +00:00
Cameron Fischer
e280f89ca5
Converting [links[]] to use better LinkedList (#5369) 2021-01-05 17:36:18 +00:00
Mohammad Rahmani
87b9dbcda1
Remove extra dashes in page title (#5370)
When Tiddlywiki has no subtitle you see extra dashes!
2021-01-05 17:35:26 +00:00
Cameron Fischer
be70e5851d
Taking advantage of linkedLists in all operator (#5362)
* Taking advantage of linkedLists in all operator

* Test to confirm [all[]] with LinkList is the same
2021-01-04 08:38:50 +00:00
Simon Huber
ac40ee4246
Fix #5318 - remove-tag-button not having the correct fill color (#5326) 2021-01-03 11:51:30 +00:00
Joshua Fontany
03626bc142
always test ext in tiddler title and remove it (#5329)
* always test ext in tiddler title and remove it

* patch custom ext length vulernability
2021-01-03 11:50:14 +00:00
jeremy@jermolene.com
fecf622616 It's 2021! 2021-01-03 10:05:02 +00:00
jeremy@jermolene.com
d25e540dd2 Add support for image/vnd.microsoft.icon content type
Fixes #5357
2021-01-03 10:04:52 +00:00
jeremy@jermolene.com
1e1b52088f Preparing for v5.1.24 as new prerelease
The new release banner is a placeholder; we'll run the competition once the release has taken shape a little.
2020-12-29 12:06:30 +00:00
jeremy@jermolene.com
2f8a100bab Clarify TiddlySpot warning text 2020-12-22 15:42:21 +00:00
jeremy@jermolene.com
a9a36b641a Filename for action-confirm widget should be 'action-confirm.js' for consistency 2020-12-22 11:50:26 +00:00
Saq Imtiaz
1e9cc2b747
Fix refresh for all attributes of droppable widget. Add disabled class (#5280) 2020-12-15 11:09:32 +00:00
Joshua Fontany
d50f6b406e
filesystem cleaup around hook (#5276) 2020-12-14 09:50:53 +00:00
jed
c1a1e272cc
Add a hook to allow modifying the the behaviour creating tiddler paths (#5267)
* Add a hook to allow modifying the the behaviour creating tiddler paths

This is needed for Bob to use the core to generate tiddler fileInfo 

I don't know if this is the best way to make the hook, but it works for what I need

* update th-make-tiddler-path arguments

the value is the current path, the parameter passed in is the original unmodified path so it is available to subsequent hooks
2020-12-13 23:24:23 +00:00
Xavier Cazin
88e29b4558
tabsState should hold a tiddler name rather than a list singleton (#5263)
* tabsState should hold a tiddler name rather than a list singleton

* tabsState should hold a tiddler name rather than a list singleton
2020-12-13 16:15:16 +00:00
Saq Imtiaz
0911d99813
URGENT: Reveal widget - fixed problem with previous patch of refresh handling (#5260)
* Fixed problem with previous patch of refresh handling

* Update reveal.js
2020-12-11 23:24:27 +00:00
jeremy@jermolene.com
93309b0b7d Sort plugins in control panel by name instead of title
Fixes #5256
2020-12-11 16:13:14 +00:00
Saq Imtiaz
c0dd13d446
Reveal widget should update on changed class and style attributes (#5258) 2020-12-11 15:36:00 +00:00
Robin Munn
f60d0ef109
reduce and :reduce handle empty input identically (#5255)
Fixes #5246. Now the reduce operator and :reduce filter run prefix will
both return empty output when their input is empty, so that both can be
chained together with the else operator or :else prefix.
2020-12-11 10:07:52 +00:00
Cameron Fischer
6ca89304a1
Fix for LinkedLists when using bad filter prefix (#5251) 2020-12-10 18:25:53 +00:00
Simon Huber
0d2b6cf837
Rename control-panel-button to advanced-search-button in advanced-search button (#5242) 2020-12-10 17:09:28 +00:00
Cameron Fischer
cd5d9bd5b9
Code cleanup of Linked Lists (#5241)
* made private methods limited to module scope
* moved private methods to file bottom
* changed tests to run comperable array functions in parallel
* added comments
2020-12-09 09:46:35 +00:00
jeremy@jermolene.com
1e1aeefd93 Fix add plugins modal
Fixes #5235
2020-12-09 09:07:48 +00:00
jeremy@jermolene.com
1d7091e637 Hide .tid exporter when more than one tiddler to export
Fixes #5237
2020-12-08 17:48:58 +00:00
jeremy@jermolene.com
bb6d41f3dd Macrocall widget: ensure we separately cache inline vs block parse trees
Fixes a bug in #5205
2020-12-07 16:05:34 +00:00
Joshua Fontany
a878d82c7a
Ignore edition filters if not running on node (#5222) 2020-12-07 15:59:32 +00:00
Joshua Fontany
85ff47366c
fix viewtemplate quirks (#5224) 2020-12-07 15:58:28 +00:00
Saq Imtiaz
ce5d20b8fc
Logging widgets :Fixed issue on Firefox where logging does not work (#5223)
* Fixed issue on Firefox where logging does not work properly due to column names

* Remove second argument to utils.logTable
2020-12-07 15:53:49 +00:00
Joshua Fontany
c3e34b469c
typo (#5221) 2020-12-06 22:59:48 +00:00
Simon Huber
958f57f2c0
Make editTiddler in sidebarsegments/search available as variable (#5218) 2020-12-06 17:15:40 +00:00
jeremy@jermolene.com
005f7c55b6 Restore accidental commenting in 0b1a05d10 2020-12-06 10:50:59 +00:00
Simon Huber
122306fc24
Update GruvboxDark, CupertinoDark and Nord palettes to work better with TiddlyDesktop (#5214)
* Update CupertinoDark.tid

* Update GruvBoxDark.tid

* Update Nord.tid
2020-12-06 09:58:02 +00:00
Jeremy Ruston
0b1a05d10d
Cache result of parsing macro calls which don't use text subsitution (#5205) 2020-12-06 09:43:06 +00:00
Joshua Fontany
b0f6d50b60
fix filesystem bugs (#5213) 2020-12-06 09:41:03 +00:00
Simon Huber
a3a7d6450d
CodeMirror: Ensure linenumber-gutter has a right border (#5212)
* Ensure linenumber-gutter has a right border

* Update GruvBoxDark.tid

* Update Nord.tid
2020-12-06 08:56:06 +00:00
Cameron Fischer
a857b4ab9a
use a linked list for filter runs. (#5206)
* Changed the filterrunprefixes to use LinkedList

* Testing for Linked List

* Finishing touches to LinkedList

* Minor corrections to link-list coding style

* Corrected for sneaky bug in linkedList
2020-12-06 08:54:57 +00:00
Saq Imtiaz
7fd24de372
Tests for filter prefixes (#5209) 2020-12-05 23:10:51 +00:00
Simon Huber
396703c478
An even faster version of the TagPickerTagTemplate (#5207) 2020-12-05 17:38:39 +00:00
Simon Huber
bfc4b447da
Add selection-background/foreground to GruvboxDark and Nord palettes (#5204)
* Update GruvBoxDark.tid

* Update Nord.tid

* Update Nord.tid

* Update Nord.tid

* Update Nord.tid
2020-12-05 16:38:08 +00:00
Cameron Fischer
fbe5bb229a
Fix for filterrunprefixes using $tw.wiki (#5202)
* Fixed runprefix 'and' to use widget wiki

* Made widget arg of filterTiddlers optional again

* Switched to passing {wiki: wiki} to prefixes
2020-12-05 16:12:40 +00:00
Saq Imtiaz
9825b5b4a0
Ensure new variables are strings (#5197) 2020-12-04 19:02:05 +00:00
Saq Imtiaz
8799911162
Reduce operator: second optional parameter instead of suffix (#5193)
* Tweak reduce operator to use an optional second parameter instead of a suffix

* Updated docs
2020-12-04 18:31:23 +00:00
Simon Huber
813e28e1ea
Make the tag-picker tags-dropdown more performant (#5195)
* Replace macrocall for tag-button with transclusion of a TagPickerTagTemplate

* Create TagPickerTagTemplate.tid
2020-12-04 18:28:36 +00:00
Simon Huber
911e23ee6d
Make sidebarsegments/search button display the count of ALL search results (de-duplicated) (#5194) 2020-12-04 18:27:40 +00:00
Saq Imtiaz
046746ba20
Add :reduce filter run prefix (#5196) 2020-12-04 18:23:50 +00:00
Robin Munn
8ffe138942
Add rawunicode suffix to (json)stringify operators (#5191)
Default with no suffix is pre-5.1.23 behavior, escaping all Unicode
characters for maximum compatibility (avoids encoding issues). New
"rawunicode" suffix allows passing through Unicode characters U+0080
and up unchanged, for cases where you know your tools are handling
encoding correctly and you want less verbose escaping.
2020-12-04 13:19:59 +00:00
Saq Imtiaz
1f5e1205ec
Extend Eventcatcher to handle multiple events (#5185)
* support multiple events

* Add variables for event type and detail. Rename types attribute to events

* Correct typo in refresh handling
2020-12-02 21:15:35 +00:00
Simon Huber
6b03105bed
Update CupertinoDark.tid (#5183) 2020-12-02 21:13:42 +00:00
Simon Huber
552843369c
Update shortcuts-mac.multids (#5179) 2020-12-02 16:55:55 +00:00
Simon Huber
a1ef66ec6d
Better readability for codemirror linenumbers + CupertinoDark muted-foreground better contrast (#5164)
* Update styles.tid

* Update CupertinoDark.tid
2020-12-02 12:21:23 +00:00
Simon Huber
fc797f3722
Fix #5162 - tiddler opening position is incorrect, bug in navigator.js 2020-12-02 12:21:02 +00:00
Joshua Fontany
c6bb783308
Fix filesystem regression (#5176)
* $:/config/OriginalTiddlerPaths if no filters match

* fixed & docs updated

* tested with tiddlywiki.files & tw.com edition

* typos

* originalpath to options, propigate isEditableFile

* syntax cleanup
2020-12-02 09:47:51 +00:00
Saq Imtiaz
4079f72310
Fix typo in x-listops.js (#5171) 2020-12-01 18:14:07 +00:00
Mario Pietsch
880930da8b
Add actions parameter to range-widget + docs! (#5158)
* add actionsStart, -Stop and actions to range-widgets

* fix indent
2020-12-01 18:11:09 +00:00
jeremy@jermolene.com
6a91dbfe2f Add support for working with negative dates
See discussion https://groups.google.com/g/tiddlywiki/c/aHlyaHr93Io/m/vGcDa6lxAgAJ
2020-12-01 10:39:27 +00:00
Joshua Fontany
dde4182830
Fix filesystem adaptor (#5113)
* ignore .env

testing new implementation

almost there

closer

bug, desyncing

fixed

final testing

final testing

cleanup

cleanup

* isEditableFile flow fixed

* removed `basepath` logic

* callback to delete title from $tw.boot.files

* comment fix

* have syncer delete from boot.files

* syntax

* bugfix: error on missing directory

* bugifx

* remove !draft check

* fix relative filepaths

* cleanup

* cleanup !draft

* catch undefined filepaths in deleteTiddlerFile()

* typo

* whitelist wiki dir, encodeURIComponent otherwise

* test for wikiPath, not wikiPath/tiddlers

* don't need to .normailze()

* whitelist wiki directory, move cleanup to util

* use cleanup util & fail EPERM & EACCESS gracefully

* comments

* final bugs fixed

* improved sync error
2020-11-30 22:31:48 +00:00
Simon Huber
6a319940d3
Make buttons look like buttons in CupertinoDark, GruvboxDark and DesertSand palette (#5159)
* Make buttons look like buttons in CupertinoDark palette

* Update GruvBoxDark.tid

* Update DesertSand.tid
2020-11-30 21:04:14 +00:00
jeremy@jermolene.com
3406b98af6 Add "autocomplete" attribute to <$edit> and <$edit-text> widgets 2020-11-30 18:48:04 +00:00
Simon Huber
367854c81b
Update static.tiddler.html.tid (#5148) 2020-11-30 17:56:19 +00:00
Robin Munn
fd3e77d38f
"dedupe" and "raw" suffixes for enlist-input operator (#5152)
Includes unit tests.
2020-11-30 17:52:46 +00:00
saqimtiaz
8fc6910c03
Added string operator pad[] along with tests and docs (#5146) 2020-11-30 17:43:50 +00:00
Mario Pietsch
5cbe4c5317
Add radio actions, th-radio-variables hook and fix label refresh problem (#5154)
* Add actions to radio-widget, pass trhough all attributes and user parameters, fix label refresh

* invoke th-radio-hook instead of hardcoded variables

* simplify code and test it with a plugin hook

* remove hook
2020-11-30 17:28:49 +00:00
Jeremy Ruston
4d9e6831bb
Rename "references" to "backlinks" in the tiddler info panel (#5143)
* Rename "references" to "backlinks" in the tiddler info panel

* Change docs references to "references" to "backlinks"
2020-11-29 18:32:22 +00:00
Simon Huber
ce937595d7
Add Button to remove tags from tiddlers $:/config/NewTiddler/Tags and $:/config/NewJournal/Tags (#5140)
* Update Basics.tid

* Update ControlPanel.multids

* Update Basics.tid

* Update ControlPanel.multids

* Update ControlPanel.multids

* Update ControlPanel.multids
2020-11-29 12:52:50 +00:00
jeremy@jermolene.com
cc850d7151 Fix typo in list macro
See discussion https://github.com/Jermolene/TiddlyWiki5/pull/3710#issuecomment-735295319
2020-11-29 12:38:09 +00:00
Simon Huber
eb7f59a855
Make "tc-dirty" update also on external windows (#5129)
* Update windows.js

* Update saver-handler.js

* Update saver-handler.js
2020-11-28 21:24:01 +00:00
Simon Huber
b3cbd7d733
Add TiddlySpot-ReadOnly Message-Box to Tiddlyspot Saving Panel (#5133)
* Add message box to TiddlySpot Saving panel

* add readonly message
2020-11-28 21:22:32 +00:00
Simon Huber
28724138d1
Small update for better readability for CupertinoDark palette (#5134) 2020-11-28 21:21:53 +00:00
Simon Huber
c655ec5469
Remove background-colors from framed engine (#5131) 2020-11-28 14:08:16 +00:00
Simon Huber
8005c91e79
Correctly add EventListener 'click' for popup-handling in new windows (#5127) 2020-11-28 07:26:47 +00:00
Simon Huber
86a9f922bf
Update LayoutSwitcher.tid (#5125) 2020-11-27 21:52:26 +00:00
saqimtiaz
2175be27b0
Ensure that we always fetch the latest sha bypassing cache. (#5126)
Ensure that we always fetch the latest sha bypassing cache.
2020-11-27 21:37:11 +00:00
jeremy@jermolene.com
9637a29e55 Rename widget.executeStartupTiddlers() to invokeActionsByTag()
This method was introduced earlier in v5.1.23 in  5cc1600072

It is not in fact restricted to startup tiddlers.
2020-11-26 12:41:24 +00:00
jeremy@jermolene.com
2267e31546 Fix eventcatcher to ensure variable values are strings
I was getting some inconsistencies with filter operators that expect strings.
2020-11-25 15:54:28 +00:00
jeremy@jermolene.com
e3bf1f43cf Missed off previous commit 64ac29adc
Thanks @saqimtiaz
2020-11-25 14:07:01 +00:00
jeremy@jermolene.com
64ac29adca Fix typo preventing filter run prefix modules from being cached
This had a significant impact on performance.
2020-11-25 13:58:54 +00:00
jeremy@jermolene.com
94ffb50e04 Fix dark mode event handling
Previous code worked but this matches the spec, and works on iOS
2020-11-25 12:33:39 +00:00
saqimtiaz
ce27492b96
Refactor updating of classes for button widgets to avoid potential edge case failures (#5115) 2020-11-24 21:19:20 +00:00
Simon Huber
a9d583b85e
Update CupertinoDark.tid (#5117) 2020-11-24 21:16:24 +00:00
jeremy@jermolene.com
c854e518fa Add support for $:/info/darkmode (and for dynamic info tiddlers) 2020-11-24 19:01:33 +00:00
jeremy@jermolene.com
7327a3fb92 Fixed: Shadow tiddlers don't refresh when their plugin is deleted/modified 2020-11-24 18:57:39 +00:00
Simon Huber
50a3c5526f
Update CupertinoDark.tid (#5107) 2020-11-23 20:09:53 +00:00
Simon Huber
77971ff720
Lighter sidebar-controls-foreground for Cupertino Dark Palette (#5106) 2020-11-23 19:41:51 +00:00
Simon Huber
e0f4d82214
Update CupertinoDark.tid (#5105) 2020-11-23 19:32:51 +00:00
Simon Huber
af72fdf245
Add caption to ControlPanel LayoutSwitcher (#5103)
* Update LayoutSwitcher.tid

* Update ControlPanel.multids
2020-11-23 19:15:04 +00:00
Simon Huber
519962b4a9
Update and rename MacOSDark.tid to CupertinoDark.tid (#5101)
* Update and rename MacOSDark.tid to CupertinoDark.tid

* Update CupertinoDark.tid

* Update CupertinoDark.tid

* Update CupertinoDark.tid
2020-11-23 19:14:07 +00:00
Simon Huber
c9a77c5877
Create MacOSDark.tid (#5100) 2020-11-23 18:41:38 +00:00
Simon Huber
3d93790573
Fix StaticRiver exporter width of static tiddlers (#5099)
* Add tc-static-story-river class to StaticRiver exporter

* Update base.tid
2020-11-23 18:06:46 +00:00
saqimtiaz
aa6f152d35
Add Switcher modal (#5089)
* Alternative switcher using a parameter via tm-show-switcher

* Add CSS class for centered modals

* Changed keyboardshortcut and removed transition CSS

* Resolved wording issues
2020-11-23 17:06:24 +00:00
Simon Huber
72b32946aa
Small adjustments for DesertSand palette (#5098)
* Small adjustments for DesertSand palette

* Update DesertSand.tid
2020-11-23 16:59:48 +00:00
Simon Huber
8c4d67ba2b
Add light "DesertSand" palette - a desert-sandy palette (#5092)
* Add light "DesertSand" palette - a desert-sandy palette

* Update DesertSand.tid

* Update DesertSand.tid
2020-11-22 21:18:34 +00:00
saqimtiaz
3c195b05cb
Button and Droppable widgets: improve refresh handling for classes (#5091)
* Button and Droppable widgets: improve refesh handling for classes

* Added comment regarding handling of class attribute
2020-11-22 21:13:24 +00:00
saqimtiaz
fa63ac5d1e
Add: Eventcatcher widget (#5086)
* Jeremy's original version of the event widget

* Renamed to eventcatcher, added modifier key support and mouse button support as variables

* Allow updating classname without re-rendering entire widget

* Handle tag attribute in refresh handler

* Improve handling for mouse button variable

* Fix typo in refresh handler

* Added variables for position of selected node and position of event relative to selected node and catcher node
2020-11-22 20:47:12 +00:00
saqimtiaz
51ca14861e
Fixed bug with default value in lookup operator (#5088)
* Fixed bug with default value in lookup operator

* Fixed test for lookup operator with default
2020-11-22 20:43:36 +00:00
saqimtiaz
d2f87d6200
Reveal widget allow re-positioning (#5087)
* Jeremy's original version of the event widget

* Renamed to eventcatcher, added modifier key support and mouse button support as variables

* Reveal widget: update popup position when state tiddler updates
2020-11-21 17:19:52 +00:00
saqimtiaz
4f07539164
Cycle operator improvements plus docs (#5069)
* Tweak cycle operator to support step size parameter and add docs for toggle and cycle

* Mention that title list should have no duplicates
2020-11-20 18:37:23 +00:00
saqimtiaz
483fd941f5
Extend action-log and subclass it as log widget (#5078)
* Extended action-log and subclassed it as log widget

* Do not rename LogWidget class

* Removed unneeded variable declaration
2020-11-20 14:08:18 +00:00
saqimtiaz
89541edcff
Added mathematics filter operators power and log (#5080) 2020-11-20 14:00:20 +00:00
Simon Huber
fd14e94610
Add whitespace trims to EditToolbar Buttons (#5076)
* Add whitespace trim to EditToolbar cancel Button

* Add whitespace trim to EditToolbar delete Button

* Add whitespace trim to EditToolbar save Button
2020-11-19 16:37:36 +00:00
saqimtiaz
e2bea854b6
System tiddler syncing (#4987)
* First pass at a fix for system tiddler sync issues

* Add new filter syncFromServer

* Undo previous attempt at a fix

* Added a flag to control sync of system tiddlers from server
2020-11-19 15:59:02 +00:00
Simon Huber
da66323dc5
Remove 2em of whitespace from EditTemplate when there are no visible fields (#5063)
* Remove 2em of whitespace from EditTemplate when there are no visible fields

* Update base.tid

* Update fields.tid

* Update fields.tid

* Update base.tid
2020-11-18 18:02:40 +00:00
saqimtiaz
6f8dca956b
Colour code ImportListing rows (#5067) 2020-11-18 15:50:40 +00:00
jeremy@jermolene.com
d181b96518 Wikitext parser: Refactor a poorly written utility function 2020-11-18 12:05:06 +00:00
saqimtiaz
527638d5e6
Improved status messages in ImportListing to remove redundant and irrelevant messages (#5059) 2020-11-17 19:12:41 +00:00
Simon Huber
b95f9e6000
Partial fix for issue #4721 (#5060)
* Update new-tiddler.tid

* Update new-journal.tid

* Update new-image.tid
2020-11-17 19:08:14 +00:00
Simon Huber
eae3da0e9d
Make sidebarsegments/search-results-count work with all search tabs (#5062) 2020-11-17 19:05:32 +00:00
jeremy@jermolene.com
8cd13e2f89 Change default branch for GitHub saver to "main"
To match GitHub's new default

See also #5055 for the accompanying docs change
2020-11-17 14:47:15 +00:00
saqimtiaz
d6e055368d
Added docs for action-confirm widget, added default message for widget and improved logic for disabling it. (#5047) 2020-11-16 17:02:22 +00:00
saqimtiaz
fc1721709a
Cycle operator and refactored toggle operator (#5021)
* Refactored toggle operator and added cycle operator

* Better handling for operand case

* Syntax/whitespace corrections
2020-11-16 17:02:04 +00:00
Simon Huber
43061e64a6
Fix #5039 - Tag input, Type input and Fields inputs don't delete their state tiddlers on tiddler-cancel/delete (#5049)
* Update EditTemplate.tid

* Update EditTemplate.tid

* Update EditTemplate.tid

* Update tag-picker.tid

* Update tag-picker.tid

* Update type.tid

* Update fields.tid

* Update cancel.tid

* Update delete.tid

* Update type.tid

* Update ViewTemplate.tid
2020-11-16 16:54:29 +00:00
saqimtiaz
a637f7fb60
Modals: add navigator to handle tm-navigate (#5027)
* Wrap modal in a navigator widget to allow tm-navigate to work

* Move all story list handling to Modal

* Make sure any values for story list or history list sent as variables have precedence

* Code clean up
2020-11-16 16:27:46 +00:00
Simon Huber
ca4cdc81dd
Remove reduntant fieldmangler widget from tags EditTemplate (#5044) 2020-11-15 16:04:39 +00:00
saqimtiaz
13499557bf
Fix whitespace in x-listops.js and tweak toggle operator (#5024)
* Replaced leading spaces with tabs

* Tweak toggle[] to insert new value in same list position
2020-11-15 16:04:03 +00:00
Simon Huber
a2b2e117e3
Delete all state tiddlers after adding a new field (#5045) 2020-11-15 15:49:43 +00:00
Simon Huber
2aa6e761fd
Make Tag-Picker Macro work with every field (#5035)
* Make tag-picker work with every field

* Make EditTemplate/tags work with every field

* Make NewTiddlerTags and NewJournalTags selectable through tag-picker

* Update tag-picker Macro Docs
2020-11-15 12:04:50 +00:00
Simon Huber
7078ca2c1e
Revert Tag-input behavior to how it was before (#5041) 2020-11-15 11:42:46 +00:00
saqimtiaz
04bf6e0fd8
Action widget: confirm (#5037)
* added action widget: confirm

* Check for all attributes in refresh handler

* Always return a value from invokeActions
2020-11-15 11:40:08 +00:00
Simon Huber
bb6fee4e1c
Remove image-buttons from type image/svg+xml and add editor-height and stamp button (#5042)
* Add stamp button to image/svg+xml

* Add editor-height Button to image/svg+xml

* Remove rotate-left button from image/svg+xml

* Remove size Button from image/svg+xml

* Remove paint Button from image/svg+xml

* Remove line-width Button from image/svg+xml

* Remove clear Button from image/svg+xml

* Remove opacity Button from image/svg+xml
2020-11-15 11:37:30 +00:00
jeremy@jermolene.com
1b31c25ea7 Introduce <$action-log> widget to help debugging action strings 2020-11-14 13:00:00 +00:00
Simon Huber
02a956b1bb
Add Pop Storyview to Manager Tags Section (#5034) 2020-11-14 12:32:39 +00:00
jeremy@jermolene.com
cc3462999b When importing don't use file type as content type
Fixes #5028

I've checked that importing other file types still works but would appreciate a sanity check!
2020-11-14 12:05:35 +00:00
Simon Huber
b63c90e401
Add missing tooltip and aria-label to clear-tag-input button (#5033)
* Add tooltip and aria-label to new clear-tags-input button

* Update EditTemplate.multids
2020-11-13 19:19:55 +00:00
Simon Huber
497b334d60
Change tag-picker behavior when there is user-input ... (#5032)
... in the search field
2020-11-13 18:50:50 +00:00
Simon Huber
fa373a1c6f
Make keyboard-driven-input Macro reset to typed input ... (#5031)
... on up/down when reaching the top/bottom of the list
2020-11-13 18:01:24 +00:00
saqimtiaz
09f7ad84b2
Added disabled attribute to input widgets (#5014)
* checkbox widget: added disabled attribute

* Range widget: added disabled attribute

* Radio widget: added disabled attribute

* EditText widget: added disabled attribute
2020-11-09 18:28:12 +00:00
saqimtiaz
445c15e719
Extend toggle operator (#5015)
* Extend toggle operator to support optional second operand to toggle a value pair

* Added tests for extended toggle filter

* Updated docs for toggle operator
2020-11-09 18:27:45 +00:00
jeremy@jermolene.com
1ec8b7877e Ensure root template contents is parsed in block mode
Embarrassingly, the double blank lines at the end of the tiddler are needed to ensure the transclude widget is recognised in block mode, instead of being wrapped in a paragraph tag.

Fixes #5016
2020-11-09 17:08:34 +00:00
saqimtiaz
59c6f4447e
Import UI : Fix issue with size of rename button (#5012)
* Fix issue with size of rename button

* Add css instead of hard coded style attribute
2020-11-08 23:21:01 +00:00
saqimtiaz
71194d8767
Added disabled attribute support to ButtonWidget (#5010)
* Added disabled attribute to ButtonWidget

* Update ButtonWidget.tid
2020-11-08 22:32:27 +00:00
Simon Huber
4d85d267a1
Make navigating and editing Shadow tiddlers work again (#5004)
* Update search.tid

* Update Filter.tid

* Update Shadows.tid

* Update Standard.tid

* Update System.tid

* Update search.tid
2020-11-08 13:26:02 +00:00
Simon Huber
98f67373b1
Menubar plugin: make sidebar-scrollable top margin adjust ... (#4974)
* Menubar plugin: make sidebar-scrollable top margin adjust ...

... to height of menubar

* Update styles.tid

* Update styles.tid

* Update styles.tid

* Update styles.tid

* Update menu.tid

* Update styles.tid

* Update styles.tid

* Update styles.tid

* Update styles.tid

* Update menu.tid

* Update styles.tid

* Update styles.tid
2020-11-08 11:50:15 +00:00
Simon Huber
9854a4fc08
Fix #4998 - Pressing Enter creates Missing Tiddler (#5001)
* Update search.tid

* Update Filter.tid

* Update Shadows.tid

* Update Standard.tid

* Update System.tid

* Update search.tid

* Create Hidden Setting Search-NavigateOnEnter.tid
2020-11-08 11:43:24 +00:00
Simon Huber
9fe4c4889a
Add "meta" to getEventModifierKeyDescriptor (#5000)
* Add "meta" to getEventModifierKeyDescriptor

* Update modifier Variable.tid
2020-11-08 10:15:29 +00:00
Simon Huber
750f56a235
Update Basics.tid (#4999) 2020-11-08 09:44:49 +00:00
saqimtiaz
66636d1a86
Docs for new operators (#4994)
* Docs for is[draft]

* Better error handling for suffixes

* Docs for search-replace operator

* Added tests for search-replace operator

* Docs for toggle operator
2020-11-08 09:34:05 +00:00
Simon Huber
b69b84b38e
Update core "tabs" macros to use explicitState (#4985)
* Update ControlPanel.tid

* Update Advanced.tid

* Update Appearance.tid

* Update Info.tid

* Update AddPlugins.tid

* Update Plugins.tid

* Update Saving.tid

* Update Toolbars.tid

* Update Plugins.tid

* Update More.tid

* Update TiddlerInfo.tid

* Update tabs.tid

* Update settings.tid

* Update ControlPanel.tid

* Update Advanced.tid

* Update Appearance.tid

* Update Info.tid

* Update AddPlugins.tid

* Update Plugins.tid

* Update Saving.tid

* Update Toolbars.tid

* Update Plugins.tid

* Update More.tid

* Update tabs.tid

* Update settings.tid

* Update TiddlerInfo.tid

* Update AdvancedSearch.tid

* Update Filter.tid

* Update Shadows.tid

* Update Standard.tid

* Update System.tid
2020-11-08 09:31:39 +00:00
Simon Huber
de69ab0d0e
Update keyboard-driven type-input actions on "Escape" (#4992)
* Delete "type" field when pressing escape in type input

* Update type.tid
2020-11-07 12:21:24 +00:00
saqimtiaz
cf58dcf116
Add is[draft] operator (#4991) 2020-11-07 10:29:15 +00:00
saqimtiaz
53922d3558
search-replace string operator (#4973)
* Added search-replace operator

* Merge with master

* Add try catch around new RegExp

* Better error handling
2020-11-07 10:09:11 +00:00
saqimtiaz
c41e34793d
Add x-listops filter toggle (#4990) 2020-11-07 10:00:47 +00:00
saqimtiaz
5aa4e4cb68
Initial support for switching page templates (#4979)
* Add support for switching page templates

* Revert "Add support for switching page templates"

This reverts commit dbf7682d47.

* Adopt Jeremy's approach to page template switching instead

* Fix default value of recursion marker

* Fixed issue with conditional check
2020-11-07 09:51:01 +00:00
saqimtiaz
2b31c7a509
Multiple operands for filter operators (#4964)
* Firt pass at adding multiple operands to filter operators

* Optimized parsing of multiple operands and added more tests. Need more flexibility for interpreting multiple operands as variables/text references

* Add support for parsing text references and variables in multiple operands

* Added string-replace filter for testing multiple filter operands

* Added more tests for variables and text references in operands

* Removed string-replace operator and some whitespace corrections

* Removed string-replace operator and some whitespace corrections

* Added test with comma in operand
2020-11-07 09:47:08 +00:00
Simon Huber
0bd866e2f9
Make type input keyboard-driven (#4989) 2020-11-07 09:46:05 +00:00
Simon Huber
900a29fbb3
Tag-picker: focus tag-input after clicking a tag from the dropdown (#4986)
* Tag-picker: focus tag-input after clicking a tag from the dropdown

* Update tag-picker.tid
2020-11-06 21:16:14 +00:00
Miha Lunar
1b226c7556 Fixed coding standard nits 2020-11-06 19:56:20 +01:00
Simon Huber
b3d0303139
Add editor-height button and stamp-button to tiddler types that miss them (#4975)
* Add editor-height button also to application/javascript ...

... application/json and application/x-tiddler-dictionary

* Add stamp button also to application/javascript ...

... application/json and application/x-tiddler-dictionary
2020-11-06 18:34:10 +00:00
Simon Huber
d51975b183
KeyboardWidget: don't trap keyboard shortcut if actions and message are empty and invokeActions isn't handled (#4971)
* KeyboardWidget: don't trap keyboard shortcut if actions are empty

* Update keyboard.js

* Update keyboard.js
2020-11-06 17:32:26 +00:00
Simon Huber
bc5143f190
When accessing the AdvancedSearch from the sidebar, delete sidebar-search state tiddlers (#4981) 2020-11-06 16:53:11 +00:00
Simon Huber
458460354e
Add delete-field keyboard shortcut (#4978)
* Add delete-field keyboard-widget

* Update shortcuts.multids

* Update ShortcutInfo.multids

* Update fields.tid

* Update shortcuts.multids
2020-11-06 16:27:41 +00:00
Miha Lunar
2bd9cc45fa Added more start/end parser ranges 2020-11-04 21:02:17 +01:00
Simon Huber
d5c4aa250a
Remove dependency on wiki.js for story-startup and navigator (#4200)
* Update story.js

* Update wiki.js

* Update navigator.js

* Add deprecation console logs to addToHistory and addToStory
2020-11-02 22:52:02 +00:00
Simon Huber
4a6aa865b3
Make Escape in keyboard-driven-inputs behave like in AdvancedSearch/Filter (#4961)
* Create focus-editor.js

* Update search.tid

* Update link-dropdown.tid

* Update search.tid

* Update Standard.tid

* Update Shadows.tid

* Update System.tid

* Update fields.tid

* Update tag-picker.tid

* Update Filter.tid

* Update clear.tid

* Update link-dropdown.tid

* Delete focus-editor.js
2020-11-02 19:08:24 +00:00
Mario Pietsch
42b965c9f0
Init less parsers (#4954)
* add a new-line before the log text to increase readability of the test output

* make eslint, jslint happy

* it shouldn't be there

* fremove this file from my PRs

* add a new-line before the log text to increase readability of the test output

* make eslint, jslint happy

* it shouldn't be there

* fremove this file from my PRs

* add a new-line before the log text to increase readability of the test output

* make eslint, jslint happy

* it shouldn't be there

* fremove this file from my PRs

* add a new-line before the log text to increase readability of the test output

* make eslint, jslint happy

* it shouldn't be there

* fremove this file from my PRs

* add a new-line before the log text to increase readability of the test output

* make eslint, jslint happy

* it shouldn't be there

* fremove this file from my PRs

* add a new-line before the log text to increase readability of the test output

* make eslint, jslint happy

* it shouldn't be there

* fremove this file from my PRs

* add a new-line before the log text to increase readability of the test output

* make eslint, jslint happy

* it shouldn't be there

* fremove this file from my PRs

* add a new-line before the log text to increase readability of the test output

* make eslint, jslint happy

* it shouldn't be there

* fremove this file from my PRs

* add a new-line before the log text to increase readability of the test output

* make eslint, jslint happy

* it shouldn't be there

* fremove this file from my PRs

* add a new-line before the log text to increase readability of the test output

* make eslint, jslint happy

* it shouldn't be there

* fremove this file from my PRs

* add a new-line before the log text to increase readability of the test output

* make eslint, jslint happy

* it shouldn't be there

* fremove this file from my PRs

* add a new-line before the log text to increase readability of the test output

* make eslint, jslint happy

* it shouldn't be there

* fremove this file from my PRs

* add a new-line before the log text to increase readability of the test output

* make eslint, jslint happy

* it shouldn't be there

* fremove this file from my PRs

* add a new-line before the log text to increase readability of the test output

* make eslint, jslint happy

* it shouldn't be there

* fremove this file from my PRs

* add a new-line before the log text to increase readability of the test output

* make eslint, jslint happy

* it shouldn't be there

* fremove this file from my PRs

* add a new-line before the log text to increase readability of the test output

* make eslint, jslint happy

* it shouldn't be there

* fremove this file from my PRs

* Don't override browser selection colours by default

Reverts some of #4590

* add a new-line before the log text to increase readability of the test output

* make eslint, jslint happy

* it shouldn't be there

* fremove this file from my PRs

* add a new-line before the log text to increase readability of the test output

* make eslint, jslint happy

* it shouldn't be there

* fremove this file from my PRs

* add a new-line before the log text to increase readability of the test output

* make eslint, jslint happy

* it shouldn't be there

* fremove this file from my PRs

* add a new-line before the log text to increase readability of the test output

* make eslint, jslint happy

* it shouldn't be there

* fremove this file from my PRs

* add a new-line before the log text to increase readability of the test output

* make eslint, jslint happy

* it shouldn't be there

* fremove this file from my PRs

* add a new-line before the log text to increase readability of the test output

* make eslint, jslint happy

* it shouldn't be there

* fremove this file from my PRs

* add a new-line before the log text to increase readability of the test output

* make eslint, jslint happy

* it shouldn't be there

* fremove this file from my PRs

* list-widget, init new Parser() only if needed.

* fix braces

Co-authored-by: jeremy@jermolene.com <jeremy@jermolene.com>
2020-11-01 17:14:42 +00:00
saqimtiaz
e9a635dc81
Added intersection filter run prefix (#4959) 2020-11-01 17:13:52 +00:00
Simon Huber
26ade60e93
Make AdvancedSearch/Filter navigatable by keyboard (#4932)
* Make AdvancedSearch/Filter keyboard-driven

* Adapt keyboard-driven-input macro for use with...

... AdvancedSearch/Filter Tab

* Adjust Filter dropdown for kb-driven AdvancedSearch/Filter

* Adjust Clear Button for kb-driven AdvancedSearch/Filter

* Adjust Delete Button for kb-driven AdvancedSearch/Filter

* Adjust Export Button for kb-driven AdvancedSearch/Filter

* Update clear.tid

* Avoid editing the wron tiddler

* Make cancel-search-actions a bit more sophisticated

* Update Filter.tid

* Update Filter.tid

* Update Filter.tid

* Update keyboard-driven-input.tid

* Update dropdown.tid

* Update dropdown.tid

* Update Filter.tid

* Update clear.tid

* Update delete.tid

* Update dropdown.tid

* Update export.tid

* Update clear.tid

* Update Shadows.tid

* Update Standard.tid

* Update Shadows.tid

* Update System.tid

* Update Filter.tid

* Update keyboard-driven-input.tid
2020-11-01 17:12:29 +00:00
saqimtiaz
e7245a709c
Add string operator enlist-input[] (#4948)
* Add string operator titlelist[]

* Update strings.js

* Update strings.js

* Add tests
2020-11-01 17:11:46 +00:00
Simon Huber
a6efc14a7c
Add keyboard shortcut to change the sidebar layout (#4952)
* Create change-sidebar-layout keyboard shortcut

* Update shortcuts.multids

* Update ShortcutInfo.multids

* Update Misc.multids
2020-11-01 17:10:19 +00:00
saqimtiaz
9fbcdeb29e
Import UI: add warning about tiddlers that already exist (#4956)
* Added message when tiddler being imported already exists

* Refactored some filters into a shared subfilter, optimized macro definitions
2020-11-01 11:33:02 +00:00
Simon Huber
ef1b7d619a
Make ctrl-Enter in sidebar search also focus the AdvancedSearch input (#4941)
* Update search.tid

* Update Misc.multids

* Update search.tid

* Update search.tid

* Update search.tid

* Update search.tid
2020-11-01 11:23:18 +00:00
Simon Huber
ec70e5c179
AdvancedSearch keyboard shortcut: Let the navigator widget handle scrolling (#4955) 2020-11-01 11:22:34 +00:00
Simon Huber
4de0dc301b
Rename $:/core/ui/KeyboardShortcut/toggle-sidebar... (#4953)
... to $:/core/ui/KeyboardShortcuts/toggle-sidebar for consistency
2020-11-01 11:15:53 +00:00
Simon Huber
da06b64845
Fix AdvancedSearch Standard, System and Shadows up/down behavior (#4939)
* add filterMinLength to AdvancedSearch/Shadows

* add filterMinLength to AdvancedSearch/Standard

* add filterMinLength to AdvancedSearch/System

* Update link-dropdown.tid
2020-11-01 10:57:13 +00:00
Robin Munn
77fe6244a2
Fix bug with sortan operator called on date fields (#4839)
* Add failing unit test that shows the bug

* Fix the bug
2020-11-01 10:45:18 +00:00
Simon Huber
f6e485b897
Avoid editing the wrong tiddlers when input fields are empty (#4943)
* Avoid editing the 'undefined' tiddler

* Avoid editing the wrong tiddler

* Avoid editing the wrong tiddler

* Avoid editing the wrong tiddler
2020-10-31 13:22:46 +00:00
Simon Huber
4b5d287c90
Change input-accept-variant actions shortcut from alt-Enter ... (#4942)
... to ctrl-Enter and advanced-search-sidebar shortcut from ctrl-Enter to alt-Enter

the ctrl-Key blocks navigation to the AdvancedSearch tiddler
2020-10-31 13:22:05 +00:00
saqimtiaz
c01e9cef12
Do not save temp tiddlers in single file (#4938)
* Update single file template to exclude temp tiddlers

* Update save-all-external-js.tid
2020-10-31 13:21:28 +00:00
saqimtiaz
655501140b
Improvements for Import UI (#4937)
* Fixed bug with old titles used in popup, improved UI for greater rename input size

* Added flexbox utility CSS and use it for import UI
2020-10-29 13:01:17 +00:00
Simon Huber
b8fa6f0f0a
Fix keyboard-driven fieldname dropdown (#4930)
I've accidentally overwritten the correct file when adding the tc-small-gap classes ... SORRY!
2020-10-28 17:16:20 +00:00
saqimtiaz
9605d94b6c
Import rename (#4928)
* Add UI for renaming tiddlers before import in the import listing

* Removed spurious whitespace
2020-10-28 16:03:04 +00:00
Simon Huber
9a4eb1e835
Add meta-S (mac) / ctrl-S shortcuts to save wiki (#4927)
* Create save-wiki.tid

* Update shortcuts-mac.multids

* Update shortcuts.multids

* Update ShortcutInfo.multids
2020-10-28 14:42:41 +00:00
Simon Huber
e71bf27dae
Replace various &nbsp; with tc-small-gap classes (#4926)
* replace &nbsp; by span.tc-small-gap-right

* replace &nbsp;

* replace &nbsp;

* replace &nbsp;

* replace &nbsp;

* replace &nbsp;

* replace &nbsp;

* replace &nbsp;
2020-10-28 13:13:55 +00:00
Simon Huber
c985fd63f9
make link-dropdown navigatable by keyboard (#4919) 2020-10-28 12:01:05 +00:00
Simon Huber
12be7ac7e9
Add ability to navigate fieldname-dropdown by keyboard (#4921)
* make fields EditTemplate navigatable by keyboard

* Add configuration tiddler for fieldname-dropdown filters

* Update base.tid
2020-10-28 11:59:36 +00:00
Ryan Kramer
651619076a
add override saver (#4908)
* add override saver

* rename 'override' to 'custom' and use the  global instead of introducing a new one
2020-10-28 11:58:48 +00:00
Simon Huber
81e3ab0bc5
Make AdvancedSearch/Standard, AdvancedSearch/System and AdvancedSearch/Shadows navigatable by keyboard (#4925)
* Make AdvancedSearch/Shadows navigatable by keyboard

* Make AdvancedSearch/System navigatable by keyboard

* Make AdvancedSearch/Standard navigatable by keyboard

* Update search.tid
2020-10-28 10:53:41 +00:00
Simon Huber
e43ffe860b
Fix #4910 - "Editor link dropdown is broken in pre-release." (#4913)
* fix #4910 in sidebarsegments/search

* fix #4910 in editortoolbar/link-dropdown

* fix #4910 in keyboard-driven-input macro

* Update keyboard-driven-input_Macro.tid

* Fix #4910 in tag-picker macro

* Update tag-picker.tid
2020-10-27 17:33:06 +00:00
saqimtiaz
972456ca07
Add new 'filter' prefix for filter runs (#4918) 2020-10-27 16:48:40 +00:00
saqimtiaz
c9efa23f02
Named filter run prefixes (#4915)
* First pass at refactoring filter code to support named filter run prefixes

* Remove filter prefix for now

* renamed module type and filter run prefixes

* Moved inline handling for no filter run prefix to 'or' filter run prefix.

* Added error handling for undefined filter run prefixes
2020-10-27 12:24:18 +00:00
Simon Huber
3843c61132
Add ability to cycle Advanced-search tabs by keyboard ... (#4909)
* Update AdvancedSearch.tid

* Update System.tid

* Update Standard.tid

* Update Filter.tid

* Update Shadows.tid

* Update search.tid

* Update shortcuts.multids

* Update ShortcutInfo.multids

* Update Misc.multids

* Update ShortcutInfo.multids

* Update search.tid
2020-10-27 09:03:34 +00:00
jeremy@jermolene.com
3153c588ec Disable autosave in the upgrade wizard
To address @pmario's suggestion here: https://github.com/Jermolene/TiddlyWiki5/issues/4879#issuecomment-704320381
2020-10-26 17:28:57 +00:00
jeremy@jermolene.com
f7f55e8eff Add support for username/password parameters for tm-login message 2020-10-25 16:33:44 +00:00
jeremy@jermolene.com
5cc1600072 Introduce post-render startup actions 2020-10-25 16:22:21 +00:00
saqimtiaz
1a91f81976
Update filters for single file to match changes to syncFilter (#4907)
* Update saverFilter to match new changes in syncFilter

* Update save-all.tid

* Update save-all-external-js.tid

* Update save-offline.tid
2020-10-25 15:57:35 +00:00
saqimtiaz
b9234fe238
Update syncFilter to allow excluding multiple storyLists (#4906) 2020-10-25 15:56:41 +00:00
Mario Pietsch
4877891980
Fix tiddler title alignment if no icon is acitve (#4859)
* add a new-line before the log text to increase readability of the test output

* make eslint, jslint happy

* it shouldn't be there

* fremove this file from my PRs

* add a new-line before the log text to increase readability of the test output

* make eslint, jslint happy

* it shouldn't be there

* fremove this file from my PRs

* add a new-line before the log text to increase readability of the test output

* make eslint, jslint happy

* it shouldn't be there

* fremove this file from my PRs

* add a new-line before the log text to increase readability of the test output

* make eslint, jslint happy

* it shouldn't be there

* fremove this file from my PRs

* add a new-line before the log text to increase readability of the test output

* make eslint, jslint happy

* it shouldn't be there

* fremove this file from my PRs

* add a new-line before the log text to increase readability of the test output

* make eslint, jslint happy

* it shouldn't be there

* fremove this file from my PRs

* add a new-line before the log text to increase readability of the test output

* make eslint, jslint happy

* it shouldn't be there

* fremove this file from my PRs

* add a new-line before the log text to increase readability of the test output

* make eslint, jslint happy

* it shouldn't be there

* fremove this file from my PRs

* don't show the span if no icons are active.

* title lineheight 1.3 needed for eg: gggggg
2020-10-23 19:39:03 +01:00
Simon Huber
c3a8cc7eb4
fix error in sidebarsegments / search (#4903) 2020-10-23 19:32:40 +01:00
jeremy@jermolene.com
707e9d8926 Exclude $:/StoryList from syncing
Fixes #4868
2020-10-23 16:27:17 +01:00
Simon Huber
84479bc403
Fix #4826 - Keyboard-driven-inputs clashes with customized search results. (#4875)
* Update search.tid

* Update DefaultSearchResultList.tid

* Update tabs.tid

* Update SearchResults.tid

* Update tabs.tid

* Update SearchResults.tid

* Update search.tid

* Update keyboard-driven-input.tid

* Update shortcuts.multids

* Update ShortcutInfo.multids

* Update Misc.multids

* Update keyboard-driven-input.tid

* Update search.tid

* Update Misc.multids
2020-10-23 15:58:34 +01:00
jeremy@jermolene.com
5af76c5ea1 Extend TOC macros to allow custom link targets 2020-10-17 13:44:15 +01:00
jeremy@jermolene.com
1446a1e44c Extend tm-scroll to accept CSS selector to identify the target 2020-10-14 15:59:27 +01:00
jeremy@jermolene.com
69c12618d9 Syncer: Allow syncadaptor to customise the login prompt 2020-10-14 12:41:51 +01:00
jeremy@jermolene.com
34a51d2e23 Typo in comment
Thanks @saqimtiaz
2020-10-08 17:21:31 +01:00
jeremy@jermolene.com
14a28b7779 Add "reduce" and "filter" operators 2020-10-06 19:20:03 +01:00
jeremy@jermolene.com
59f233cd46 Fix exporting tiddlers with double quoted titles
Fixes #4860
2020-09-28 11:31:33 +01:00
jeremy@jermolene.com
ae13a0fee1 Extend Macro Call Widget to support outputting raw text 2020-09-28 11:30:28 +01:00
jeremy@jermolene.com
543f9107b6 Don't override browser selection colours by default
Reverts some of #4590
2020-09-25 14:06:00 +01:00
Florian Kohrt
4cd6a24431
Mention <tiddler-filter> parameter of savelibrarytiddlers command (#4857) 2020-09-24 19:09:06 +01:00
Robin Munn
d5cf4112fa
Joining an empty list should return an empty list (#4853) 2020-09-24 18:37:51 +01:00
saqimtiaz
72c07a3f81
Format filter to create formatted date strings (#4785)
* asdate filter to create formatted date strings

* Added format filter operator
2020-09-24 18:35:10 +01:00
Robin Munn
31c9c23a18
Gitea API wants tokens, not HTTP basic auth (#4854) 2020-09-14 13:14:10 +01:00
Robin Munn
5202441769
Add suffix and parameter to trim operator (#4811)
* Add suffix and parameter to trim operator

Fixes #4809

* Unit tests for new trim operator parameters

* Mention trim operator in 5.1.23 release notes

* Address review comments

* Move regex escaping into utils.js trim functions

This way the trimPrefix and trimSuffix functions from utils.js are safe
to call without regex-escaping their parameters, which should make them
easier to use from other parts of the Javascript code.
2020-08-29 12:27:58 +01:00
jeremy@jermolene.com
8497e5b95d GitHub/Gitlab/Gitea savers: Handle empty paths correctly
Fixes #4656
2020-08-28 15:28:34 +01:00
Cameron Fischer
b86bbf3fc4
Compressing $set chains into one $vars (#4659) 2020-08-28 14:53:20 +01:00
saqimtiaz
48c6146ab6
Link widget: Include original event in tm-navigate (#4724) 2020-08-27 15:52:25 +01:00
ento
259b45065a
Fix server error when saving a new tiddler created by following a tiddler link (#4770)
* Initialize draft tiddler with empty text

Otherwise, when the tiddler has a meta file,
$tw.utils.saveTiddlerToFile will call fs.writeFile with the content
to write as `undefined`. Depending on the version of Node, this
results in the string "undefined" getting saved or a TypeError.

* Remove what seems to be a leftover debug log
2020-08-27 15:45:34 +01:00
Simon Huber
aa08210e44
Fix #4795 - PaletteManager showing wrong tooltip (#4796) 2020-08-27 15:40:39 +01:00
jeremy@jermolene.com
a2796d89ab Fix httpRequest() header handling
Header names are not case sensitive, so the old code failed if it was called with a "Content-Type" header
2020-08-17 18:44:36 +01:00
Robin Munn
c23eedd069
Fix incorrect base64 encoding of astral-plane text (#4813)
Most astral-plane text is emojis like U+1F4DA BOOKS (📚), but some
languages like Osage have their alphabet entirely in the supplementary
multilingual plane as well. For proper support of languages like Osage,
and newer emojis, the UTF-8 decode and encode functions need to properly
handle codepoints above U+FFFF, which are represented by a surrogate
pair in Javascript strings.
2020-08-17 17:33:46 +01:00
jeremy@jermolene.com
f74c49f393 Fix syncing issues with external JS template
Fixes #4808
2020-08-14 11:06:08 +01:00
Adithya Badidey
8cf458d3b3
Adding SolarizedDark Palette, updated SolarizedLight and one tiny UI fix (#4799)
* Fixed Overflow svg fill

When hovered, the svg should be the same colour as the text it comes alongside. This fixes that.

* Fixed the Solarized Palettes as per spec

- Added the Solarized Dark palette
- Remade the Solarized Light palette with the right contrast ratios as per Solarized Spec.

* Sidebar Selected Tab UI Change

Changed the selected tab border and foreground from pink to white(base01) because the pink was too distracting and not very readable.

* Fixed Hover css for plugin info listing

The css was not working so I fixed it.

* Fixed the UI for plugin info tiddler (among others)
2020-08-11 18:54:17 +01:00
John Duhamel
89c0c6157b
Add saver for Hyperdrive protocol used in Beaker 1.x (#4777) 2020-08-10 20:32:28 +01:00
Simon Huber
17e2b208e8
Fix #4794 - tc-type-selector-wrapper not containing tc-edit (#4798)
* Update type.tid

* Update base.tid
2020-08-10 09:25:14 +01:00
Simon Huber
bbdd12cffd
Add EditTabIndex config (tabindex = 1) (#4791) 2020-08-03 11:09:56 +01:00
saqimtiaz
dd79c096be
Fix #4786 (#4787)
* Fix #4786

Fix #4786

* Update header.js
2020-08-03 10:41:23 +01:00
Simon Huber
84b6a85293
Fix css selector for edit template new field (#4783) 2020-07-31 14:49:09 +01:00
ento
222821804e
Fix Entity widget not rendering its content without a refresh (#4776)
* Expose TEXT_NODE and ELEMENT_NODE constants

* Add failing test for initial rendering of entity widget

* Compute attributes when rendering
2020-07-31 08:25:15 +01:00
jeremy@jermolene.com
97d2af7ebd TiddlySpot Saver: Add link to control panel
Thanks @twmat

Fixes #4778
2020-07-30 19:14:53 +01:00
Diep Pham
a9d79a1a84
Fix authenticated-user-header is case sensitive in header authenticator (#4780)
From RFC 2616 - "Hypertext Transfer Protocol -- HTTP/1.1", Section 4.2, "Message Headers":

Each header field consists of a name followed by a colon (":") and the field value. Field names are case-insensitive.
2020-07-30 18:24:28 +01:00
Simon Huber
95e30138f0
Add modifier variable to linkcatcher actionstring (#4758)
* Add modifier variable to linkcatcher actionstring

* Update LinkCatcherWidget.tid
2020-07-15 12:27:14 +01:00
Simon Huber
484c9e986f
Fix #4755 - Indirect colours not shown in palette switcher (#4757)
* Fix #4755 - Indirect colours not shown in palette switcher

* Update currpalettepreview.tid

* Update currpalettepreview.tid
2020-07-15 12:23:13 +01:00
Simon Huber
00ff0d6fa0
Add modifier variable to button actionstring (#4671)
* Add modifier variable to button actionstring

* Update ButtonWidget.tid

* Update droppable.js

* Create getEventModifierKeyDescriptor method in keyboard.js

* Update droppable.js

* Update button.js
2020-07-14 17:04:06 +01:00
Simon Huber
0d2df34c58
Keyboard-driven dropdown inputs (#4725)
* Add shortcut descriptions to Misc.multids

* Update framed.js

* Update simple.js

* Add inputActions and refreshTitle to factory.js

* Add inputActions and refreshTitle to edit.js

* Update DefaultSearchResultList.tid

* Update search.tid

* Update ShortcutInfo.multids

* Update shortcuts.multids

* Create keyboard-driven-input.tid

* Update tag-picker.tid

* Create keyboard-driven-input_Macro.tid

* Update EditTextWidget.tid

* Update EditWidget.tid

* Update engine.js

* Update base.tid

* Use primaryListFilter, secondaryListFilter, primaryList and secondaryList

* Update tag-picker.tid

* Update search.tid

* Update DefaultSearchResultList.tid

* Update keyboard-driven-input_Macro.tid

* Fix typo udpate -> update

* Update framed.js
2020-07-13 17:42:55 +01:00
jeremy@jermolene.com
bd2cf5c464 Extend the element widget with a hook to intercept DOM node creation
The element widget is used to render HTML elements in wikitext.
2020-07-02 13:13:55 +01:00
saqimtiaz
35a842ade6
EditWidget: Pass attributes from parseTreeNode to child widgets (#4740) 2020-06-27 12:33:14 +01:00
saqimtiaz
d46872c061
Extend tm-import-tiddlers message (#4741)
* Allow tm-import-tiddlers event to override tv-auto-open-on-import

* Add autoOpenOnImport attribute to dropzone

* Updated DropZone docs

* Updated dropzone to support importTitle attribute

* Updated navigator to support importTitle attribute on tm-import-tiddlers

* Update dropzone docs for importTitle attribute

* Updated docs for tm-import-tiddlers

* Fixed formatting
2020-06-27 12:32:11 +01:00
saqimtiaz
7911007973
Revised: toggling relink in tm-rename-tiddler (#4723)
* switch boolean logic in new parameters

Use renameinTags and renameInLists instead of dontRenameInTags and dontRenameInLists respectively. This avoids users having to think through double negatives, as well as corresponds better to the setting in $:/config/RelinkOnRename

* Updated docs for revised parameters for tm-new-tiddler
2020-06-19 18:20:25 +01:00
saqimtiaz
24ef51df01
Revert "Allow toggling relink in tm-rename-tiddler (#4719)" (#4722)
This reverts commit a689f31978.
2020-06-19 18:05:08 +01:00
saqimtiaz
a689f31978
Allow toggling relink in tm-rename-tiddler (#4719)
* Allow toggling relink in tm-rename-tiddler

* Updated docs for tm-rename-tiddler
2020-06-19 11:07:03 +01:00
jeremy@jermolene.com
f760a2fa79 Add old tiddler to th-saving-tiddler hook
Addresses https://github.com/Jermolene/TiddlyWiki5/pull/4434#issuecomment-645939182
2020-06-18 11:49:59 +01:00
Simon Huber
881aed879b
Fix #4591: Use text field instead of tags field for $:/config/NewJournal/Tags ... (#4600)
* Update Basics.tid

* Update new-tiddler.tid

* Update new-journal.tid

* Update new-image.tid

* Update new-here.tid

* Update new-journal-here.tid

* Update NewJournalTags.tid

* Update NewJournalTags.tid
2020-06-14 09:40:48 +01:00
saqimtiaz
38e329edad
Fixes use of stateTitle instead of state resulting in artifacts during import (#4711)
* Fixes use of stateTitle instead of state

* Fixed bug with merging
2020-06-13 09:16:33 +01:00
Simon Huber
d832cb93ce
Fix (again) error in scrollable.js (#4705) 2020-06-11 13:54:59 +01:00
Simon Huber
bbf20f8955
Scrollable widget: Fix error in variable declaration (#4704) 2020-06-11 12:33:18 +01:00
Simon Huber
17a36726fa
Fields EditTemplate: Correct positioning of dropdown (#4687)
* Add wrapper div to fields EditTemplate

* Add classes

* remove obsolete span

* Update base.tid
2020-06-11 12:18:31 +01:00
Simon Huber
482f7a92ae
Type EditTemplate: show dropdown at correct position ... (#4686)
* Refactor type edittemplate for correct positioning...

... of type dropdown

* Refactor classes
2020-06-11 12:14:09 +01:00
Simon Huber
b191ee9210
Fix #4673 - Adding tags in $:/Manager does not work (#4674)
* Add fieldmangler to Manager Tags-Sidebar

This makes the tm-add-tag messages in the tag-picker work

* Add actions parameter back to tag-picker macro

* Add div so that tag-dropdown shows below input field

* Add missing tc-btn-dropdown class to dropdown button ...

... for consistency with dropdown buttons in EditTemplate

* Update tag-picker.tid
2020-06-11 12:12:45 +01:00
saqimtiaz
25f8b3f903
Check for DOM node existence before removing class. (#4696)
Can cause issues if dragstart and dragend actions trigger a refresh.
2020-06-11 12:11:56 +01:00
Simon Huber
5b9dbf7b95
Use srcWindow in scrollable widget (#4677) 2020-06-11 11:49:32 +01:00
Simon Huber
e59f606566
Cancel popups when clicking within an editor (#4658)
* Add cancelPopups attribute to edit widget

* Add cancelPopups attribute to factory.js

* Cancel popups in editor/simple.js

* Cancel popups on focus in engines/framed.js

* Cancel popups on focus in CodeMirror engine

* Add cancelPopups="yes" to tag-picker

* Add cancelPopups="yes" to sidebar search

* Add cancelPopups="yes" to editor

* Add cancelPopups="yes" to fields EditTemplate

* Update body.tid

* Add cancelPopups="yes" to title EditTemplate

* Add cancelPopups="yes" to type EditTemplate

* Update EditTextWidget.tid

* Update EditWidget.tid

* Add cancelPopups="yes" to menubar plugin search

* Update tag-picker.tid

* Update tags.tid
2020-06-11 11:41:35 +01:00
Arlen22
d32fb6f900
Allow setting boot, wiki, and pathPrefix for each request (#4649)
* Add pathPrefix to state, and options to request handler

* use ternary operator instead of default empty object

* Fix styling issues

* Update server.js

* Add boot to server and filesystem adapter
2020-06-11 11:36:41 +01:00
jeremy@jermolene.com
41a7d98e17 Merge branch 'tiddlywiki-com' 2020-05-16 20:13:38 +01:00
Simon Huber
99a07f80f1
Add missing Linkify ShortcutInfo (#4653) 2020-05-14 14:37:17 +01:00
Simon Huber
5d91c27980
Update rendertiddlers.tid (#4635) 2020-05-14 14:31:32 +01:00
Bimba Laszlo
6570561d4e
The !has[tags] filter didn't work because tags field is an array (#4643)
* The `!has[tags]` filter didn't work because "tags" is an array

The negated `has` filter only considered empty strings, but not empty
arrays (such as the `tags` field).

* Add tests for `has` filter operator with array-like fields (tags, list)
2020-05-14 13:57:12 +01:00
Bimba Laszlo
9c22537b4e
Fix the class attribute of Droppable widget (#4647)
Even though we passed the `class` attribute, it did not take it into
account. For example try to render this:

  <$droppable class="custom-css-class">
    ... content ...
  </$droppable>

Before applying this patch:

  <span class=" tc-droppable">
    ... content ...
  </span>

After applying:

  <span class="custom-css-class tc-droppable">
    ... content ...
  </span>
2020-05-14 13:55:33 +01:00
Jonas Passerini
84a4784dee
Add Transcludify ShortcutInfo (#4651)
* Signing the CLA

* Add Transcludify ShortcutInfo
2020-05-14 12:19:16 +01:00
jeremy@jermolene.com
5c0d91c510 Fix title of slugify.js filter module 2020-05-14 07:53:30 +01:00
jeremy@jermolene.com
bf6735420d Fix SVG favicons 2020-05-10 11:58:40 +01:00
jeremy@jermolene.com
4966f6ab62 Add slugify and duplicateslugs operators
Fixes #3379
2020-05-09 15:54:44 +01:00
jeremy@jermolene.com
33d973fb91 Add originating widget to event objects 2020-05-09 15:53:38 +01:00
Arlen22
81f07cdf85
Use this.wiki where applicable (#4601)
* Use state.wiki

* use local wiki where available

* fix a couple this vs self cases
2020-05-06 11:27:50 +01:00
jeremy@jermolene.com
48dfadd85b InfoMechanism: Add $:/info/startup-timestamp 2020-05-06 11:05:54 +01:00
jeremy@jermolene.com
13b8281f6b $tw.utils.copyDirectory: Ensure directories don't overlap 2020-04-27 15:00:06 +01:00
jeremy@jermolene.com
ad575efdcc Update sortsub to evaluate the subfilter for each item in the list
See the discussion here https://groups.google.com/d/msg/tiddlywiki/BqUFQ3v-fZw/U0F04CFFBQAJ
2020-04-25 15:22:24 +01:00
jeremy@jermolene.com
619c0752bd Add new sortsub operator 2020-04-25 11:26:19 +01:00
Cameron Fischer
2385bd978f
Fix importvariables crash (#4593)
* Fixed issue: multi nonMacro imports broke everything

* Fixed issue: dead variables in import might linger
2020-04-23 09:10:52 +01:00
jeremy@jermolene.com
2a8f7a9c50 Add support for _canonical_uri field of $:/favicon.ico 2020-04-22 16:40:02 +01:00
jeremy@jermolene.com
5f98e7d7b3 Ensure $tw.utils.hasClass/addClass/removeClass work with SVG elements
These docs make clear that .className isn't recommended for SVG elements:

https://developer.mozilla.org/en-US/docs/Web/API/Element/className#Notes
2020-04-22 15:32:20 +01:00
jeremy@jermolene.com
77a929faa3 ActionPopup widget: Add ability to cancel all popups 2020-04-21 22:19:03 +01:00
jeremy@jermolene.com
c86a621d5d BrowseWidget: Add "accepts" attribute
And add docs for the 'message' and 'param' attributes
2020-04-21 22:18:34 +01:00
jeremy@jermolene.com
d6ee700bca Fix $tw.utils.getSubdirectories() 2020-04-21 21:21:38 +01:00
Simon Huber
39d532a4a0
Revert "Make input fields dismiss their popups when the ... (#4579)" (#4586)
This reverts commit 4efcad46f3.
2020-04-20 19:26:54 +01:00
Simon Huber
86d7564661
Update gruvbox dark for better readability of ... (#4585)
... toolbar buttons
2020-04-20 17:13:00 +01:00
Simon Huber
4efcad46f3
Make input fields dismiss their popups when the ... (#4579)
* Make input fields dismiss their popups when the ...

... fields loose focus (`blur`)

* Update simple.js
2020-04-20 15:49:30 +01:00
jeremy@jermolene.com
1546a4a189 Client-server: Add message about disabled plugin library
Fixes #4570
2020-04-20 13:28:02 +01:00
jeremy@jermolene.com
2649d2f7dc Syncer: Fix typos
Fixes a bug introduced in #4584
2020-04-20 13:19:27 +01:00
idotobi
154e886873
Fix Comment in Webserver API route tidlers.json (#4557)
This commit fixes the the comment in the route
`recipes/default/tiddlers.json` which was inconsistent with the actually
used regex. Furthermore, the 403 response was adjusted to also agree
with the the new comment and the regex.

Co-authored-by: tobidot <post@tobidot.net>
2020-04-20 13:07:06 +01:00
jeremy@jermolene.com
5688670da6 makelibrary command: Guard against invalid directories 2020-04-20 12:58:27 +01:00
jeremy@jermolene.com
678e25f510 makelibrary command should skip non-directories
Fixes #4583
2020-04-20 11:47:54 +01:00
jeremy@jermolene.com
15d7255728 Syncer: Should not call syncadaptor for missing tiddlers
Fixes #4580
2020-04-20 11:35:11 +01:00
Daniel Rodríguez Rivero
4ea79cb0c3
fix(syncer): restore tiddlerInfo param to saveTiddler (#4584)
This was added on a159b5baf3 and lost in #4373.
Will be a good idea to introduce tests against this kind of changes
2020-04-20 11:17:27 +01:00
jeremy@jermolene.com
e71a27ac2d Fix link widget to work within SVG elements 2020-04-19 12:57:56 +01:00
Jeremy Ruston
00686fc002 Preparing for v5.1.23-prerelease 2020-04-15 16:23:19 +01:00
Mario Pietsch
22802b4be8
Action create tiddler improvements (#4436)
* add a new-line before the log text to increase readability of the test output

* make eslint, jslint happy

* add $template and $overwrite parameter

* documentation for new parameters + 4 new examples

* remove unwanted files
2020-04-15 15:51:21 +01:00
Jeremy Ruston
7cbe766bde Utils: ParseInt should specify a radix
Thanks @pmario
2020-04-15 15:28:03 +01:00
Jeremy Ruston
f21d013241 jsontiddlers macro: parse "spaces" parameter as integer 2020-04-15 15:27:53 +01:00
Mario Pietsch
de5b0062b5
Add new parameters to fields-widget and fields-operator. (#4433)
* add a new-line before the log text to increase readability of the test output

* make eslint, jslint happy

* extend fields-widget with include/exclude/sort/reverse and fields-filter with include and exclude params plus DOCS

* remove new-line

* remove eslint settings

* restore old eslint settings

* remove typo
2020-04-15 12:36:48 +01:00
Mario Pietsch
2b6c87fb4b
Remove unwanted whitespace from sidebar links (#4552)
* add a new-line before the log text to increase readability of the test output

* make eslint, jslint happy

* it shouldn't be there

* fremove this file from my PRs

* fix 4532. Links should not add unwanted whitespace, since this causes problems with CSS styling

* remove whitespace from tiddler title and add a little bit of margin-right to the tiddler icon.

* use default parameters for link handling, which results in less code

* introduce tc-viewswitcher class to be able to style icon distance to text
2020-04-15 12:35:35 +01:00
Jeremy Ruston
2f3a95a0b8 Plugin Chooser: Display libraries as separate tabs
Suggested by @kookma
2020-04-15 10:20:17 +01:00
Cameron Fischer
65347ae858
Fixed join filter operator to never returns null (#4396)
If the operator were passed an empty list, it would return null
which could cause some proceeding operators to crash.
2020-04-14 17:49:38 +01:00
Cameron Fischer
43fdb553b7
Reduced indexOf calls in wiki.sortByList (#4275) (#4397)
Examined the tests in test-tag. They already cover all the use cases
I could think of.
2020-04-14 17:49:10 +01:00
Joshua Fontany
69c8058b72
Add has:index (#4540)
* has:index

* has:index

* has:index docs

* has op examples

* has op examples

* operator macros typo missing </div>

* possible mistake
2020-04-14 16:52:56 +01:00
Jeremy Ruston
0836fb7184 Makelibrary.js: Minor refactoring 2020-04-14 12:08:15 +01:00
jed
4146a04a9e
Fix makelibrary.js to use enviroment variable paths (#4559)
This makes makelibrary.js use environment variables to find paths for plugins, themes and languages instead of just using the paths hardcoded in boot.js
2020-04-14 12:03:12 +01:00
Jeremy Ruston
84eaee8210 Control Panel Plugin Listing: Fallback to last component of title if name field is missing 2020-04-14 11:52:01 +01:00
Jeremy Ruston
4bbc58dd24 Plugin Chooser: Ensure official plugin library is shown first 2020-04-13 11:45:06 +01:00
Jeremy Ruston
4529123777 Plugin Chooser: Colour of update all button should match individual update buttons
Fixes the final issue mentioned by @kookma at https://github.com/Jermolene/TiddlyWiki5/issues/4486#issuecomment-612841838
2020-04-13 11:38:53 +01:00
Jeremy Ruston
0d0698ea6e Plugin Chooser: Don't display the "already installed" message twice
Fixing the first issue here https://github.com/Jermolene/TiddlyWiki5/issues/4486#issuecomment-612841838 by @kookma
2020-04-13 11:35:52 +01:00
Jeremy Ruston
63dee16611 Plugin Chooser: Use separate tab state for each plugin library
Fixing the third issue at https://github.com/Jermolene/TiddlyWiki5/issues/4486#issuecomment-612841838 from @kookma
2020-04-13 11:28:24 +01:00
Jeremy Ruston
dc98432fa0 Plugin Chooser: Use existing template for updates tab 2020-04-13 11:11:16 +01:00
Jeremy Ruston
86296b67aa Plugin Chooser: Distinguish between install, reinstall, update and downgrade 2020-04-13 10:04:14 +01:00
Jeremy Ruston
245dab0c8c Plugin Chooser: Include currently installed version 2020-04-13 10:03:24 +01:00
Jeremy Ruston
7b53f5724c Add new compare filter operator
Fixes #4554
2020-04-13 10:03:01 +01:00
Jeremy Ruston
308ac8c5b0 AddPlugins: Add new "updates" tab 2020-04-09 11:07:13 +01:00
Jeremy Ruston
bc8859b550 AddPlugins: Add a clearer prompt for plugins that have subplugins 2020-04-09 11:06:54 +01:00
Jeremy Ruston
bdc5ac592f Fix count widget to return "0" for an empty filter string instead of undefined 2020-04-09 11:04:50 +01:00
Nils-Hero Lindemann
322c37d693
Let chained > blockquotes generate valid HTML (#4332)
* Replace "p" with "div" in itemTag

'>> text' will now be valid html.

* Make the new div's behave like p's
2020-04-07 20:39:13 +01:00
Jeremy Ruston
59fd557067 Minor tweaks to plugin library listings
* Adds a name to the core plugin
* Make plugin listings consistently show "name: description"
* Make plugin listings consistently sort by title (thus grouping publishers)
* Add a missing plugin name

See discussion here: https://github.com/Jermolene/TiddlyWiki5/pull/4508#issuecomment-609671970
2020-04-06 10:15:18 +01:00
saqimtiaz
21565f635e
Fix range widget for IE10/11 (#4534)
As detailed in #4519 the range widget currently does not save its value to the state tiddler on IE 10/11 as they do not support the input event, but rather the change event is fired instead of the input event. This has patch has been tested in IE11 and should work in IE10 as well.

Note that on Chrome and Firefox, the change event will fire only once after the user stops dragging the range slider (In addition the input event). However this does lead to an extra refresh as the handleInputEvent method already checks to see if the current value of the slider is different from the saved value before saving to the store.
2020-04-03 13:07:55 +01:00
Jeremy Ruston
cf46b6b0ff Add "class" attribute to dropzone widget 2020-04-03 10:33:39 +01:00
Simon Huber
bbdebb27ce
Add TiddlyDesktop's wikilist colours to Gruvbox palette (#4521) 2020-04-02 17:29:24 +01:00
Jeremy Ruston
1154372a7b Update syncer to distinguish connection errors from other errors
We can automatically remove connection errors when things resume working
2020-03-31 10:47:17 +01:00
Jeremy Ruston
b95723a022
Fix syncer to handler errors properly (#4373)
* First commit

* Add throttling of saves

Now we refuse to save a tiddler more often than once per second.

* Wait for a timeout before trying again after an error

* Modest optimisations of isDirty() method

* Synchronise system tiddlers and deletions from the server

Fixes two long-standing issues:

* Changes to system tiddlers are not synchronised from the server to the browser
* Deletions of tiddlers on the server are not propagated to browser clients

* Make sure we update the dirty status even if there isn't a task to perform

* Replace save-wiki button with popup sync menu

* Remove the "Server" control panel tab

We don't need it with the enhanced sync dropdown

* Add indentation to the save-wiki button

* Fix spacing in dropdown menu items

* Switch between cloud icons according to dirty status

* Add a menu item to copy syncer logs to the clipboard

* Improve animated icon

* Remove indentation from save-wiki button

@pmario the annoying thing is that using `\trim whitespace` trims significant whitespace too, so it means we have to use <$text text=" "/> when we need a space that won't be trimmed. For the moment, I've removed the indentation but will keep thinking about it.

* Further icon, UI and copy text tweaks

Move the icons and styles from the core into the TiddlyWeb plugin

* Clean up PR diff

* Tweak animation durations

* Break the actions from the syncer dropdown into separate tiddlers

@pmario I think this makes things a bit easier to follow

* Refactor syncadaptor creation and logging

The goal is for the syncadaptor to be able to log to the same logger as the syncer, so that the "copy syncer logs to clipboard" data is more useful.

* Don't transition the dirty indicator container colour, just the SVG's colour

* Only trigger a sync for changes to tiddlers we're interested in

Otherwise it is triggered by the creation of the alert tiddlers used to display errors.

* Restore deleting local tiddlers removed from the server

(I had commented it out for some testing and accidentally commited it).

* Guard against missing adaptor info

* We still need to trigger a timeout when there was no task to process

* Avoid repeatedly polling for changes

Instead we only trigger a timeout call at if there is a pending task (ie a tiddler that has changed but isn't yet old enough to save).

* Lazy loading: include skinny versions of lazily loaded tiddlers in the index.html

* Introduce _is_skinny field for indicating that a tiddler is subject to lazy loading

* Remove savetrail plugin from prerelease

It doesn't yet work with the new syncer

* Make the savetrail plugin work again

* Clear outstanding alerts when synchronisation is restored

* Logger: only remove alerts from the same component

Missed off 9f5c0de07

* Make the saving throttle interval configurable (#4385)

After switching Bob to use the core syncer the throttle interval makes saving feel very sluggish compared to the message queue setup that I had before.
The editing lock that I use to prevent conflicts with multiple users doesn't go away until the save is completed, and with the 1 second delay it means that if you edit a tiddler and save it than you have to wait one second before you can edit it again.

* Tweaks to appearance of alerts

* Exclude temp tiddlers from offline snapshots

Otherwise alerts will persist

* Tweak appearance of status line in dropdown

* Update release note

* Web server: Don't include full path in error messages

Fixes #3724

* In change event handler check for deletions

* Disable the official plugin library when the tiddlyweb plugin is loaded

* Hide error details from browser for /files/ route

See https://github.com/Jermolene/TiddlyWiki5/issues/3724#issuecomment-565702492 -- thanks @pmario

* Revert all the changes to the relationship between the syncer and the syncadaptor

Previously we had some major rearrangements to make it possible for the syncadaptor to route it's logging to the logger used by the syncer. The motivation is so that the "copy logs to clipboard" button is more useful.

On reflection, changing the interface this drastically is undesirable from a backwards compatibility perspective, so I'm going to investigate other ways to achieve the logger sharing

* Make the tiddlyweb adaptor use the syncer's logger

So that both are availavble when copying the syncer logs to the clipboard

* Update release note

* Support setting port=0 to get an OS assigned port

Quite useful

* Update code comment

* UI: Use "Get latest changes from server" instead of "Refresh"

* Add getUpdatedTiddlers() method to syncadaptor API

See https://github.com/Jermolene/TiddlyWiki5/pull/4373#issuecomment-573579495

* Refactor revision handling within the syncer

Thanks @pmario

* Fix typo in tiddlywebadaptor

* Improve presentation of errors

See https://github.com/Jermolene/TiddlyWiki5/pull/4373#issuecomment-573695267

* Add docs for getTiddlerRevision()

* Remove unused error animation

* Update comment for GET /recipes/default/tiddlers/tiddlers.json

* Optimise SVG cloud image

* Add optional list of allowed filters for get all tiddlers route

An attempt to address @Arlen22's concern here:

https://github.com/Jermolene/TiddlyWiki5/pull/4373#pullrequestreview-342146190

* Fix network error alert text translatability

* Fix error code and logging for GET /recipes/default/tiddlers/tiddlers.json

Thanks @Arlen22

* Flip GET /recipes/default/tiddlers/tiddlers.json allowed filter handling to be secure by default

* Validate updates received from getUpdatedTiddlers()

* Add syncer method to force loading of a tiddler from the server

* Remove the release note update to remove the merge conflict

* Fix crash when there's no config section in the tiddlywiki.info file

* Use config tiddler title to check filter query (merge into fix-syncer) (#4478)

* Use config tiddler title to check filter query

* Create config-tiddlers-filter.tid

* Add config switch to enable all filters on GET /recipes/default/tiddlers/tiddlers.json

And update docs

* Fix bug when deleting a tiddler with a shadow

Reported by @kookma at https://github.com/Jermolene/TiddlyWiki5/pull/4373#issuecomment-604027528

Co-authored-by: jed <inmysocks@fastmail.com>
Co-authored-by: Arlen22 <arlenbee@gmail.com>
2020-03-30 15:24:05 +01:00
Jeremy Ruston
091bcfce7d Fix the datauri macro to work with _canonical_uri tiddlers 2020-03-30 10:55:37 +01:00
Joshua Fontany
6f4daa70e1
GruvBoxDark palette contrast tweaks (#4522) 2020-03-29 13:44:09 +01:00
Rob Hoelz
ae04a425c0
Add backlinks indexer (#4421)
* Add tests for backlinks

* Add backlinks indexer

* Use backlinks indexer in getTiddlerBacklinks if available

* Extract link extraction into its own method

This way we can provide an arbitrary parse tree, rather than just a
title, which will allow us to compare lists of outgoing links between
versions of a single tiddler

* Use new extractLinks method in backlinks indexer

...rather than copy-pasting the implementation

* Remove ES6-isms

TiddlyWiki needs to work with browsers that only support ES5
2020-03-26 13:15:02 +00:00
Simon Huber
4232b402ab
Update Vanilla.tid (#4515) 2020-03-20 18:31:57 +00:00
Simon Huber
10ab83940a
Update Nord Palette for better readability (#4517) 2020-03-20 12:47:48 +00:00
Jeremy Ruston
cb52d709c2 Improve ability to disable drag and drop
Now we disable the draggable list macros too.
2020-03-20 10:46:17 +00:00
Cameron Fischer
561662782e
Fixes issue with #4504 and importvariable copying (#4518)
* Fixes issue with #4504 and importvariable copying

ImportVariables widget was using $tw.utils.extend to copy the
variables from temporary set widgets into itself. However,
$tw.utils.extend does NOT behave like Object.assign. It not only
copies all self-owned variables over, but also all variables
in that object's prototype chain. This led to some redundant copying,
and a problem where some variables might show up more than once
(like transclusion).

Fixed now. importvariables widget does its own copying, since it
can't rely on $tw.utils.extend to do the right job, and it can't
count on Object.assign to be there.

* Added test to prevent reversion of #4504

* Slight corrections to new importvariables test
2020-03-19 20:32:51 +00:00
Simon Huber
c6b109fbde
Update GruvBoxDark.tid (#4510)
better readability, was wrong the first time
2020-03-16 09:12:35 +00:00
Jeremy Ruston
bc687e5783 Add a hidden setting for disabling the page dropzone 2020-03-15 14:46:33 +00:00
Jeremy Ruston
a6f6db40d9 Revert "Fix test for needing to update text editor DOM"
This reverts commit a65ec87c53.
2020-03-15 14:23:10 +00:00
Simon Huber
f3ac255855
Update GruvBoxDark.tid (#4501) 2020-03-14 13:10:39 +00:00
Matthias Bilger
62f8c9353e
Use CamelCase for Gitea (#4496) 2020-03-13 17:36:05 +00:00
saqimtiaz
ca6dd93214
Add support for a custom class to modal wrapper (#4490)
* Add support for a custom class to modal wrapper

As per https://github.com/Jermolene/TiddlyWiki5/issues/4485 add support for a custom class to modal wrapper, by means of a field in the modal tiddler. The class is added to the modal wrapper in addition to the default class, allowing for custom styling via css of any part of the modal.

* Remove redundant check for tiddler.
2020-03-12 16:58:14 +00:00
Simon Huber
195b3b0209
Add "Gruvbox Dark" color palette (#4494)
* Add "Gruvbox Dark" color palette

this adds the "gruvbox dark" color palette (https://github.com/morhetz/gruvbox) which is also available for highlight.js and codemirror

* add "credits" field

* change "credits" field to "license" field
2020-03-12 15:54:23 +00:00
Matthias Bilger
52a9f928ae
Added gitea saver (#4491)
* added gitea saver

* create nonexistent file
2020-03-12 15:53:55 +00:00
Simon Huber
0f7e365450
Add color descriptions for menubar-background and ... (#4481)
menubar-foreground to PaletteColours.multids
2020-03-09 21:08:48 +00:00
Simon Huber
8b5f38c53e
Add menubar-background and menubar-foreground to Nord palette (#4482)
Nord palette
2020-03-09 21:08:22 +00:00
saqimtiaz
8cd1dc36c1
Fix suspected typo that impacts refresh handling (#4464) 2020-03-09 21:07:34 +00:00
Jeremy Ruston
ae9ce4f01c ViewTemplate: Add tc-tiddler-overridden-shadow class 2020-03-09 20:31:42 +00:00
Jeremy Ruston
665b63ec38 Fix lack of refresh when button widget actions attribute changes 2020-03-08 17:11:21 +00:00
Jeremy Ruston
a65ec87c53 Fix test for needing to update text editor DOM
Checking the active element is clumsy, and interferes with debugging. Checking the content is clearer, and avoids the Firefox bug.

Fixes #4472
2020-03-07 14:00:46 +00:00
Jeremy Ruston
6091b01386 Add hidden setting for default tiddler icon 2020-03-06 14:52:37 +00:00
Jeremy Ruston
24d2804799 Add action-popup widget
Fixes #4185
2020-03-03 12:03:32 +00:00
Jeremy Ruston
6cdffc4eae Fix broken filters introduced in b179a6011
The mistake arose because browser local storage was enabled
2020-02-29 15:56:22 +00:00
Jeremy Ruston
b179a60111 Tweak some system buttons to look better in the new menu bar
The reveal widget leaves behind an unnecessary span, which breaks the CSS used to target the button.
2020-02-28 14:34:06 +00:00
Jeremy Ruston
4afde5a722 Enhance colour macro with a fallback to a configuration tiddler 2020-02-28 14:31:02 +00:00
saqimtiaz
04c28ba5f2
Add tabindex support to button widgets (#4442)
This pull request adds support for specifying a tabindex for button widgets following the same pattern as the LinkWidget.
2020-02-05 12:14:38 +00:00
Jeremy Ruston
3df1f9c9d0 Extend jsontiddlers macro to generate unformatted output 2020-02-04 13:57:24 +00:00
Lee Sheng Long
96eca32b11
Add download button/link to binary tiddler warning banners in view and edit mode (#4423) 2020-01-31 09:13:28 +00:00
Jeremy Ruston
3eacdc19fd Ensure GitHub and GitLab savers use a default path of / if empty
The empty string gets a slash appended further down this method.
2020-01-30 17:02:14 +00:00
Simon Huber
5d0e4732b2
Add "none" as an option in the icon dropdown in tag manager (#4361)
* add no-icon option to tagmanager and add ...

... whitespace trims

* Update Misc.multids
2020-01-30 15:52:33 +00:00
Simon Huber
1bcb381570
Add optional storyview to list-tagged-draggable macro (#4329)
* add optional storyview to list-tagged-draggable macro

* Update list.tid
2020-01-30 15:43:02 +00:00
Simon Huber
69bcb1609a
Add whitespace trims to tag-picker macro (#4360) 2020-01-30 15:41:21 +00:00
Simon Huber
18151cc193
Make "type" input look consistent with "fields" input (#4358)
* add class tc-edit-texteditor to type field, trim ...

... whitespace, make look consistent

* define width 20% for type input field

* add second nbsp; for consistency with type input
2020-01-30 15:39:38 +00:00
Cameron Fischer
aa817f66d2
Changed importVariable to store its own variables (#4108)
* Changed importVariable to store its ownvariables

Before, importVariables was creating a setWidget for every single variable it would find in its tiddlers, and it would create a long-ass call tree. Now, instead, it just accumulates the variables in itself.

* Can't use Object.assign

Learned the hardway while working on tw5-relink that Object.assign
doesn't exist in IE11. Using $tw.utils.extend instead.

* Retaining setWidget transclusion flexibility

* One more test to verify mixing sets and macros
2020-01-30 12:53:26 +00:00
Jeremy Ruston
29461403ed Fix bug with navigating via location hash
Introduced in 8159c4a865, the problem was that it is actually valid for storyTitle and/or historyTitle to be falsey in the Story constructor.
2020-01-27 17:59:13 +00:00
Jeremy Ruston
7795ed9230 Fix stamp dropdown not transcluding caption field 2020-01-15 20:29:13 +00:00
Simon Huber
f59d044a8c Replace "&times" with close-button in keyboard-shortcuts (#4406)
this PR replaces the `&times` in the keyboard-shortcuts dropdown with the `$:/core/images/close-button`
2020-01-05 13:13:39 +00:00
Jeremy Ruston
e3835c64da Restore whitespace for page control buttons
Even with whitespace trim, we need a single space between the icon and text
2020-01-04 16:44:33 +00:00
Stefan Krüger
1ed884cef4 Add support for file type webm & ogg theora (#4404) 2020-01-04 11:27:13 +00:00
Simon Huber
75ba862a7e Fix "remove" tooltip in keyboard shortcuts (#4405)
this PR just fixes the tooltip of the small "remove" button in the keyboard-shortcut dropdown
2020-01-04 11:25:43 +00:00
Jeremy Ruston
ae3ca9bccd It's 2020! 2020-01-03 11:34:26 +00:00
Jeremy Ruston
5a5c967a39 Add support for $:/tags/Macro/View macros that are only visible within view templates 2020-01-03 10:40:11 +00:00
Jeremy Ruston
136dbf1a60 Fix bug with importvariables and empty set widgets
A self-closing set widget doesn't have a "children" property.
2020-01-03 10:39:37 +00:00
Jeremy Ruston
144ec28552 Update class settings in edit template to match view template
@pmario this adds the tc-tagged- classes to the edit template, do you think that's useful?
2019-12-17 12:01:59 +00:00
Jeremy Ruston
015306dfc9 Remove extraneous paths from line-width and list icons
Fixes #4369 and #4368
2019-11-25 12:15:24 +00:00
Jeremy Ruston
18f5333e01 Optimised SVG icons 2019-11-22 12:21:54 +00:00
Jeremy Ruston
668ca00a88 Avoid setting an explicit colour in the new-journal-button icon
This change means that the colour for the date on the new journal button icon will change according to the current colour palette, and simplifies things for #4379
2019-11-22 12:08:53 +00:00
Jeremy Ruston
174a36cda6 Make the single window template compatible with the page template
The tv-* variables were missing, making toolbar buttons appear incorrectly. There was also no tc-page-container class.

Fixes #4372
2019-11-20 18:01:06 +00:00
Jeremy Ruston
54fc932740 Fix wiki referenced by navigator widget's rename tiddler handler 2019-11-20 17:38:59 +00:00
Jeremy Ruston
a65cfe98d5 Slight optimisation of $tw.utils.addClass() 2019-11-20 17:38:28 +00:00
donmor
7b66df688a Refactor andtidwiki.js (The saver for Android apps including AndTidWiki, Tiddloid and Tiddloid Lite) (#4276)
* Create tiddloid.js

* Update andtidwiki.js

* Delete tiddloid.js

* Update andtidwiki.js

* Update andtidwiki.js

* Update andtidwiki.js

* Update andtidwiki.js

* Update andtidwiki.js

* Update andtidwiki.js
2019-11-20 09:45:42 +00:00
Jeremy Ruston
8f3da69f81 Correct fix for bug with millisecond 0XXX date format
Milliseconds need 3 digits, not 4...
2019-11-18 13:24:47 +00:00
Jeremy Ruston
cd8ab13b55 Fix bug with millisecond 0XXX date format 2019-11-18 13:22:10 +00:00
Jeremy Ruston
e4eaae14fa Ensure splash screen isn't shown when JS is disabled 2019-11-14 11:00:07 +00:00
Jeremy Ruston
afb7435a88 Remove "hack-to-give-us-something-to-compare-against"
It looked messy in the control panel listing.
2019-11-14 09:23:17 +00:00
Mario Pietsch
2deed528bc Remove &nbsp from tag pill in edit mode (#4366)
* remove &nbsp from tag pill in edit mode

PR: fix missing space between edittemplate tags #3585 introduced an unbreakable space ...

The `&nbsp` isn't needed and **causes problems**, if users copy&paste the tag text, because the "new" tag in the text input field now contains an space in front of the tag. This space invalidates the tag, so it doesn't function anymore. 

see [comment in GG](https://groups.google.com/d/msg/tiddlywiki/RQEyqPQIZSM/uaU7lgJJAAAJ) .. I also had a problem like this some time ago, which costed me several hours of debugging.

* Update base.tid

* Update tag.tid
2019-11-07 12:39:14 +00:00
Jeremy Ruston
bfbd886a8b Add "index" attribute to range widget 2019-11-04 18:56:22 +00:00
Jeremy Ruston
e84c422e50 Range widget: fix refreshing
The range widget wasn't refreshing correctly when the underlying tiddler value changed
2019-11-02 09:31:15 +00:00
Jeremy Ruston
43d18e74d5 Syncer: add hidden setting for disabling lazy loading 2019-10-25 10:02:57 +01:00
Nils-Hero Lindemann
e114fed3f9 Replace div with span in colour picker (#4333) 2019-10-20 18:22:22 +01:00
Simon Huber
793d84bcb1 Fix typos in tag-picker (#4336)
... sorry @Jermolene
2019-10-20 18:08:19 +01:00
Simon Huber
423a942a8f Fix newTagNameTiddler being undefined in ControlPanel (#4326)
* fix newTagNameTiddler being undefined in ControlPanel

* Update Basics.tid

* prevent newTagNameTiddler being undefined

* Update Basics.tid

* Update tag-picker.tid

* Update tag-picker.tid
2019-10-20 17:00:08 +01:00
donmor
588af44d4c Scale embedded videos and audios to fit their container (#3943)
* Update videoparser.js

* Update audioparser.js

* Update videoparser.js

* Update audioparser.js
2019-10-19 11:44:18 +01:00
Jeremy Ruston
05a3e1ad36 Add language attribute to HTML tag 2019-10-17 18:07:13 +01:00
Jeremy Ruston
1bf8821bd8 System icon: remove extraneous closing tag 2019-10-17 15:04:00 +01:00
Simon Huber
1cf2d0799d Fix field-name input (#4322) 2019-10-14 14:54:47 +01:00
Simon Huber
3c365a2567 EditTemplate optimizations (#4104)
#4093 and #4100 are bundled in this PR

* qualified state-tiddlers for the tags input and fieldname + fieldvalue inputs
* newTagName, newFieldNameTiddler and newFieldValueTiddler variables defined in EditTemplate (all qualified through `qualify` macro)
* save-tiddler-actions macro in the EditTemplate (reused by the save-tiddler button)
* enter (configurable) in the fieldvalue field adds the field and sets focus to the next fieldname input

Edit:

* storyview="pop" for fields list
2019-10-14 14:31:57 +01:00
Simon Huber
45def4def4 Fix focus in fields editTemplate (#4321)
the focus was set to the wrong field
2019-10-14 13:57:45 +01:00
Simon Huber
7af24d217a Make tags in controlpanel animate (#4320) 2019-10-14 13:57:28 +01:00
Jeremy Ruston
73bb27fd77 Tweak autofocus text in control panel
Also made the trailing punctuation more consistent
2019-10-14 13:19:08 +01:00
Jeremy Ruston
6089c4de29 Extend refresh throttling to tiddlers having a "throttle.refresh" field
See discussion here: https://groups.google.com/d/msgid/tiddlywiki/7738644f-b53f-4fb0-b0df-16243fe51795%40googlegroups.com
2019-10-14 10:42:14 +01:00
Simon Huber
daa24a52bd Add default new-tiddler and new-journal tags mechanism and... (#4314)
* Update Basics.tid

* Update ControlPanel.multids

* Update NewJournal.multids

* Create NewJournalTags.tid

* Update new-tiddler.tid

* Update new-image.tid

* Update new-journal.tid

* Update new-here.tid

* Update new-journal-here.tid
2019-10-13 16:53:52 +01:00
Simon Huber
89728d8a9a Make tag-picker add-tag button more consistent II (#4313)
* Update tag-picker.tid

* Update tags.tid

* Update tag-picker.tid
2019-10-13 16:53:40 +01:00
Simon Huber
4cf96e7339 Revert "Fix: make tag-picker "add-tag" button more consistent (#4199)" (#4311)
This reverts commit 74172b35ce.
2019-10-13 10:19:44 +01:00
Simon Huber
f0779b58ac Revert "Add default new tiddler tags mechanism and interface (#4307)" (#4312)
This reverts commit 007fc8239b.
2019-10-13 10:19:07 +01:00
Simon Huber
007fc8239b Add default new tiddler tags mechanism and interface (#4307)
* Update ControlPanel.multids

* Update Basics.tid

* Update new-tiddler.tid

* Update new-journal.tid

* Update new-image.tid

* Update new-here.tid

* Update new-journal-here.tid

* Update new-tiddler.tid

* Update new-image.tid

* Update new-journal.tid

* Update new-tiddler.tid

* Update new-image.tid

* Update new-here.tid

* Update new-journal-here.tid

* Update Basics.tid

* Update Basics.tid
2019-10-12 16:30:59 +01:00
Simon Huber
ea6113b255 Fix CamelCase AutoFocus in ControlPanel (#4308)
* from AutoFocus to ~AutoFocus

* Update minifocusswitcher.tid

* Update Basics.tid

* Update body-editor.tid
2019-10-12 15:10:24 +01:00
Simon Huber
bfa3ddd077 Add two missing tooltips: add-tag button and add-field button (#4306)
* add tooltip to field add button

* Update EditTemplate.multids

* Update EditTemplate.multids

* add tooltip to tag-picker add button
2019-10-12 14:10:06 +01:00
Simon Huber
d01b781283 Restore previous popup mechanism (no cancelling when focusing inputs) (#4305)
* remove cancelpopups from factory.js

* remove handleFocusEvent from framed engine

* remove cancelPopups from simple engine

* Update popup.js
2019-10-12 14:08:52 +01:00
Simon Huber
66b68f4a58 Allow configuration of default focus field of new tiddlers (#4238)
* add editFocus attribute to edit widget

* add focus condition to title editTemplate

* add focus condition to body-editor editTemplate

* add focus attribute to type editTemplate

* add focus attribute to fields editTemplate

* add focus attribute to tag-picker

* add $:/config/AutoFocus tiddler

... default focus is title

* Update Basics.tid

* Update ControlPanel.multids

* Create minifocusswitcher.tid

* Update minifocusswitcher.tid

* Update Basics.tid

* Update body-editor.tid
2019-10-12 12:04:10 +01:00
Simon Huber
74172b35ce Fix: make tag-picker "add-tag" button more consistent (#4199)
* make tag-picker add-button compliant with enter-actions

... the `$actions$` way throws a filter syntax error in some cases, the `<<add-tag-actions>>` way is more solid

* Update tags.tid

remove tag-picker-actions
2019-10-12 10:01:27 +01:00
Simon Huber
9ed45cfaad Add whitespace trim to SideBarSegments search (#4302) 2019-10-12 09:24:05 +01:00
Jeremy Ruston
d30eacc652 Select widget: fix bug with deselecting entries programmatically
Previously, it was not possible to deselect entries by editing the tiddler $:/generated-list-demo-state used in the final example of the SelectWidget docs
2019-10-11 17:46:30 +01:00
Jeremy Ruston
e9211b0eee Allow sidebar tabs to be independently targeted via CSS 2019-10-11 10:57:29 +01:00
Simon Huber
8efd0ace34 Missing whitespace trim in PageControls (#4293)
* add whitespace trim to advanced search button

* add whitespace trim to new tiddler

* add whitespace trim to new journal

* add whitespace trim to new image

* add whitespace trim to control panel button

* add whitespace trim to tiddler manager button

* add whitespace trim to language button

* add whitespace trim to palette button

* add whitespace trim to theme button

* add whitespace trim to storyview button

* add whitespace trim to timestamp button

* add whitespace trim to encryption button

* add whitespace trim to tag-manager button
2019-10-07 15:13:55 +01:00
Jeremy Ruston
cb2640669b HTTP Server: should include bag in returned tiddlers
The bag field is included in the tiddlers baked into the HTML file, but is also needed on tiddlers read from the server dynamically.

Fixes #4291
2019-10-06 17:34:50 +01:00
Jeremy Ruston
89716bb81d Add class identifying the tiddler body editor
See https://groups.google.com/d/msgid/tiddlywiki/13fb3572-4259-46c3-9cc7-6ed85b636177%40googlegroups.com
2019-10-06 14:58:45 +01:00
Jeremy Ruston
fb9ea69ad2 Selective expandable TOC: use "sort" filter when determining whether node is expandable
Fixes #4284
2019-10-04 11:40:22 +01:00
Jeremy Ruston
a054d100e7 Fix usage of tm-edit-text-operation count parameter
Fixes #3912
2019-10-04 11:23:17 +01:00
Jeremy Ruston
0e771e2419 Fix currentTiddler in pagecontrol buttons
Bug introduced in 8db893b9c9

Fixes #4283
2019-10-03 12:13:29 +01:00
Jeremy Ruston
55e3b8d66d Plugin improvements
* Improve docs
* Improve styling of subplugins
2019-09-28 11:49:09 +01:00
Jeremy Ruston
ded9d4074c Plugin library chooser improvements
* Make "Also requires:" translatable
* Clearer styling for sub-plugins
* Documentation tweaks
2019-09-28 10:06:18 +01:00
Jeremy Ruston
93e01435d1 Dynamic plugins: Change "contains JavaScript" to "requires reload"
We might in the future offer support for certain types of JS module to be hot loaded.
2019-09-27 16:47:55 +01:00
Jeremy Ruston
cb3bec65a1 Don't crash for edit enginges that don't support cancelPopups 2019-09-26 08:51:35 +01:00
Jeremy Ruston
e752ba7c6a Use the dependents and parent-plugin fields to automatically install dependencies 2019-09-25 21:57:22 +01:00
Jeremy Ruston
92340d81cc Introduce "parent-plugin" field to control how plugins are displayed in the chooser
"Sub-plugins" are displayed within the dropdown of their parent plugin.

This is a more elaborate version of #4109. It doesn't address dependent plugins (yet), this is just about grouping addon plugins under their parent.
2019-09-25 16:16:28 +01:00
Jeremy Ruston
db2ed63e54 Fix formatting of plugin listing in control panel
And make some minor tweaks across the plugin chooser too
2019-09-20 14:30:52 +01:00
Jeremy Ruston
d91fcd990e Improve appearance of plugin chooser 2019-09-19 13:20:07 +01:00
Jeremy Ruston
336f1ceae3 Indicate in import listing whether a plugin contains JS modules 2019-09-17 08:49:39 +01:00
Jeremy Ruston
8c89461291 Adding [is[binary]] filter -- Missed off 1150c87ed 2019-09-16 16:16:03 +01:00
Jeremy Ruston
1150c87edb Add [is[binary]] operator 2019-09-16 16:15:26 +01:00
Jeremy Ruston
7f9823c5b2 Dynamic plugins: Fix registration of themes and languages 2019-09-16 13:17:09 +01:00
Jeremy Ruston
1c23059204
Dynamic loading/unloading of plugins (#4259)
* First pass at dynamic loading/unloading

* Show warning for changes to plugins containing JS modules

* Use $:/config/RegisterPluginType/* for configuring whether a plugin type is automatically registered

Where "registered" means "the constituent shadows are loaded".

* Fix the info plugin

The previous mechanism re-read all plugin info during startup

* Don't prettify JSON in the plugin library

* Indicate in plugin library whether a plugin requires reloading

* Display the highlighted plugin name in the plugin chooser

And if there's no name field fall back to the part of the title after the final slash.
2019-09-16 12:15:39 +01:00
Jeremy Ruston
68163684a2 Fix publishFilter in save templates
Fixes #4252
2019-09-11 11:40:45 +01:00
Jan-Oliver Kaiser
11506e9acf Fix gitlab saver (#4243)
This fixes the HTTP request sent to gitlab that is meant to see if the
target file already exists. It did not follow the official gitlab v4 api
documentation. That documentation dictates both `path` and `branch` to
be passed via corresponding GET parameters.
2019-09-11 10:21:31 +01:00
Jeremy Ruston
1631f21a6b Preparation for v5.1.22-prerelease 2019-09-10 17:20:36 +01:00
Bimba Laszlo
3732c83ad4 Fix GitLab saver Base64 encoding (#4255) 2019-09-10 14:16:06 +01:00
Jeremy Ruston
953038f0b2 Don't use field indexer when looking for blank/missing fields
Fixes #4247
2019-09-09 14:47:27 +01:00
Simon Huber
00fb4190f2 Fix whitespace around fields inputs (II) (#4240) 2019-09-09 14:17:32 +01:00
Jeremy Ruston
16652f926f
Fix inverted default HTML-class for items in toc and toc-expandable 2019-09-03 09:41:34 +01:00
Mark Stegeman
dd09266b46 Fix inverted default HTML-class for items in toc and toc-expandable
5d36b484c6 swapped the "emptyValue" and "value" that determine the
HTML-class for toc items, but did not change the default values for
"itemClassFilter" in "toc" and "toc-expandable" to reflect this.
2019-09-02 19:31:13 +02:00
Jeremy Ruston
ba7e7fd649
fix "Open" SideBar tab (#4228) 2019-09-02 18:08:09 +01:00
Simon Huber
1873785ef6 Fix whitespace around field inputs (#4227) 2019-09-02 18:07:45 +01:00
Simon Huber
c81bf49704
fix "Open" SideBar tab 2019-09-01 11:00:09 +02:00
Nils-Hero Lindemann
1c5b3e3d8d Remove duplicate code from transcludeblock parser (#4221) 2019-08-30 17:20:16 +01:00
Simon Huber
4ef9ccbab9 Fix bug with wikitext in fieldnames #4218 2019-08-30 10:44:23 +01:00
Jeremy Ruston
83386f34b5 Restore performance instrumentation to be disabled by default
Fixes #4201
2019-08-30 10:42:01 +01:00
Jeremy Ruston
471b73158a Fix overeager alerts from core module overwrite upgrade warning
This fixes a bug in #3634, and refines the logic so that the warning is only given if the incoming tiddler exists as a shadow tiddler. (In my case I have several draft core modules inactive in my notes wiki and they were erroneously suppressed from the upgrade).
2019-08-28 14:44:46 +01:00
Jeremy Ruston
a170210069 Fix crash with action-deletefield and missing tiddler attribute
Fixes #4188
2019-08-24 11:39:00 +01:00
Simon Huber
fada96651e Update "Open" tab to use tv-config-story-list (#4189) 2019-08-24 11:27:20 +02:00
Jeremy Ruston
bab1bca485 Coding style tweaks 2019-08-14 23:00:01 +01:00
Jeremy Ruston
a986e4f7d6 Prepare for v5.1.21-prerelease 2019-08-09 15:38:36 +01:00
Jeremy Ruston
ad175e222b Preparing for v5.1.20 release 2019-08-09 14:16:39 +01:00
Xavier Cazin
59264bbf2a fr-FR translation updates (#4167)
* Typo in GitLab saver link

* Improve fr-FR DateFormat for ViewTemplate subtitles

* Update fr-FR translations for Saving/GitService
2019-08-07 18:01:02 +01:00
Simon Huber
31e7dbf020 Add "preventScroll" option to tm-focus-selector message (#4157)
* add "delayed" option to tm-focus-selector message

this delays the focussing for the time of the animation duration if delayed="yes" or delayed="true"

this is useful when navigating the story river up and down with keyboard shortcuts and the shortcuts focus the title input if a navigated tiddler is in edit mode -> navigation doesn't jump but stays smooth

* Update rootwidget.js

* Update WidgetMessage_ tm-focus-selector.tid

* add preventScroll="true" tip
2019-08-06 13:12:21 +01:00
Simon Huber
e1bb532d98 Fix popups not being cancelled correctly (#4158) 2019-08-04 13:01:24 +01:00
Jeremy Ruston
8159c4a865 Fix navigator widget when story and/or history attributes are missing
To fix the crash described here: https://groups.google.com/d/msgid/tiddlywiki/c5461591-bf27-4c85-9f27-9eef14c38816%40googlegroups.com?utm_medium=email&utm_source=footer
2019-08-04 11:34:45 +01:00
Simon Huber
62a7fa4203 Pop storyview for fields list in EditTemplate (#4148) 2019-08-02 15:05:30 +01:00
Simon Huber
776ce0f65f Pop storyview for tabs macro (#4149) 2019-08-02 15:05:12 +01:00
Simon Huber
4952be6518 "Open" SideBar tab: use tv-story-list and tv-history-list (#4150) 2019-08-02 15:03:09 +01:00
Simon Huber
427fbfd623 Fix tags not animating in viewtemplate (#4142)
* fix tags not animating in viewtemplate

this PR uses the addprefix removesuffix filters, not a new filter as proposed in #3763

* use new `then` operator
2019-08-02 14:32:36 +01:00
Jeremy Ruston
17711657b6 Add then and else operators
Fixes #4147
2019-08-02 14:27:58 +01:00
Jeremy Ruston
394725f00c Fix edit-bitmap crash with missing tiddlers
Fixes #4141
2019-08-02 09:16:36 +01:00
Simon Huber
9a2de11db1 Pop storyview for topright and topleft bar (#4146)
* pop storyview for topright bar

* pop storyview for topleft bar
2019-08-02 09:03:51 +01:00
Simon Huber
fab67a463b Pop storyview: fix bug where targetElement is null (#4143) 2019-08-02 08:51:16 +01:00
Simon Huber
64fe260f4d Fix: correct handling of tc-popup-keep when cancelling ... (#4144)
... popups through focussing inputs
2019-08-02 08:49:06 +01:00
Simon Huber
8db893b9c9 Add pop storyview for pagecontrols (#4145)
this PR adds the pop storyview to the page-control buttons in the sidebar
2019-08-02 08:47:47 +01:00
Simon Huber
2d4831f920 Tag-picker: delete double-definition of tag-actions (#4139) 2019-08-01 17:32:39 +01:00
Jeremy Ruston
0a6870656f Fix typo in b5653babd 2019-07-31 21:39:52 +01:00
Bimba Laszlo
b5653babdf Add GitLab saver, apply common lingo to Git savers (#3931)
* Transform GitHub saver to work with GitLab as well

You can choose which provider you want to use, the data is given in the
same place.

I tried to avoid code duplication, so service providers' unique
properties are in separate files, the settings of the selected provider
are loaded.

In two fields I am not sure that it fits into the current structure:

* module-type: gitservice
  Which module is a `gitservice` type, it will be listed in the
  drop-down menu.
* default-api-url: https://gitlab.com/api/v4
  The default URL to access the provider's API.

This is just a sketch, not a final version, suggestions for modification
are welcome!

* Rename saver from GitHub to GitService, update docs

* Split GitHub and GitLab to separate savers, apply common lingo

Sadly, it doesn't seem to make much sense to search for common parts in
the code, because there might be a Git service that is very different
from the GitHub API (such as BitBucket). Therefore, I feel that Git
savers are not able to share other than the translations.

I deleted the defaults values from the translations and set it to the
text entry because they should not depend on the translations.

* Add more information about the password field

It is not clear how to create a personal access token, thus added a link
to the help pages. In addition, GitLab only accepts personal access
token, GitHub also accepts the password, so I made this clear.

* Extract commit message to lingo

* Fix indentation

* Use improved base64 encoder

Fix conflict with a06acc4eb8
2019-07-31 21:38:52 +01:00
Jeremy Ruston
3afaa9de9a Add support for anchored searches 2019-07-31 21:36:12 +01:00
Jeremy Ruston
dbaccf792d Use the new "match" operator across the core
Instead of the old "prefix" hack
2019-07-31 09:30:16 +01:00
Jeremy Ruston
5faae2547d Add "match" operator for string comparison
Fixes #4130
2019-07-31 09:11:12 +01:00
Jeremy Ruston
7f78065992 Fix unnecessary "list" field creation when renaming tiddlers
Fixes #4120
2019-07-30 17:10:53 +01:00
Simon Huber
cb1d35e230 More Plugins - Button: use primary color (#4075)
* Update AddPlugins.tid

* Update base.tid

* Update AddPlugins.tid

* Update AddPlugins.tid

* Update base.tid
2019-07-30 13:49:40 +01:00
Simon Huber
0a2d532a7b Fix bug where edit widget input-tag is empty (#4088) 2019-07-30 13:49:05 +01:00
Simon Huber
e669ec098f Fix beyboard widget empty parameters (#4094) 2019-07-30 13:47:56 +01:00
Jeremy Ruston
269fa5313f Fix for index ordering issue
Fixes #4082

This version removes selective updating of the tag index, instead completely clearing the index on each update. I'm investigating restoring that optimisation.
2019-07-28 16:39:34 +01:00
Simon Huber
b30746813b Fix: store noStateReference in popup.js (#4115) 2019-07-26 17:13:53 +01:00
jed
e86d4d29d5 Fix th-renaming-tiddler (see #4023) (#4037)
* Remove the th-renaming-tiddler hook from navigatior.js

The hook is invoked in the renameTiddler function which would cause the same hook to be called twice, and the version in the navigator widget didn't have the correct inputs and return value according to the documentation.

* Make it so that the th-renaming-tiddler hook isn't called twice

by removing it from the navigator.js file
2019-07-24 18:12:09 +01:00
Jeremy Ruston
cbd07465f3 Fix test rig shadow tiddler behaviour
The test rig previously used a simplified implementation of shadow tiddlers which broke with the new indexing engine. There was also a problem that made that even if indexers were disabled they were still initialised.

This PR fixes both problems, in preparation for fixing #4082
2019-07-16 16:53:37 +01:00
Mario Pietsch
5d36b484c6 Toc cosmetic changes for tabbed-xxxx macros (#4101)
* toc cosmetic changes.

* toc in right sidebar should use toc-item if itemCalssFilter is not defined
2019-07-15 12:31:50 +01:00
Simon Huber
e2bad34e89 Fix bug and typo in framed.js (#4110) 2019-07-15 10:11:36 +01:00
Cameron Fischer
b67e088e55 Reducing function calls across board (#4102) 2019-07-14 16:20:27 +01:00
Jeremy Ruston
8226efa154
Merge pull request #4106 from BurningTreeC/patch-17
fix missing tag for advanced-search keyboard shortcut
2019-07-14 16:08:01 +01:00
Jeremy Ruston
ac49b4d20c
Cancel open popups when inputs get focus 2019-07-14 16:07:36 +01:00
Simon Huber
78cc80db13
fix missing tag for advanced-search keyboard shortcut 2019-07-14 17:06:09 +02:00
Jeremy Ruston
2bcb36f151
Add advanced-search kb shortcut ctrl-shift-A 2019-07-14 15:49:15 +01:00
Jeremy Ruston
8e7c0907f8 Add checkactions attribute to Checkbox widget
See discussion at https://groups.google.com/d/msgid/tiddlywiki/526754d5-8786-49cd-aaa1-c77311670116%40googlegroups.com:

The history here is that in v5.1.14 we added an "actions" attribute to the checkbox widget that specified an action string to be specified whenever the state of the checkbox changed. The same action string is executed regardless of whether the checkbox was checked or unchecked.

Then in v5.1.16 we merged https://github.com/Jermolene/TiddlyWiki5/pull/3182 which added the "uncheckactions" attribute. The difference between the two is that the uncheckactions are only executed if the checkbox is unchecked. The main "actions" attribute is executed before any actions in "uncheckactions", which makes it possible to arrange things so that the "actions" attribute sets things to the checked state while the "uncheckactions" attribute overwrites those changes to set things to the unchecked state.

In retrospect, it would have made more sense to have also added a "checkactions" attribute that was executed only if the checkbox was checked. I'll investigate adding it for v5.1.20.
2019-07-14 13:42:43 +01:00
Simon Huber
66dc7df745
Update popup.js 2019-07-14 09:37:53 +02:00
Simon Huber
fd88be4173
Update ShortcutInfo.multids 2019-07-14 07:25:50 +02:00
Simon Huber
880a2aa153
Update ShortcutInfo.multids 2019-07-14 07:25:02 +02:00
Simon Huber
173e9c6c3a
add advanced search key combination ctrl-shift-A 2019-07-14 07:23:47 +02:00
Simon Huber
a87a299aa9
add advanced-search kb shortcut 2019-07-14 07:22:46 +02:00
Jeremy Ruston
f5b2599432 Make it possible to distinguish the two different sidebar elements with the class "tc-sidebar-lists" 2019-07-11 22:00:28 +01:00
Simon Huber
ba2f4822dd
Merge branch 'master' into patch-10 2019-07-11 18:19:49 +02:00
Simon Huber
ecbbe87a0d
popup cancelling - use state reference
in the google group there's a discussion: https://groups.google.com/forum/#!topic/tiddlywiki/_mDDZ1jpMgU

buttons allow setting a state-reference for popups but the popup mechanism doesn't respect that
2019-07-11 07:35:06 +02:00
Simon Huber
345a6a0f90
Update framed.js 2019-07-10 09:57:11 +02:00
Simon Huber
c647b42574
Update simple.js 2019-07-10 09:56:34 +02:00
Simon Huber
7811614d53
Update popup.js 2019-07-10 09:55:32 +02:00
Simon Huber
8aa6427d67
Update factory.js 2019-07-10 09:54:35 +02:00
Jeremy Ruston
86286c6fce Don't generate filenames starting with a period 2019-07-09 12:22:52 +01:00
Bram Chen
a06acc4eb8
Update core/modules/savers/github.js
Using "$tw.utils.base64Encode()" to encode content of data instead of calling module library directly.
2019-07-05 11:03:05 +08:00
Jeremy Ruston
5ac2064d18
Add toggle-sidebar keyboard shortcut 2019-07-04 22:18:40 +01:00
Jeremy Ruston
2a4c60b23d Allow tm-open-window to specify a page title 2019-07-04 15:59:34 +01:00
Jeremy Ruston
3edaa652ee Reveal widget: add option to avoid clamping popup position
Fixes #4041
2019-07-04 15:58:27 +01:00
Simon Huber
77fedf9582
fix keyboard shortcut 2019-07-04 12:00:10 +02:00
Simon Huber
cf4c4532c3
Update Buttons.multids 2019-07-04 09:00:34 +02:00
Simon Huber
ea0e1357bf
Update ShortcutInfo.multids 2019-07-04 08:59:23 +02:00
Simon Huber
ef7210adf4
add alt-shift-S to toggle sidebar 2019-07-04 08:57:49 +02:00
Simon Huber
e91fb29253
add keyboard shortcut toggle-sidebar 2019-07-04 08:56:17 +02:00
Jeremy Ruston
d489f61f2a
include wiki in options sent to generateTiddlerFilePath 2019-07-03 17:54:58 +01:00
Jeremy Ruston
727d660715
Story PageTemplate: configurable View- and EditTemplates (#4051)
* Story PageTemplate: configurable View- and EditTemplates

* add $:/config/ui/ViewTemplate

* add $:/config/ui/EditTemplate
2019-07-03 17:42:13 +01:00
Simon Huber
6e5566b907 Add whitespace trim to pagetemplate, story and sidebar (#4052)
* add whitespace trim to pagetemplate

* add whitespace trim to story pagetemplate

* add whitespace trim to sidebar pagetemplate
2019-07-03 17:41:23 +01:00
Bram Chen
958b3e7b7c Improve the base64 encode/decode utility functions (#4053)
Make good use of "$:/core/modules/utils/base64-utf8/base64-utf8.module.js"
* Add a new base64Encode()
* Both of base64Encode and base64Decode work for Nodejs and Browsers
2019-07-03 17:39:32 +01:00
Simon Huber
c578566dea
add $:/config/ui/EditTemplate 2019-07-03 15:09:32 +02:00
Simon Huber
8a0aef4dcb
add $:/config/ui/ViewTemplate 2019-07-03 15:08:43 +02:00
Simon Huber
35a71ad577
Story PageTemplate: configurable View- and EditTemplates 2019-07-03 15:07:06 +02:00
jed
c202ef4201
include wiki in options sent to generateTiddlerFilePath
This adds options.wiki to the object sent to the generateTiddlerFilePath

The function generateTiddlerFilePath can take a wiki in the options object, but generateTiddlerFileInfo doesn't pass the wiki to it.
2019-07-03 12:11:10 +02:00
Jeremy Ruston
da61917797 list-links macro: trim whitespace
Fixes #4044
2019-07-02 16:53:02 +01:00
Simon Huber
d1948621d3 Docs for stamp-button optionally wrap selection (#4047)
* make stamp-button optionally wrap selection

* Update Using Stamp.tid
2019-07-02 16:24:48 +01:00
Bram Chen
de04755a0a Fix bug with not definded variable (#4049)
Using the variable "resolveCredentialsFilepath" to provide a good debug information.
2019-07-02 15:40:07 +01:00
Simon Huber
112443c054 Update/fix nord palette notification background (#4031) 2019-06-29 08:15:46 +01:00
Jeremy Ruston
7781cb1f8b Streamline wording for sidebar search shortcut 2019-06-28 17:35:17 +01:00
Jeremy Ruston
bf51ae0019 Add keyboard shortcut for focusing sidebar search
Fixes #4020

Fixes #4025
2019-06-28 17:28:24 +01:00
Jeremy Ruston
ed67f4a88b Add new tm-focus-selector message 2019-06-28 17:27:36 +01:00
Simon Huber
14003b0e88 Make framed editor use tiddler-editor-background color (#3611)
so we can customise it better if we don't like what we see
2019-06-26 14:53:49 +01:00
Simon Huber
36c7e82cc0 Add/refactor PaletteManager (#3832)
* add PaletteManager

* add hint for "external" palette-names

* macro utility, for local \import only

this tiddler is never meant to be tagged $:/tags/Macro

contains only a colour macro which allows to call `<<colour "...">>` within a tiddler and get the parameter-name instead of the resolved color

used in the PaletteManager to reveal the original color below the color that just uses its color with the colour macrocall

example:

```
\define get-real-index(string)
\import $:/core/macros/utils
<$wikify $name="result" text="""$string$"""> <- does the "colour" macrocall, but the one that returns the parameter name
<<result>>
</$wikify>
\end
<$set name="color" value={{{ [{$:/palette}getindex[color-of-interest]] }}}>

-> <<colour primary>>

<$wikify name="real-color-index" text="""<$macrocall $name="get-real-index" string=<<color>>/>""">

<<real-color-index>> -> primary

...
```

* transclude PaletteManager in snippets/paletteeditor

* transclude PaletteManager in core/ui/ControlPanel/Palette

* Update ControlPanel.multids

* add style for color inputs in PaletteManager

* Update PaletteManager.tid

* Update PaletteManager.tid

* add tooltips & aria-labels

* Update ControlPanel.multids

* Update PaletteManager.tid

* Update PaletteManager.tid

* Update PaletteManager.tid
2019-06-26 12:36:13 +01:00
Simon Huber
31b141097d Tags edittemplate: replace &times; with svg (#3859)
* tags edittemplate: replace &times; with close-button svg

* make close-button smaller + v-aligned middle
2019-06-26 12:34:18 +01:00
Simon Huber
69d3a47073 Add escapecss filter (#3546)
* add escapecss filter

this filter would allow creating valid css classes from titles containing special characters

we assign a class to an element using `encodeuricomponent[]` so that the class name is encoded

in a stylesheet we create the classname by `<title>escapecss[]` which applies the uri encoding and escapes characters that need to be escaped

* Update encodings.js

* refactor tagToCssSelector, add escapeCssSelector

* use escapeCssSelector

* escape using CSS.escape if it's available

* Update encodings.js

* revert factoring out escapeCssSelector
2019-06-26 12:32:01 +01:00
Simon Huber
e313b0b7ca CSS.escape as startup module (#3574)
* don't know what I'm doing - apply polyfill methods

* don't know what I'm doing add CSS.escape polyfill

* execute polyfills in load-modules

* Delete cssescape.js

* add css-escape polyfill as startup module

* Update load-modules.js

* this was for testing :)

* Update css-escape-polyfill.js

* Update css-escape-polyfill.js
2019-06-26 12:31:22 +01:00
Simon Huber
dc9f4e2de7 Pop storyview: animation - don't x-overflow page (#3857)
... this makes the animation when inserting tiddlers / navigating to tiddlers in the pop storyview less jumpy

it simply sets `overflow-x` to `hidden` for the time of the insert-animation
2019-06-26 11:50:52 +01:00
Jeremy Ruston
6582b106ee Fixes to split operator, plus instructions for using it to do search and replace 2019-06-21 10:21:52 +01:00
Jeremy Ruston
90684f9f52 Add support for [is[blank]] to detect empty/blank strings 2019-06-21 10:20:37 +01:00
Robin Munn
9b27f82a80 Fix sentencecase operator, add titlecase operator (#4006) 2019-06-21 08:24:02 +01:00
Jeremy Ruston
2e2ed7902c Add sentencecase operator
Fixes #4000
2019-06-19 12:11:02 +01:00
Robin Munn
62829dc9d3 Add untrunc operator, the mirror of trunc (#3994) 2019-06-17 18:34:30 +01:00
Jeremy Ruston
73eb7fbd4e Maths operators: Remove concat (same as addsuffix) and add splitregexp 2019-06-13 16:52:19 +01:00
Jeremy Ruston
fc09f8e331 Tree macro: allow separator to be customised 2019-06-13 08:47:42 +01:00
Jeremy Ruston
86387a9185 Add some error trapping to maths operators 2019-06-11 17:18:18 +01:00
Jeremy Ruston
dd7837d164 Fix issue with allafter operator
Fixes #3962
2019-06-11 09:38:14 +01:00
Jeremy Ruston
f02352f6a1 Use default link text when link widget has no content
Fixes #3974
2019-06-10 21:04:21 +01:00
Jeremy Ruston
18fe112da7 Extend the enlist operator to optionally not de-duplicate 2019-06-10 17:54:46 +01:00
Jeremy Ruston
37bb75f0cf Add support for = prefix for filter runs that doesn't remove duplicates 2019-06-10 17:54:20 +01:00
Jeremy Ruston
ac1d5b828d Fix regression in 7fcd2f132
Previously we saved tiddlers as .tid files using this template that explicitly excludes the "bag" field:

https://github.com/Jermolene/TiddlyWiki5/blob/master/core/templates/tid-tiddler.tid

Now we generate both .tid and .json files programmatically, and so we have to explicitly exclude the bag field
2019-06-10 17:52:26 +01:00
Jeremy Ruston
8012a3508f Ensure tiddlyspot saver works with local storage disabled
Fixes #3955
2019-06-08 16:38:13 +01:00
Jeremy Ruston
28c732d2be Improve action-createtiddler to return a draft title too 2019-06-04 12:33:01 +01:00
Jeremy Ruston
72c64013c7 Fix control panel stylesheets tab to use $:/state/... instead of $:/config/... 2019-06-03 13:28:59 +01:00
Jeremy Ruston
9c2726c530 Remove $tw.perf.log() banner under Node.js 2019-06-03 13:28:41 +01:00
Jeremy Ruston
147d758931 Add version tags for deletetiddlers and savewikifolders commands
@BramChen -- I added the tag to the Chinese translations, too, let me know if it is not right.
2019-05-31 08:38:34 +01:00
Jeremy Ruston
5b09881679 Add new deletetiddlers command 2019-05-30 16:54:57 +01:00
Jeremy Ruston
a8f70b08a8
Add indexes to the wiki store to improve performance (#3951)
* First pass at modular wiki indexes

An exploratory experiment

* Fix tests

* Faster checking for existence of index methods

We don't really need to check the type

* Use the index for the has operator

* Fix typo

* Move iterator index methods into indexer modules

Now boot.js doesn't know the core indexers

* Fix up the other iterator index functions

* Fix crash with missing index branch

* Limit the field indexer to values less than 128 characters

* Fallback to the old manual scan if the index method returns null
* Sadly, we can no longe re-use the field indexer to accelerate the `has` operator, because the index now omits tiddlers that have field values longer than the limit

Still need to make the index configuration exposed somehow

* Rearrange tests so that we can test with and without indexers

We also need to expose the list of enabled indexers as a config option

* Test the field indexer with different length fields

So that we test the indexed and non-indexed codepaths
2019-05-24 21:07:37 +01:00
Jeremy Ruston
2f8053265e Performance: Add average filter execution time 2019-05-20 12:50:10 +01:00
Jeremy Ruston
ff85fcfe93 Fix typo from e8d1fbba6 2019-05-10 16:03:24 +01:00
Jeremy Ruston
e8d1fbba6c Performance Instrumentation: Track execution times for individual filters
Fixes #3941
2019-05-10 15:56:01 +01:00
Jeremy Ruston
7869546fef Speed up reveal widget
It turns out that the `localeCompare` function used by `compareStateText()` is very, very slow. Replacing it with a straightforward equality test makes one of my test rigs be 10x faster...

Note that this PR reverts the behaviour of match/nomatch to that before #3157. That change was not backwards compatible in that the switch to localeCompare meant that é === e, now it doesn't again.
2019-05-10 08:47:00 +01:00
Jeremy Ruston
5ae14a16ec Classic Storyview: Optimise for animation duration of zero (part 2)
See fddc5d4ee
2019-05-02 21:21:22 +01:00
Jeremy Ruston
fddc5d4ee6 Classic Storyview: Optimise for animation duration of zero (part 1)
Approximtely 50% speed improvement in tests opening a storyview with 8,000 entries.

(I've deferred the indentation adjustments until the next commit so that the git diffs are clearer)
2019-05-02 21:20:24 +01:00
Jeremy Ruston
091864ddaf Browser messaging: suppress logging
Commented out because it can be useful for debugging.
2019-05-02 20:21:58 +01:00
Jermolene
07198b9cda Update view toolbar "new here" button
Avoiding textual substitution fixes probems with tiddler titles containing double square brackets.
2019-04-23 17:54:49 +01:00
Jermolene
b7e0930122 savewikifolder: Fix custom plugin fields
We need to carry across all plugin fields into the tiddlywiki.info file
2019-04-16 11:59:34 +01:00
Jermolene
0a5c826816 GitHub Saver: Fix ServerURL name 2019-04-16 10:15:58 +01:00
Jermolene
25c0ebb523 GitHub Saver: Make server URL configurable 2019-04-15 21:30:59 +01:00
Jermolene
b32a5aa9af GitHub saver: Fix problem with saving to a non-existent directory 2019-04-15 21:08:04 +01:00
Jermolene
232eba2f7d Http utilities: add xhr object to callback 2019-04-15 21:07:23 +01:00
Jermolene
0513837228 Ensure tiddler.getFieldStringBlock uses a deterministic ordering
Makes diffs easier to track
2019-04-14 14:23:49 +01:00
Jermolene
373afd72c8 Add savewikifolder command
Makes it much easier to convert a TiddlyWiki HTML file into a full wiki folder.
2019-04-14 12:04:00 +01:00
Jermolene
7fcd2f132e Filesystemadaptor: Improve handling of JSON files
Fixes #3875

* Use .json files (instead of .tid) for any tiddler whose fields contain values that can't be stored as a .tid file
* Save application/json tiddlers as .json files
* Refactor most of the file handling as re-usable utilities
2019-04-13 14:59:44 +01:00
Bimba Laszlo
9b72eabd1a Fix crash in GitHub saver (#3905)
If the path was not specified, RSOD error occurred when we wanted to
download the wiki:

  Uncaught TypeError: Cannot read property 'substring' of undefined
2019-04-11 08:21:55 +01:00
Jermolene
73703da2e7 Minify base64-utif8 module
Minified with https://skalman.github.io/UglifyJS-online/
2019-04-08 21:37:32 +01:00
Jermolene
aa5eaa98fc Add a GitHub saver
Fixes #3890

I think it would be useful to have a simple tutorial for setting up saving via GitHub pages.
2019-04-08 21:08:58 +01:00
Simon Huber
662ae91067 Bugfix: reveal widget regression! (#3897) 2019-04-06 10:27:37 +01:00
Jermolene
d5fa68b46a Simplify PageTemplate
We no longer need to mess around with the currentTiddler variable to be able to access to the "name" field of the current language
2019-04-05 09:11:54 +01:00
Jermolene
6e81122fa3 Restore exclude parameter for selective TOC macros
Reverting 94607aa9cd
2019-03-30 12:10:42 +00:00
Jermolene
37ea659bf0 Refactor the dumpvariables macro as wikitext
Making it easier to customise
2019-03-30 10:52:49 +00:00
Jermolene
754c1251a9 Add new "variables" and "getvariables" operators 2019-03-30 10:52:28 +00:00
Jermolene
94607aa9cd TOC macros: Remove redundant recursion protection
As discussed in #3881, it isn't really needed when user interaction is required to open child nodes.
2019-03-27 15:00:13 +00:00
Jermolene
62477c9fbb TOC Macros: fix recursion regression
Fixes #3881
2019-03-27 14:59:38 +00:00
jed
b1edcdb757 Add unusedtitle macro (#3880)
* Add uniquetitle macro

This macro is a wrapper on the $tw.wiki.generateNewTitle function to return a unique name, it has been requested multiple times in the forums.

* Add documentation tiddler for uniquetitle macro

* Add uniquetitle macro examples

* Change name from uniquetitle to unusedtitle for clarity

The title isn't unique, just not currently used in the wiki.

* Update uniquetitle to unusedtitle

* Change uniquetitle to unusedtitle

* Fix a typo
2019-03-26 21:57:58 +00:00
Jermolene
02ae8969b2 Reveal widget: faulty logic for default handling
@BurningTreeC I think this might have been a typo in your recent refactorings; if you look back at an old version such as c0c1b557eb/core/modules/widgets/reveal.js then there is no sign of this fallback.

Fixes #3874
2019-03-20 16:50:34 +00:00
Jermolene
e52a616891 Add support for widget subclassing
Fixes #3865
2019-03-17 12:25:15 +00:00
Jermolene
f4fe254038 Clarify help for render command
The ordering of the bullet lists didn't match the order of the parameters
2019-03-16 13:25:34 +00:00
Simon Huber
2e0b2c8045 Palette manager: sort palettes by name, not description (#3853)
... currently it appears as if there was no sorting logic
2019-03-12 09:48:34 +00:00
Simon Huber
d068cb3625 Fix palette: missing type application/x-tiddler-dictionary (#3852) 2019-03-11 10:59:34 +00:00
Simon Huber
0d8c749f37 Rename SpartanDay to SpartanDay.tid (#3851)
* Rename SpartanDay to SpartanDay.tid

* Update SpartanDay.tid
2019-03-11 09:55:49 +00:00