1
0
mirror of https://github.com/Jermolene/TiddlyWiki5 synced 2024-12-29 11:30:28 +00:00
Commit Graph

1379 Commits

Author SHA1 Message Date
Jermolene
cc9c6e4f42 Ensure that we don't overwrite the modified/modifier fields of imported tiddlers
Fixes #225
2013-11-20 20:49:32 +00:00
Jermolene
3b35d7dfe4 Fixed problem with greedy regexp for macrocalls
It was preventing this from working:

```
<<macro>><<bacrp>><<sdf>><<qweqwe>>
```
2013-11-17 21:53:12 +00:00
Jermolene
29c0f7156b Fix overlooked typo
Ouch.
2013-11-16 22:50:10 +00:00
Jermolene
939ad11eae Rename the 'setvariable' widget to 'set'
Sleeker.
2013-11-15 18:31:39 +00:00
Jermolene
45c51481de Improve performance of tag handling with some caching 2013-11-13 23:33:32 +00:00
Jermolene
fc6dd83f2f Use prototypal inheritance to speed up the inheritance of widget variables
Now we reuse the prototype mechanism to let javascript do the work of
searching up the parent chain.
2013-11-13 21:25:45 +00:00
Jermolene
c7d5905242 Fix view format=date so that it doesn't crash on empty fields 2013-11-13 19:41:54 +00:00
Jermolene
b304e3fe40 Update the reveal widget to set the tw-popup class 2013-11-12 22:02:43 +00:00
Jermolene
06a66cf24e Improve popup dismissal
Now we ignore clicks if they come from an element that has an ancestor
with the class `tw-popup`
2013-11-12 22:02:26 +00:00
Jermolene
145e3ece78 Fix $tw.utils.hasClass() to work even if the element doesn't have a className property 2013-11-12 22:01:31 +00:00
Jermolene
24e361da77 Removed inadvertent alert() 2013-11-12 20:58:54 +00:00
Jermolene
791033d751 First pass at a saver for IE10 and above
It's not great, sadly. Clicking save in the browser pulls up an
unobtrusive bar at the bottom of the browser window where you can click
"save". You then get a new copy of your wiki in the downloads folder.
2013-11-12 20:49:00 +00:00
Jermolene
b885743efe Fix typo 2013-11-12 20:29:22 +00:00
Jermolene
8ec92405fd Add urlencoded and doubleurlencoded formats to the view widget 2013-11-12 20:29:14 +00:00
Jermolene
d2dbc73448 Correct typo 2013-11-12 19:52:25 +00:00
Jermolene
4a5a8dd773 Fix the execution context for widget attributes specified as macros
We need to ensure that variables in the tree up to this point are
accessible when we render the macro text.
2013-11-12 19:52:17 +00:00
Jermolene
f6a4ea6b0f Fixed typo from d64590a12b 2013-11-11 23:44:55 +00:00
Jeremy Ruston
8681e0228d Merge pull request #212 from grayeul/closeAllOthers
Add support for close-others
2013-11-11 14:46:05 -08:00
Jermolene
d64590a12b Fixed problem with target fields/index being erroneously applied to template
See here for discussion:

https://groups.google.com/d/msg/TiddlyWiki/D3MBNhjaT3E/ph0ZuAhuPFMJ
2013-11-11 22:29:38 +00:00
Jermolene
51fe1e20e8 Make sure that searching for the empty string returns all available tiddlers
Makes sense because every tiddler contains the empty string. This
restores the functionality of the tag editor dropdown.
2013-11-11 15:26:41 +00:00
Grayeul
3d0c6cf41e Fixed missing reference to old CloseAllOthers 2013-11-11 07:48:54 -06:00
Grayeul
da54236f5a Change names to tw=close-other-tiddlers and handleCloseOtherTiddlersEvent 2013-11-11 07:34:19 -06:00
Grayeul
c930d84d01 Add support for close-all-others 2013-11-11 07:28:29 -06:00
Jermolene
8357d90e59 Fix bug caused when creating a tiddler title starting or ending with a space 2013-11-11 08:48:06 +00:00
Jermolene
04e2f18ff1 Remove tooltip, classes and styles from transclusion syntax
Now that transclusion doesn't generate any intrinsic elements we don't
have an element to attach the tooltip, classes and styles to.
2013-11-10 22:46:37 +00:00
Jermolene
b1667259f0 Fix default password
The password widget was defaulting to the password "null".
2013-11-10 19:22:10 +00:00
Jermolene
c77b451863 Fixed bug when using checkbox widget to apply a tag to a tiddler that is untagged 2013-11-10 19:21:37 +00:00
Jermolene
a7bb331412 Extend view widget so that it falls back to its content if the field/property is empty or missing 2013-11-09 17:30:06 +00:00
Jermolene
6f1c9d88cc Improve the Widget.prototype.removeChildDomNodes() method so that most subclasses won't need to override it 2013-11-09 16:55:14 +00:00
Jermolene
ccb7fac25e Fix further typo in edit-text widget 2013-11-09 14:17:08 +00:00
Jermolene
bbe9a9c191 Fixed typos in edit-text widget
Thanks @grayeul
2013-11-09 13:15:54 +00:00
Jermolene
b745e304a2 Fix problem with edit-text widget and indexed properties
Thanks to @grayeul for the pointer:

https://github.com/Jermolene/TiddlyWiki5/commit/78bc89cbdbcc26e373001f2d
473436489d8d4365#commitcomment-4554613
2013-11-09 10:55:18 +00:00
Jermolene
e54148033b Fix client server edition syncing 2013-11-08 21:34:47 +00:00
Jeremy Ruston
ec481415f9 Fixes for TiddlyWeb 2013-11-08 20:18:26 +00:00
Jeremy Ruston
5a8ef2681b Update tw-new-tiddler message to take a template tiddler
The template tiddler title is used as the basis of the new title, which
is probably not very convenient. We'd like to be able to use system
tiddlers as templates, without defaulting the new instance to a system
tiddler title.
2013-11-08 16:57:52 +00:00
Jeremy Ruston
8fbae4435f Make the zoomin storyview visualisation properly track the title node 2013-11-08 12:36:30 +00:00
Jeremy Ruston
e93ac76581 Make sure external links have the class "tw-tiddlylink-external"
Fix #203
2013-11-08 12:26:32 +00:00
Jeremy Ruston
cc0011abd3 Get rid of the "new_" prefix we had on some methods
There's still the "old_" prefix to get rid of too.
2013-11-08 08:51:14 +00:00
Jeremy Ruston
b7cb1d3391 Change new_widget to widget
I was avoiding doing this until after the merge.
2013-11-08 08:47:00 +00:00
Jeremy Ruston
3e3a5917b7 Move the widgets back to the right folder 2013-11-08 08:38:44 +00:00
Jeremy Ruston
35adf4269a Merge backlog of changes from master branch
This is too easy. I'm worried.
2013-11-08 08:33:27 +00:00
Jeremy Ruston
c444b48dca Restore the zoomin storyview
Now we fix the tiddler width properly.
2013-11-07 22:55:39 +00:00
Jeremy Ruston
69888e6701 Allow field modules to specify HTML element tag used for editing 2013-11-07 19:39:50 +00:00
Jeremy Ruston
e5b66a08bf Reuse existing draft if available when switching a tiddler to edit mode
Fixes #199
2013-11-07 19:39:26 +00:00
Jeremy Ruston
cc11b86d81 Fixed typo 2013-11-05 09:00:31 +00:00
Jeremy Ruston
aa79b4aff1 Add pop visualiser 2013-11-05 08:52:32 +00:00
Jeremy Ruston
6a0ae2c48b Make sure we animate emptying the list widget 2013-11-05 08:52:17 +00:00
Jeremy Ruston
7c250fd7fe Re-introduce listviews
Now called storyviews because they're aware of the history structure as
well as the list structure.
2013-11-04 22:22:28 +00:00
Jeremy Ruston
63243c5855 Introduce a PageMacros tiddler containing a tabs macro
This is a hacky way of having macro definitions that behave as if they
are global to the wiki.

The new tabs macro itself is cool, though: neatly encapsulates most of
the gubbins around a tab control, and the rendering is quite easy to
style.
2013-11-04 18:21:20 +00:00
Jeremy Ruston
ff4d76f045 Fix up missing variable values
We were crashing if a variable was inadvertantly set to undefined
2013-11-04 10:00:34 +00:00
Jeremy Ruston
adf16eeaf3 Update macrocall widget to allow type of input and output to be specified
Means that you can invoke macros without parsing them as wikitext.
2013-11-04 10:00:02 +00:00
Jeremy Ruston
ed6fd475ab Add 'default' attribute to button widget
This allows us to do things like tab controls properly.
2013-11-04 09:59:26 +00:00
Jeremy Ruston
8ab7a1dd8f Only set the style of the button widget if the style attribute is specified 2013-11-04 09:58:56 +00:00
Jeremy Ruston
fd70aa8c45 Get rid of the qualifyTiddlerTitles hack
Now, finally, we can implement qualifyTiddlerTitles as a macro.
2013-11-02 15:42:24 +00:00
Jeremy Ruston
0b1f0a5fab Refactor the list widget to get rid of some hacks
As promised.
2013-11-02 10:12:55 +00:00
Jeremy Ruston
51394e50e8 Get rid of the event handling in the tiddler widget
Much neater if each widget does as little as possible.
2013-11-02 10:12:22 +00:00
Jeremy Ruston
31ae8910c6 Fix animation behaviour of reveal widget 2013-11-02 09:21:11 +00:00
Jeremy Ruston
6a6f6c7713 Restored animations for the reveal widget 2013-11-01 17:23:08 +00:00
Jeremy Ruston
0b0fb0a145 Fixed refresh logic of element widget 2013-11-01 17:22:51 +00:00
Jeremy Ruston
6b6b444269 Fixed refresh logic of checkbox widget 2013-11-01 17:22:40 +00:00
Jeremy Ruston
363e90fca8 Remove version widget in favour of widget macro 2013-11-01 13:22:06 +00:00
Jeremy Ruston
4118afe9e8 Make the widget tree for the page accessible to the JS console
Now you can browse the render tree of widgets by inspecting
`$tw.pageWidgetNode` in the JS console
2013-11-01 12:44:03 +00:00
Jeremy Ruston
4f4d45a972 Fix problem with default attribute of edit-text widget
Setting `default=""` wasn't working
2013-11-01 12:43:23 +00:00
Jeremy Ruston
e870e28cf3 Remove unused wikified format from viewwidget 2013-10-31 22:01:12 +00:00
Jeremy Ruston
01a0c9481e Remove unused class attribute from reveal widget 2013-10-31 21:59:53 +00:00
Jeremy Ruston
45f0f46fdf Fix macrocall widget to not pass $name as a parameter 2013-10-31 21:59:37 +00:00
Jeremy Ruston
1ca473fd2f Remove unused preserveCurrentTiddler attribute from list widget 2013-10-31 21:59:15 +00:00
Jeremy Ruston
1cc27b2598 Correct typo 2013-10-31 21:59:01 +00:00
Jeremy Ruston
0ec2cf20a9 Rename "focusSet" attribute of edit-text widget to "focusPopup" 2013-10-31 12:37:22 +00:00
Jeremy Ruston
4d4a84c5bf Remove unused class attribute from edit-bitmap widget 2013-10-31 12:36:38 +00:00
Jeremy Ruston
4646ba4e30 Remove unused class attribute from checkbox widget 2013-10-30 16:28:57 +00:00
Jeremy Ruston
f9c95dda46 Allow browsing for multiple files at once 2013-10-30 16:05:49 +00:00
Jeremy Ruston
8084837f48 Fix problem with default text handling in edit-text widget 2013-10-30 14:27:55 +00:00
Jeremy Ruston
9e3618bdcf Rename the 'title' attributes of various widgets to 'tiddler'
The change is to avoid confusion with the HTML 'title' attribute. The
name 'tiddler' better emphasises the purpose of the attribute, too.
2013-10-30 13:36:44 +00:00
Jeremy Ruston
05e73ee1da Cope with localStorage not being available
IE10 doesn't allow localStorage for HTML pages loaded from the file://
protocol.
Boo.
2013-10-29 22:21:25 +00:00
Jeremy Ruston
d42fb673f8 Fix checkbox widget to update modified and modifier fields 2013-10-29 21:20:59 +00:00
Jeremy Ruston
654f48b14d Fix problem with modal titles 2013-10-29 15:01:36 +00:00
Jeremy Ruston
731cbb8cd6 Switch from new_pageContainer back to pageContainer 2013-10-29 15:01:27 +00:00
Jeremy Ruston
b4da65d1c9 Update fakedom to no longer add a newline after opening tags
The newline was being rendered within `<code>` elements.
2013-10-29 14:52:12 +00:00
Jeremy Ruston
14d7d5ea59 Use the new wiki.makeWidget() method where we can 2013-10-29 14:51:35 +00:00
Jeremy Ruston
4eebe7388d Add a wiki.makeWidget() method
Encapsulates some logic that has been duplicated elsewhere.
2013-10-29 14:48:24 +00:00
Jeremy Ruston
371c8ab45a Fix changed attribute detection in tiddler widget 2013-10-29 09:04:18 +00:00
Jeremy Ruston
bf48e6f8a1 Rename tiddlerTitle variable to currentTiddler 2013-10-28 23:40:45 +00:00
Jeremy Ruston
b4b0eae4e5 Allow the foreignObject element in SVG to embed HTML via the body element
This change means that any `<body>` elements inside an SVG region of
the DOM tree will switch the namespace back to XHTML.
2013-10-28 15:05:19 +00:00
Jeremy Ruston
20f03de712 The big purge of the old widget mechanism
Getting rid of the old widget mechanism files finally gives us a payoff
for all the refactoring. Still a bit of tidying up to do, and we need
to re-introduce the animation mechanisms.
2013-10-27 22:55:36 +00:00
Jeremy Ruston
5610efff01 Update typedblock parser to use new widget mechanism 2013-10-27 22:53:22 +00:00
Jeremy Ruston
d84e398d7a Fix problem when widgets don't have a parse tree node 2013-10-27 22:53:06 +00:00
Jeremy Ruston
c7d56361ee Parse and render macro attributes, rather than using the raw text 2013-10-27 22:52:34 +00:00
Jeremy Ruston
d1108c7fcc Remove inaccurate comments 2013-10-27 22:52:04 +00:00
Jeremy Ruston
b1208a8d37 Fix problem with getTiddlerLinks()
It was crashing if it encountered a link widget that didn't have a `to`
attribute.
2013-10-27 13:54:39 +00:00
Jeremy Ruston
3ad3cfd526 Bring back the bitmap editor widget 2013-10-26 13:13:55 +01:00
Jeremy Ruston
f8f524d378 Make sure the dragger cover properly covers the dragger 2013-10-26 10:29:52 +01:00
Jeremy Ruston
76faba2d9f Get rid of the old tempwidget 2013-10-26 10:29:40 +01:00
Jeremy Ruston
98da59be7a Extend the link widget to make the links draggable 2013-10-26 08:36:43 +01:00
Jeremy Ruston
05fc9848bb Extend the dropzone widget to cope with dataTransfer objects (as well as files) 2013-10-26 08:36:31 +01:00
Jeremy Ruston
068befb24f Refactor link widget with tidier event handler 2013-10-25 23:22:46 +01:00
Jeremy Ruston
ad518c181d Add jsencoded view format 2013-10-25 23:00:43 +01:00
Jeremy Ruston
925e22c46f Fix up the server command to use the new widget mechanism 2013-10-25 22:30:15 +01:00
Jeremy Ruston
bdcead624a Add a changecount macro 2013-10-25 22:29:49 +01:00
Jeremy Ruston
b3ae45cbde Invoke macros with this set to the host widget 2013-10-25 22:29:28 +01:00
Jeremy Ruston
8fbc5759ad Refactor widget.getVariable() to have better behaved parameters 2013-10-25 22:16:15 +01:00
Jeremy Ruston
75231fec39 Add browse and dropzone widgets
We're splitting out the two aspects of the old import widget
2013-10-25 21:16:03 +01:00
Jeremy Ruston
c2efdfdbc4 Extend the navigator widget to handle import events 2013-10-25 21:15:32 +01:00
Jeremy Ruston
8c2fb7b8d0 Extend wiki object to have methods required for importing 2013-10-25 21:15:20 +01:00
Jeremy Ruston
62b72f6bd1 Move browser-startup module initialisation to the end of startup 2013-10-25 12:53:40 +01:00
Jeremy Ruston
11a07e71dc Move stripcomments from the classictools plugin into the core
It's a bit of a hack for the moment. The plan is to implement
stripcomments via the macro mechanism, at which point it can move back
into the plugin.
2013-10-25 12:32:57 +01:00
Jeremy Ruston
8a709a0b00 Give the edit-text widget some extensibility hooks
So that the upcoming CodeMirror plugin can do its stuff
2013-10-25 09:15:56 +01:00
Jeremy Ruston
3251aa191f Fix up saving encrypted wikis 2013-10-24 13:10:32 +01:00
Jeremy Ruston
56b2c25588 Whoops file in the wrong place 2013-10-24 12:00:32 +01:00
Jeremy Ruston
632970cd86 Get external links working again
We no longer use the `<$link>` widget for external links. Instead the
parser generates `<a>` elements. This makes things simpler, but does
mean that the `target=_blank` behaviour is baked into the parser.
Probably we should introduce a new `<$extlink>` widget that generates
an `<a>` element with a configurable `target` attribute
2013-10-24 11:54:54 +01:00
Jeremy Ruston
3350510516 Add new modules and moduletypes filter operators 2013-10-23 23:11:41 +01:00
Jeremy Ruston
3241c2b76a Added password widget 2013-10-23 20:24:45 +01:00
Jeremy Ruston
54bed81ab9 Missed off some of the refresh logic 2013-10-23 19:46:31 +01:00
Jeremy Ruston
4e713baeee Add checkbox widget and fix up task management example 2013-10-23 19:38:36 +01:00
Jeremy Ruston
67490cbb74 Whoops console.log.alypse 2013-10-23 17:50:51 +01:00
Jeremy Ruston
f2ac04943f Fixed tag autocomplete popup on focus 2013-10-23 17:41:12 +01:00
Jeremy Ruston
d5f09a4608 Prevented generation of illegal elements
Previously, text like <-> would try to generate an element with an
illegal name, causing a JS error
2013-10-23 12:36:34 +01:00
Jeremy Ruston
6f2dbd0978 Refactor name of "findNextSiblingDomNode()" method for consistency 2013-10-22 18:14:16 +01:00
Jeremy Ruston
7393a296dd Add a fieldmangler widget 2013-10-21 22:54:58 +01:00
Jeremy Ruston
06af26b1c8 Give the edit-text widget support for the placeholder attribute 2013-10-21 22:54:48 +01:00
Jeremy Ruston
e2b8249a1b Fix problem with findNextSibling() 2013-10-21 22:27:12 +01:00
Jeremy Ruston
409152afb8 Make the default list widget template include a div or span
Otherwise writing this makes a list on one line:

```
{{{ [tag[done]] }}}
```
2013-10-21 22:26:36 +01:00
Jeremy Ruston
c96cb6e956 Parse typed blocks with the new parser 2013-10-21 20:20:44 +01:00
Jeremy Ruston
a99f912bad Fix typo 2013-10-21 20:20:32 +01:00
Jeremy Ruston
2a571b4f5f Switch the notifier and modal mechanisms to use the new widget mechanism
Note the use of the `$tw.rootWidget` to collect together the root event
handlers
2013-10-21 20:14:01 +01:00
Jeremy Ruston
48dbacc88a Add support for widget event listeners to be specified as functions 2013-10-21 20:13:08 +01:00
Jeremy Ruston
ce1fb300f8 Use the new widget mechanism for stylesheet parsing and rendering 2013-10-21 18:38:20 +01:00
Jeremy Ruston
89310e71c8 Add a new version of rendertiddlers command
So that we can test static html generation
2013-10-21 18:33:00 +01:00
Jeremy Ruston
26ac940637 Fix typo 2013-10-21 18:32:29 +01:00
Jeremy Ruston
e33f588b73 Let the new rendering methods accept a parent widget 2013-10-21 18:32:19 +01:00
Jeremy Ruston
dc9c2522b9 Fix typo in macro variable substitution 2013-10-21 18:31:41 +01:00
Jeremy Ruston
167116d416 Fix output type for view format htmlwikified 2013-10-21 18:31:27 +01:00
Jeremy Ruston
3005604b83 Give link widget support for configuration variables
One can now use `\define tw-wikilinks() no` to disable wikilinks, and
`tw-wikilink-template` to configure the link template.
2013-10-21 18:31:04 +01:00
Jeremy Ruston
2b5fb9801f Add skype: protocol for external links
The matching of external links is hacky at the moment. The plan is to
make it more easily extensible (ie without writing code)
2013-10-20 10:47:02 +01:00
Jeremy Ruston
25612958d7 Fixed bugs in previous commit to extend search to titles and tags of binary tiddlers 2013-10-18 16:09:10 +01:00
Jeremy Ruston
3f151ba70e Add support for macro modules
Now JavaScript macros can be defined in "macro" modules
2013-10-17 16:57:07 +01:00
Jeremy Ruston
55d479c540 Extend macrocall widget to take parameters both from the parse tree node and the attributes
This allows us to invoke macros using the ordinary widget syntax, which
in turn allows us to use features like indirection on the parameters.
2013-10-17 16:55:23 +01:00
Jeremy Ruston
6b9b75142b Fix text reference regexp to allow for tiddler titles with embedded spaces 2013-10-17 16:40:13 +01:00
Jeremy Ruston
e11c620c27 Fix search filter so that titles and tags of binary tiddlers are searched 2013-10-17 16:34:50 +01:00
Jeremy Ruston
a3eaffa666 Add a linkcatcher widget 2013-10-16 16:30:06 +01:00
Jeremy Ruston
adb395d10f Fix edit-text widget to work with indexed values 2013-10-16 16:29:51 +01:00
Jeremy Ruston
7f6d770ca6 The reveal widget should generate a span when in inline mode
The only reason that the reveal widget generates an element is so that
we can use `display:none/block;` (as did the pre-refactored code) as a
quick way of hiding and showing the content. We don't do that yet, and
it may be best never to do it.
2013-10-16 16:29:35 +01:00
Jeremy Ruston
77248d08a8 Add the count widget 2013-10-15 21:07:13 +01:00
Jeremy Ruston
5b4ca67d6e Make the reveal widget hide the div element if it is not open 2013-10-15 21:06:52 +01:00
Jeremy Ruston
78bc89cbdb Add a edit text widget
Now rather than a separate module type for different editors, we
instead have a meta-widget "edit" that chooses the appropriate concrete
widget (currently just "edit-text", but soon to be joined by
"edit-bitmap" as well)
2013-10-15 14:32:27 +01:00
Jeremy Ruston
a696c716e3 Support the remaining events on the navigator widget 2013-10-15 14:30:36 +01:00
Jeremy Ruston
933afee996 Get rid of the old setstyle widget
And fix up the colouring of tiddler icons
2013-10-15 08:36:19 +01:00
Jeremy Ruston
20cd398e88 Fix popup positioning in the reveal widget 2013-10-14 23:32:01 +01:00
Jeremy Ruston
707024a118 Set the colour of the tag pills
We no longer need the old setstyle widget
2013-10-14 21:38:12 +01:00
Jeremy Ruston
e3dcb8cdc1 Fix view widget to display friendly text of tiddler values 2013-10-14 21:02:03 +01:00
Jeremy Ruston
468fe8b6f1 Add macrocall widget
Now the fields table works in the tiddler info popup
2013-10-14 17:48:26 +01:00
Jeremy Ruston
ebd28c8dc7 Get the tiddler info panel fields list working properly
Now we can display the fields list as a proper table.

We've had to temporarily hack the list widget again…
2013-10-14 17:35:52 +01:00
Jeremy Ruston
94c2eacdc9 Support selectedClass properly in the button widget 2013-10-14 16:56:13 +01:00
Jeremy Ruston
0c73c56b70 Fixes to button refreshing 2013-10-14 13:52:03 +01:00
Jeremy Ruston
1669c6eab5 Make recursion markers include the current tiddler
Otherwise the generated qualifying state title is not unique. In other
words, clicking the "i" button on a tiddler was opening the info panels
for all open tiddlers.
2013-10-14 13:06:07 +01:00
Jeremy Ruston
ea0b298b78 Deal with viewing date fields that don't exist 2013-10-14 12:59:39 +01:00
Jeremy Ruston
cc4940f41f Use the setvariable widget instead of macrodef
setvariable is more general
2013-10-13 23:40:11 +01:00
Jeremy Ruston
942e463b20 Fixes to get recent changes list to work 2013-10-13 22:59:14 +01:00
Jeremy Ruston
ce4a6ffa49 More useful class variables for tiddler status 2013-10-13 22:46:45 +01:00
Jeremy Ruston
9278c43a91 Add support for macro definitions 2013-10-13 22:39:05 +01:00
Jeremy Ruston
79dcc9a557 Refactor macro parameter substitution
Now macros can also include references to variables as `$(variable)$`
2013-10-13 22:38:46 +01:00
Jeremy Ruston
987890c085 Add button widget 2013-10-13 21:31:00 +01:00
Jeremy Ruston
b0503cf709 Fixes to make SVG and MathML elements work properly 2013-10-13 20:14:31 +01:00
Jeremy Ruston
ed35d91be6 Initial Commit
Carried over from the abortive pull request #169
2013-10-12 17:05:13 +01:00
Jeremy Ruston
d3d72eff1b Search over tags as well as the title and text fields 2013-10-11 08:46:09 +01:00
Jeremy Ruston
f2b598ef13 Correct example 2013-10-05 16:01:07 +01:00
natecain
c45f4d1c62 Small revision to previous commit, avoids double encoding.
We don't need to encodeURIComponent at all when using blob links.
The data never goes into the dom directly, just a guid reference.

This makes saving with blobs very fast!
2013-10-01 17:35:58 -04:00
natecain
aef8e63cf8 Use Blob api to generate data links in download saver
This should fix crashing on large wikis under chrome
  see chrome bug: https://code.google.com/p/chromium/issues/detail?id=103234
This should also speed up generating the download html by a couple of seconds
  it avoids repeatedly marshalling the base64 encoded href string across the sandbox boundary
  it avoids some time and memory consumed by "large" dom manipulation
  major remaining delay is in encodeURIComponent
    TODO: consider using iconv on the server
    TODO: consider async invocation of regular expressions to avoid client "lockup"

Conflicts:
	core/modules/savers/download.js
2013-10-01 17:35:47 -04:00
David Johnston
d321508437 Remove incorrect slice parameter.
Remove incorrect slice parameter, which made the ! (not) prefix fail to return any results.
2013-10-01 10:50:13 +01:00
David Johnston
f0b6790ae1 Previous in list filter. 2013-09-22 09:58:18 +01:00
David Johnston
b72afda7a2 Next in List filter 2013-09-22 09:57:23 +01:00
Jeremy Ruston
f51d0c55fe Fix eachday and sameday filter operators
There was some inconsistency of UTC vs. timezone handling
2013-09-21 10:08:16 +01:00
Jeremy Ruston
d0db2221d3 Fix problem with lowercase drive letters when saving with TiddlyFox under Windows 2013-09-19 13:50:28 +01:00
Jeremy Ruston
dec7870eeb Update HTML5 saver to use current filename where possible
Most browsers still ignore the specified filename, sadly.
2013-09-19 10:50:14 +01:00
Jeremy Ruston
3d5d5952b7 Fix broken regexps
Using .|\n was a very bad idea, as it doesn't match other newline
characters
2013-09-18 19:09:54 +01:00
Jeremy Ruston
b563d8e98a Ensure getTiddlerList() returns a copy of the tiddler list
Fixes #155
2013-09-18 12:12:29 +01:00
Jeremy Ruston
10a635927d Add confirmation when overwriting an existing tiddler
Now there's a JavaScript confirm when attempting to save a tiddler that
has been renamed to the name of an existing tiddler
2013-09-14 21:57:23 +01:00
Jeremy Ruston
4fb6836481 Add an untagged filter operator and sidebar tab 2013-09-14 16:28:46 +01:00
Jeremy Ruston
4a663d1661 Improve docs for $tw.utils.addEventListeners() 2013-09-14 13:47:51 +01:00
Jeremy Ruston
e39663ede3 Fix crash on processing anonymous macro parameters
Fixes #151
2013-09-10 22:08:09 +01:00
Jeremy Ruston
e034f28091 Bail out earlier when displaying a modal for a non-existent tiddler 2013-09-10 15:28:15 +01:00
Jeremy Ruston
2be9e82f84 Get rid of the modal popup for empty wikis
Ugly and clumsy.
2013-09-01 22:33:23 +01:00
Jeremy Ruston
83f85cad7d Add support for MathML namespace
It doesn't actually work, though, which is weird, since SVG works just
fine using the same mechanism
2013-08-31 11:15:50 +01:00
Jeremy Ruston
ee33cbbc2e Fix up some problems when the animation duration is zero
We want to be able to suppress animations by making the duration zero
2013-08-29 12:43:24 +01:00
Jeremy Ruston
1b094b1d5c Avoid attempts to save a tiddler with an empty title
Clicking "save" with a blank title will now be ignored
2013-08-28 19:46:21 +01:00
Jeremy Ruston
fbfe5a26c5 Move the animation duration into a tiddler so that we can easily let it be adjusted in the control panel 2013-08-28 15:15:56 +01:00
Jeremy Ruston
e8425131f4 Correct typo in 954a987d31 2013-08-28 14:44:59 +01:00
Jeremy Ruston
954a987d31 Extend the edit widget to be able to edit properties of data tiddlers 2013-08-28 11:23:14 +01:00
Jeremy Ruston
dfb49f811e Fixed problem with importing tiddlers with double quotes, gt, lt etc
Reported by @giffmex
2013-08-28 09:25:54 +01:00
Jeremy Ruston
06599bcfc6 Fix up closing tiddlers in the zoomin listview
One for @giffmex
2013-08-26 14:48:05 +01:00
Jeremy Ruston
779d8b3aad Update TW2 wikitext content type to text/x-tiddlywiki
And also stop assigning the default content type of
`text/vnd.tiddlywiki` to imported tiddlers.
2013-08-25 22:06:28 +01:00
Jeremy Ruston
d0dff80d6d Fix problem with insertBefore() on Win7/IE10
The problem is that insertBefore() on Win7/IE10 crashes if the second
parameter is undefined, rather than behaving as if the parameter is
missing, as all other browsers do. Aaargh.
2013-08-24 23:28:17 +01:00
Jeremy Ruston
df0a1a7c42 Fix problem with wiki.search() incorrectly searching missing tiddlers 2013-08-24 16:51:54 +01:00
Jeremy Ruston
be06257430 Split "transclude" widget into a separate "tiddler" and "transclude" widget
Belatedly realised that the design would be clearer without these two
separate concepts being conflated into a single widget.

As a result of this change, any other widget or template that generates
transclude widgets has needed adjustment.
2013-08-24 16:45:45 +01:00
Jeremy Ruston
3b563e19cf Removed obsolete comments 2013-08-23 18:38:44 +01:00
Jeremy Ruston
d6ec1ea1e5 Remove plugin field now that we've got the plugin-type field
I've been meaning to remove the `plugin` field for ages.
2013-08-23 18:37:54 +01:00
Jeremy Ruston
e1a38d88a7 Add a count widget 2013-08-21 23:09:54 +01:00
Jeremy Ruston
44f172c5ec Correct harmless but confusing typo 2013-08-21 23:09:40 +01:00
Jeremy Ruston
ca142dbdb5 Remove extraneous references to current field context variable
This should have been done as part of
6fc4e5db7c
2013-08-21 22:42:05 +01:00
Jeremy Ruston
5fe2d718e0 Fix crash with "fields" filter operator applied to missing tiddlers
Fixes #132
2013-08-21 22:33:04 +01:00
Jeremy Ruston
8cbb98d44d Hack the list widget
Usually the list transcludes each tiddler through the sample template.
This hack makes it work differently, where each tiddler is used as a
template to render the same current tiddler. The attribute that
switches modes is called "hackTemplate" because this is a temporary
implementation of this capability for experimental purposes
2013-08-21 20:50:08 +01:00
Jeremy Ruston
a427702628 Allow username to be set for the built-in server 2013-08-21 09:53:45 +01:00
Jeremy Ruston
1fd59a4bd3 First pass at a saver for the AndTidWiki app on Android 2013-08-19 13:55:40 +01:00
Jeremy Ruston
bc56253479 Extend the list widget to allow the generated HTML elements to be controlled
This makes it possible to generate UL or OL lists as well as the
current divs and spans.

This feature is clearly necessary but I'm not very happy with it. It
feels as though the syntax should be modifying a UL tag to specify the
extra information required to generate the list, rather than turning
the list widget to indirectly specify it's elements.
2013-08-19 11:08:00 +01:00
Jeremy Ruston
a36d3895ff Remove type attribute from the list widget
It's just a shortcut that clutters things up; easier to do the same
thing with a macro
2013-08-18 20:41:46 +01:00
Jeremy Ruston
f4b4415676 Fix problem which was preventing transcluded indexed properties from being parsed inline 2013-08-16 13:11:44 +01:00
Jeremy Ruston
b88079442c Add "listed" filter operator for retrieving the tiddlers that list a specified tiddler 2013-08-16 09:31:05 +01:00
Jeremy Ruston
6fc4e5db7c Get rid of the old "fieldgrid" and "fieldlist" widgets
Instead, we'll use the "list" widget with the new support for macros.
2013-08-15 18:17:11 +01:00
Jeremy Ruston
8c48d45479 Add a "fields" filter operator 2013-08-15 18:15:54 +01:00
Jeremy Ruston
6be8afe49f Extend the list widget to allow it to render each element as a macro
This will enable us to drop several existing widgets: fields,
fieldlist, fieldgrid
2013-08-13 19:33:45 +01:00
Jeremy Ruston
e27c5005ef File renames for 46b2fde2d9 2013-08-09 22:00:42 +01:00
Jeremy Ruston
0cf4c578d4 First take of the ConfigInfo panel
It displays internal configuration information for debugging and
learning about TiddlyWiki. Also introduces a way of interleaving
documentation tiddlers (complete for tiddler fields, more module type
docs to come)
2013-08-09 21:57:05 +01:00
Jeremy Ruston
0bda00ae71 Extend the fieldlist widget to retrieve all fields used across all tiddlers 2013-08-09 16:46:17 +01:00
Jeremy Ruston
9b7cee81f2 Add type="modules" support to the info widget
With type="modules", the info widget outputs a list of the currently
loaded modules, grouped by module type.
2013-08-09 16:45:40 +01:00
Jeremy Ruston
46b2fde2d9 Rename "dump" command to "print" command
Being pan-cultural is hard.
2013-08-09 09:24:58 +01:00
Jeremy Ruston
7e82eb13eb Fix problem with stray drag image showing
Changes to the main layout CSS a few weeks ago meant that the drag
image element was visible at the top left corner of the window.
Astoundingly, the fix is to cover it with another div with the same
background colour as the page….
2013-08-08 21:46:38 +01:00
Jeremy Ruston
a9a2ae2223 Add sorting by tiddler lists
The tag and tagging filters now sort their results by the list field of
the tag, if present
2013-08-08 17:39:34 +01:00
Jeremy Ruston
83ea953a1d Switch the story list over to using the new list field 2013-08-07 17:54:27 +01:00
Jeremy Ruston
8443a9d6ca Fix comment 2013-08-07 16:04:06 +01:00
Jeremy Ruston
85007cb1e1 Correct comments 2013-08-06 15:27:02 +01:00
Jeremy Ruston
39b6091258 Don't set modification fields on synced tiddlers 2013-08-06 15:26:48 +01:00
Jeremy Ruston
0ae0f68257 Update filenames to reflect changes in 05ac094d2e 2013-08-04 22:31:09 +01:00
Jeremy Ruston
05ac094d2e Rename the savetiddler/savetiddlers commands to rendertiddler/rendertiddlers
'Render' reflects what the commands actually do, and frees up 'save'
for actually saving the raw content of a tiddler.
2013-08-04 22:26:45 +01:00
Jeremy Ruston
be7cc67ab6 Correct mistaken classification of savetiddlers command as asynchronous 2013-08-04 22:02:19 +01:00
Jeremy Ruston
86e73ee323 Set modified field and other metadata for newly created and modified tiddlers
Right now we're setting the created/modified time, and only setting the
creator/modifier if the tiddler `$:/status/UserName` is defined.
2013-08-04 14:02:07 +01:00
Jeremy Ruston
5994a84644 Extend ginsu.sh to generate a split.recipe file 2013-08-03 15:03:07 +01:00
Jeremy Ruston
799647e38b Fix problem with search term being filtered from search results
Some leftover code meant that tiddlers titled with the precise search
term were excluded from the results.
2013-08-03 09:28:51 +01:00
Jeremy Ruston
602b9d34e4 Unpack the object returned by getBoundingClientRect()
Embedding the return object directly doesn't survive the object being
passed as an event parameter.

Fixes #114
2013-07-25 16:58:42 +01:00
Jeremy Ruston
a79e876806 First pass at a grid widget
Need to add support for cell templates and in place editing.
2013-07-22 13:03:46 +01:00
Jeremy Ruston
f1a7e433ab Allow widget names to include digits 2013-07-14 23:13:42 +01:00
Jeremy Ruston
8c73d8db4b Confirmation message for $tw.slowmo() 2013-07-14 23:13:13 +01:00
Jeremy Ruston
1a160485a8 Documentation correction 2013-07-08 21:44:12 +01:00
Jeremy Ruston
6e98af3bbd Experimenting with different easing functions for the zoomin animation 2013-07-08 17:20:06 +01:00
Jeremy Ruston
24ad677d75 Add back the zoomin view
An alternative visualisation for the story list. It just shows the
currently selected tiddler, with smooth animations between tiddlers.

Not entirely finished yet; for instance, if you close the current
tiddler you get a blank screen until you select another tiddler.
2013-07-08 15:19:00 +01:00
Jeremy Ruston
ea8c795d01 Add a hack to switch slowmo animation mode
Just type `$tw.slowmo()` in the developer console to engage slowmo mode.
2013-07-08 15:17:29 +01:00
Jeremy Ruston
1304bfd0d4 Special treatment so that text reference to title field works for missing tiddlers
The title field is the one field that we know for missing tiddlers.

This is needed in a subsequent commit of viewswitcher.
2013-07-08 15:16:55 +01:00
Jeremy Ruston
53ead15273 Refactor scroller so that the scrollIntoView() method is a bit more usable
Passing an event instead of a DOM node was silly.
2013-07-08 15:15:53 +01:00
Jeremy Ruston
594f4ba204 Update animations to use a timer instead the transitionEnd event
Thr trouble is that the transitionEnd event doesn't fire under some
circumstances (eg if the animated element is hidden). So, it's more
reliable to use a timer instead
2013-07-06 12:57:37 +01:00
Jeremy Ruston
b51fb9cfa9 Linting 2013-07-05 22:37:55 +01:00
Jeremy Ruston
6d3f224817 Fix problem with pop listview animation
It turns out the transitionEnd event fires separately for each animated
property. We'll just remove ourselves on the first one
2013-07-05 11:15:51 +01:00
Jeremy Ruston
c72a63849b Add some more methods to the fake DOM
These methods are needed to get static saving working in the browser
again (click "Save Static" in the Demo tiddler)
2013-07-05 10:47:08 +01:00
Jeremy Ruston
e6450e60e2 Add a popping animation to the tags editor 2013-07-04 12:50:31 +01:00
Jeremy Ruston
647bd51299 Fix problem with erroneous initialisation of changedTiddlers member 2013-07-03 16:00:48 +01:00
Jeremy Ruston
e583c1d72d Use empty string as default value for reveal widget 2013-07-03 16:00:26 +01:00
Jeremy Ruston
627dba01e4 Make getContextScopeId() more selective about context fields that are included
We were getting a problem whereby macro definitions were showing up in
the context string.
2013-07-03 16:00:10 +01:00
Jeremy Ruston
6299026407 Fix issue with child nodes of macro call not being refreshed 2013-07-03 15:59:09 +01:00
Jeremy Ruston
0edfc855b4 Replace obsolete content type 2013-06-27 10:19:38 +01:00
Jeremy Ruston
d93e6b1229 Always default to a href='#title' format for tiddler links
The link format will be overridden when we're creating links within
static HTML representations
2013-06-27 09:03:59 +01:00
Jeremy Ruston
12b471b8fb Extend the HTML rendering mechanism to support attributes specified as macro invocations 2013-06-18 15:37:19 +01:00
Jeremy Ruston
18f8b7266e Refactor the HTML element parser
The purpose is to allow attributes to be specified as macro
invocations. For example `<div myattr=<<mymacro param1 param3>>>`. The
parser needed sprucing up in order to copy with the nesting of angle
brackets. The refactoring has been done with an eye on using the same
technique in the filter expression parser (which is pretty messy at the
moment -- it throws exceptions for syntax errors, which is bad). Later
I'm hoping to extend the technique to create a more flexible table
parser.
2013-06-15 15:12:05 +01:00
Jeremy Ruston
cb34ef20ad Add input type handling to the texteditor
This allows us to customise the input element used for each field type.
The only one implemented at the moment is color, which currently only
works on Chrome
2013-06-13 09:17:36 +01:00
Jeremy Ruston
8471a2217a Improve handling of fieldmodules lacking a stringify method 2013-06-13 09:16:26 +01:00
Jeremy Ruston
204bd69e83 Fix issue preventing tags being added to a tiddler with no existing tags 2013-06-11 14:52:01 +01:00
Jeremy Ruston
d6654c4a0b Fixed problem with not being able to manually scroll after navigating to a tiddler 2013-06-10 21:07:23 +01:00
Jeremy Ruston
3cda8758ae Refactor scrolling animation to use requestAnimationFrame() instead of setInterval() 2013-06-10 14:11:58 +01:00
Jeremy Ruston
2c20e6579d Update edit widget to trigger a popup when focussed
This will allow us to do autocompletion
2013-06-09 19:27:45 +01:00
Jeremy Ruston
e4aa80b277 Update the transclude widget to update parameters for remove tag message 2013-06-09 19:27:15 +01:00
Jeremy Ruston
d4b6c05bc2 Update linkcatcher to optionally trigger a different event 2013-06-09 19:26:42 +01:00
Jeremy Ruston
0cbb89770f Update fieldmangler widget to be able to add and remove tags 2013-06-09 19:26:05 +01:00
Jeremy Ruston
92fee547a9 Allow class to be specified for list widget frame element 2013-06-09 19:25:11 +01:00
Jeremy Ruston
a20eb4867e Update link widget to use current tiddler as default target 2013-06-09 19:24:45 +01:00
Jeremy Ruston
2c8352c442 Update the popup manager to allow popup state to be forced, rather than toggled
We'll be needing this shortly
2013-06-09 19:24:21 +01:00
Jeremy Ruston
b3c6b51fc7 Make the prefix filter operator be case insensitive by default 2013-06-09 19:23:52 +01:00
Jeremy Ruston
aeb8d0d1e6 Allow a placeholder attribute to be specified on the edit widget
Also fix some problems with handling of the class and style attributes
2013-06-08 17:30:54 +01:00
Jeremy Ruston
694ca76e7f Improve the bitmap editor to allow the bitmap to be resized
A bit rough and ready, too
2013-06-06 20:55:43 +01:00
Jeremy Ruston
6ae73e0fc7 Fix regex typos
The trouble with regexs being that they breed typos…

Fix #103
2013-06-05 19:06:31 +01:00
Jeremy Ruston
d81f45764a Start refactoring the bitmap editor to permit a more complex UI 2013-06-05 19:04:40 +01:00
Jeremy Ruston
2d5d1d1ce1 Improve editting of corrupt images
We now detect errors loading the image and initialise a blank canvas
instead.

This means that it's possible to open HelloThere for editting, and then
change the "type" field to "image/jpeg", and the textarea automatically
switches to a blank bitmap. Next up is making it possible to change the
size of the bitmap.
2013-06-05 15:47:44 +01:00
Jeremy Ruston
c0a26d2849 Ensure that the edit widget refreshes whenever the editor type changes 2013-06-05 15:38:29 +01:00
Jeremy Ruston
131874e154 Fix typo 2013-06-05 15:38:06 +01:00
Jeremy Ruston
e925f1c3dd Adjust fields widget to sort fields
Making it easier to track .tid files under source code control
2013-06-05 14:12:52 +01:00
Jeremy Ruston
1f21bd36d6 Fix problem with displaying modals before the page container is initialised 2013-06-04 16:22:37 +01:00
Jeremy Ruston
854a9d6d1c Toggle a style on the page container when a modal is displayed 2013-06-04 16:19:47 +01:00
Jeremy Ruston
348a6976b7 Add fieldmangler widget that allows fields to be added and removed to tiddlers 2013-06-04 12:02:37 +01:00
Jeremy Ruston
ab75dde048 Update transclude widget to flag events with the current field 2013-06-04 12:02:18 +01:00
Jeremy Ruston
7a080b7aac Update class for fieldlist widget 2013-06-04 12:01:40 +01:00
Jeremy Ruston
fb76ee5606 Fix problem that was stopping buttons being able to set tiddlers to the empty string 2013-06-04 12:01:28 +01:00
Jeremy Ruston
538d12e017 Add the fieldlist widget
Allows us to render a sequence of fields
2013-06-02 23:20:43 +01:00
Jeremy Ruston
938124ca37 Extend the info widget to return the current field 2013-06-02 23:20:24 +01:00
Jeremy Ruston
6f3f4528c9 Make the edit and view widgets default to the current field 2013-06-02 23:20:08 +01:00
Jeremy Ruston
d5b0a0fb68 Extend the transclude widget to allow a currentField to be set
We set the current field as a context variable for the transcluded
content
2013-06-02 23:19:50 +01:00
Jeremy Ruston
456d50b6ef Make the setstyle widget refresh itself properly
This will allow us to dynamically change the colour of tags
2013-06-02 23:18:54 +01:00
Jeremy Ruston
f743e09e7a Corrected typo 2013-06-02 23:17:53 +01:00
Jeremy Ruston
bf4216f3ac Don't count references to shadow tiddlers as missing tiddlers 2013-05-31 17:53:11 +01:00
Jeremy Ruston
b0d183070c Don't allow < and > in external links 2013-05-31 17:42:40 +01:00
Jeremy Ruston
28b0b58a11 Make a distinction between templates and UI
Templates are the low-level bits and pieces that allow TW5 to generate
HTML and CSS renderings of tiddlers. The UI folder contains the
user-visible UI of TW5
2013-05-31 15:38:27 +01:00
Jeremy Ruston
d27cb19e22 Update titles of certain widgets that were misspelled 2013-05-31 13:23:25 +01:00
Jeremy Ruston
a8b1da33de Improvements to slide animation 2013-05-28 16:47:16 +01:00
Jeremy Ruston
5cdcadd8b2 Make the reveal widget use the new animator mechanism 2013-05-28 16:28:38 +01:00
Jeremy Ruston
227cadd326 Add a barebones animation framework
The idea is to allow us to package animations/transitions into plugins
2013-05-28 16:28:16 +01:00
Jeremy Ruston
cf75b209ba Add eachday and sameday filter operators
These operators will enable us to group the recent changes list by day
2013-05-27 17:59:33 +01:00
Jeremy Ruston
ca51634041 Add the each filter operator
This makes it possible to do grouping within lists
2013-05-27 17:59:03 +01:00
Jeremy Ruston
887d955fc4 Change the search filter operator to not indirect through a tiddler
Now that we can make any filter operator indirect through a tiddler we
don't need to have that as a special capability of the search operator.
2013-05-27 17:58:27 +01:00
Jeremy Ruston
f4a3b25d3e Extend the filter mechanism to allow operands to be indirected through a tiddler text reference
In other words, as well as `[sort[myfield]]` to sort by the field
called `myfield`, one can do `[sort{MyTiddler}]` to sort by the field
whose name is in the text of the tiddler `MyTiddler`.
2013-05-27 17:57:37 +01:00
Jeremy Ruston
9193937125 Fixed problem with field filter operator not performing string comparisons 2013-05-27 17:55:45 +01:00
Jeremy Ruston
31a4b96f57 Fixed problem with getTextReference() not always returning a string 2013-05-27 17:55:23 +01:00
Jeremy Ruston
0cf5dc699e Refactor the filter mechanism
Long overdue rewrite to make it simpler, and break the filter operators
out into individual modules.
2013-05-25 17:26:22 +01:00
Jeremy Ruston
5394fc4ee1 Fix typo 2013-05-25 16:40:44 +01:00
Jeremy Ruston
d19affc9c3 Fix problem with non-shadow stylesheets not being recognised at startup 2013-05-25 16:40:34 +01:00
Jeremy Ruston
1e5842dc1c Fix download saver on Firefox
Turns out that Firefox needs the link to be in the document before it
will honour the click on it.
2013-05-23 11:26:47 +01:00
Jeremy Ruston
4ad6f05010 Fix issue with scrolling while editting long tiddlers in Firefox 2013-05-21 17:54:10 +01:00
Jeremy Ruston
d3fa781287 Switch to using a slider for tiddler info 2013-05-19 12:11:18 +01:00
Jeremy Ruston
96462de2f5 Fix problem with not encoding body of non-base64 data URIs 2013-05-18 16:59:53 +01:00
Jeremy Ruston
3806168038 Fixed problem with non-shadow style tiddlers not being recognised 2013-05-18 16:59:24 +01:00
Jeremy Ruston
d8abc0e9e3 Fix up more document references 2013-05-17 17:37:39 +01:00
Jeremy Ruston
5abc0a7835 Get rid of the obsolete font parser 2013-05-17 17:30:33 +01:00
Jeremy Ruston
f3bcc1c0af Add a datauri widget
Used in stylesheets to get a data URI for a font or bitmap
2013-05-17 17:30:03 +01:00
Jeremy Ruston
6e1cd46bc7 Fix document references 2013-05-17 17:29:43 +01:00
Jeremy Ruston
551ebdc005 Major refactoring of rendering mechanism
We now use a fake DOM implementation on the server to let us share more
rendering code between the text output vs. DOM output paths.
2013-05-17 10:12:25 +01:00
Jeremy Ruston
07d4c9a639 A slightly better fix for the render context inheritance issue with the htmlwikified viewer for the view widget 2013-05-15 22:15:57 +01:00
Jeremy Ruston
98986ba9cc Fix problem with render context not inherited into htmlwikified view widgets 2013-05-15 21:33:40 +01:00
Jeremy Ruston
0a3389c277 Add namespace support to the element renderer
This allows us to create SVG elements with the correct namespace, which
allows us to have inline SVG images (coming up next)
2013-05-15 18:44:23 +01:00
Jeremy Ruston
dd2a7199f6 Allow a default value to be specified for WikiRenderTree.getContextVariable 2013-05-15 18:43:19 +01:00
Jeremy Ruston
8564602256 Refactor rendertree to simplify context handling
Get rid of the separate renderContext stack and instead have a parent
pointer on renderer nodes. This lets us walk back up the render tree to
resolve context references
2013-05-15 17:32:17 +01:00
Jeremy Ruston
c0683fd65c Added a saver for the TWEdit iPad/iPhone app 2013-05-14 20:20:48 +01:00
Jeremy Ruston
6864251962 Cleaning up content types
Dealt with some inconsistencies
2013-05-13 17:42:07 +01:00
Jeremy Ruston
15d1abf523 Fix problem with context-menu paste not triggering saving of edits
We'll use the input event to detect changes, which is reliable but
doesn't work on older browsers
2013-05-11 10:03:11 +01:00
Jeremy Ruston
f43e22f8e5 Remove early bail on switching to a non-existent theme
Fixes #98

The excised code was unnecessary, as the rest of the function operates
correctly even if the theme tiddler is missing
2013-05-10 20:24:40 +01:00
Jeremy Ruston
6e44a20804 Fix problem with TiddlyFox on Windows
Fix #97
2013-05-10 18:14:01 +01:00
Jeremy Ruston
abcf7df875 Adjust bitmap editor to draw with a yellow pen
For highlighting
2013-05-08 15:11:53 +01:00
Jeremy Ruston
8796f312cb A different animation for hiding notifications
Only slightly different, but it seems to add visual interest
2013-05-08 13:27:04 +01:00
Jeremy Ruston
e501c0ec2a Enhance TiddlyFox saver to display a notification on success 2013-05-07 18:09:15 +01:00
Jeremy Ruston
24db38c06b Add simple notification mechanism 2013-05-07 18:08:44 +01:00
Jeremy Ruston
ed5f88ab84 Fix problem with importing TW files 2013-05-03 19:19:01 +01:00
Jeremy Ruston
1696daf2bf More explanation of the linkcatcher widget
Prompted by @pmaro
2013-05-01 16:11:52 +01:00
Jeremy Ruston
408fcd8aa3 Add a parser for woff fonts
It's a bit of a hack to have a parser dedicated to fonts. We'll replace
it with a mechanism that handles generic binary data
2013-05-01 13:04:27 +01:00
Jeremy Ruston
aa7b9441fd Add a linkcatcher widget
It intercepts navigation events and saves the target tiddler title into
a specified text reference
2013-05-01 12:02:33 +01:00
Jeremy Ruston
c373fea350 Ensure themes get initialised on the server as well as the browser
To make sure that static site generation has access to the theme shadow
tiddlers
2013-04-30 23:04:15 +01:00
Jeremy Ruston
523d70127b Allow themes to be switched by changing the tiddler $:/theme 2013-04-30 22:57:10 +01:00
Jeremy Ruston
e875de63a9 Ignore shadow tiddlers in the syncer 2013-04-30 22:55:06 +01:00
Jeremy Ruston
a54a7806d5 Remove redefinition of Tiddler.hasField() and added Tiddler.isPlugin()
hasField() was already being defined in boot.js
2013-04-30 22:37:02 +01:00
Jeremy Ruston
e12fbf0f9f Comment clarification 2013-04-30 22:35:52 +01:00
Jeremy Ruston
594871e2d1 Fix for the link macro to work around iPhone annoyance
This prevents Mobile Safari from sliding the address bar into view
whenever a tiddler link is clicked
2013-04-29 16:03:35 +01:00
Jeremy Ruston
152fb798eb Start responding to dynamic stylesheet changes
This mechanism will only be triggered by changes to the stylesheet
tiddlers themselves, and not to any dependencies that they might have.
It'll stay that way for a while.

The next thing is making the theme manager actually switch themes,
forcing the right wiki change events to make the stylesheet manager
update itself
2013-04-29 12:07:39 +01:00
Jeremy Ruston
c3e14a85a6 Give tiddlers a hasField() method 2013-04-29 12:05:58 +01:00
Jeremy Ruston
17cfd57390 Start making themes switchable
Separately switch in ordinary plugins and themes. Change the convention
for plugin information to use dashes rather than camel case.
2013-04-28 22:52:26 +01:00
Jeremy Ruston
996a7279ed Switch to using tags to identify stylesheets
Using module-type was confusing, because we weren't actually using the
module infrastructure for stylesheet processing.
2013-04-28 18:13:57 +01:00
Jeremy Ruston
b305debf97 Add a close all tiddlers button
For @pmario
2013-04-27 16:35:59 +01:00
Jeremy Ruston
059a36b23d Animate tiddler closures to the left
As @pmario points out, avoids nasty interactions with the sidebar
2013-04-27 16:24:41 +01:00
Jeremy Ruston
f487ea68d1 Store the parser list in the wiki constructor 2013-04-25 17:40:12 +01:00
Jeremy Ruston
e42a062dcc Fixed bug with negated title filter 2013-04-25 10:03:37 +01:00
Jeremy Ruston
82308f642a Use the text parser to parse CSS 2013-04-25 09:05:17 +01:00
Jeremy Ruston
64eadcfc41 Add an HTML parser
Allows one to embed raw HTML in wikitext with `$$$.html`/`$$$`
2013-04-10 17:02:37 +01:00
Jeremy Ruston
94287c9ac3 Tidying up drag and drop 2013-04-10 16:55:25 +01:00
Jeremy Ruston
e39d246317 Added basic support for drag and drop of tiddlers
Links are now draggable. Dragging outside the browser will drop the
wiki text of the tiddler. Dragging to another TW5 browser window will
drop the entire tiddler, including fields.
2013-04-08 18:47:46 +01:00
Jeremy Ruston
45ee2b3048 Fix bug that was preventing pasting into edit textareas or input boxes 2013-04-05 13:57:55 +01:00
Jeremy Ruston
b69f87484d Remove extraneous debugging code 2013-04-04 14:24:37 +01:00
Jeremy Ruston
4bcebf5bbf Fix HTML element parser to not pass capturing parenthesis in terminating regexp 2013-04-04 14:24:21 +01:00
Jeremy Ruston
dc00e584fb Add support for filtering shadow tiddlers 2013-04-03 14:29:12 +01:00
Jeremy Ruston
6c210df0bd Update HTML deserializer to cope with TiddlyWiki classic and TW5 files 2013-04-03 12:57:17 +01:00
Jeremy Ruston
c182533efc Parse TiddlyWiki classic wikitext as plain text
Too many errors if we try to parse it as TW5 wikitext
2013-04-02 18:20:38 +01:00
Jeremy Ruston
a17e3588a6 Fix problem triggered by stale history list 2013-04-02 09:28:48 +01:00
Jeremy Ruston
c287d9d6d0 First pass at a widget for importing tiddlers 2013-04-01 19:06:39 +01:00
Jeremy Ruston
d99db91dd5 Fixed attribute assignment 2013-03-28 21:47:51 +00:00
Jeremy Ruston
0f0a96c4da Update list widget to transclude block vs. inline correctly 2013-03-28 21:29:42 +00:00
Jeremy Ruston
abf3673fc9 Update texteditor to respect prevailing classes and styles 2013-03-28 21:29:20 +00:00
Jeremy Ruston
cd36f594c5 Make the core into a plugin 2013-03-28 17:07:30 +00:00
Jeremy Ruston
54d858a371 Improved default logic for the reveal widget 2013-03-27 13:48:39 +00:00
Jeremy Ruston
e88db07085 Fixed problem with ignored default in wiki.getTiddlerText() 2013-03-27 13:48:17 +00:00
Jeremy Ruston
b6345a9223 Remove logging from the server command
We really need to update the logging infrastructure
2013-03-25 20:19:36 +00:00
Jeremy Ruston
f427339a78 Add renderContext parameter to wiki.renderTiddler 2013-03-25 10:42:14 +00:00
Jeremy Ruston
70def07d63 Clearer logging preparatory to implementing file synchronisation 2013-03-24 12:53:09 +00:00
Jeremy Ruston
2870a09dc1 Make some of the sync adaptor methods be optional 2013-03-24 12:27:46 +00:00
Jeremy Ruston
638ed6429c Show affected filepaths on the server
Preparatory to doing file sync on the server
2013-03-23 22:43:39 +00:00
Jeremy Ruston
4848a21c6b Add GettingStarted tiddler for empty TiddlyWikis 2013-03-21 22:21:34 +00:00
Jeremy Ruston
6f88a57a41 Add wiki.countTiddlers() method 2013-03-21 22:21:00 +00:00
Jeremy Ruston
738952029b Icons for editing tiddlers 2013-03-20 17:20:46 +00:00
Jeremy Ruston
0d2ac57ff7 Make static links to tiddlers with spaces work
A bit of a hack - the savetiddlers command should generate filenames
better
2013-03-20 11:02:06 +00:00
Jeremy Ruston
cbf2e9add9 Add fieldgrid in tiddler info dropdown 2013-03-19 22:39:24 +00:00
Jeremy Ruston
d4ada346dd The list widget should parse the empty message as inline text 2013-03-19 22:39:04 +00:00
Jeremy Ruston
2aff4db744 Fix relative date viewer so that it displays absolute dates in static HTML representations 2013-03-19 19:06:23 +00:00
Jeremy Ruston
ec83bc5c64 Bring back the relativedate viewer 2013-03-19 18:59:13 +00:00
Jeremy Ruston
dbfbad3dd3 Let view widget viewers get postRenderInDom() callbacks 2013-03-19 18:59:00 +00:00
Jeremy Ruston
28707edd72 Decode paths for TiddlyFox 2013-03-19 18:36:27 +00:00
Jeremy Ruston
5a6c2b91f8 Parse JSON as text so that it doesn't generate missing tiddlers 2013-03-19 18:26:55 +00:00
Jeremy Ruston
952f1b3900 Add tiddler info dropdown
Including backlinks
2013-03-19 16:45:07 +00:00
Jeremy Ruston
069bb624e5 Fix popup removal 2013-03-19 16:44:32 +00:00
Jeremy Ruston
7cb65a3816 Add 'missing' and 'orphan' tabs 2013-03-19 10:14:44 +00:00
Jeremy Ruston
a1260dc57d Basic first implementation of tabs for the sidebar 2013-03-18 22:18:54 +00:00
Jeremy Ruston
4af8026e28 Fix savetiddlers command to create files with special characters in the name 2013-03-18 22:16:01 +00:00
Jeremy Ruston
5b6376a386 Better titles for drafts of new tiddlers 2013-03-18 10:59:47 +00:00
Jeremy Ruston
5e12868e76 Fixes to ensure revision field is always a string
TiddlyWeb returns it as a number, which seems like it might be an
accident.
2013-03-18 10:13:36 +00:00
Jeremy Ruston
d14c61ef45 Switch "userName" to "username"
Because the former is naff
2013-03-17 19:37:31 +00:00
Jeremy Ruston
822f436534 Fix revision handling 2013-03-17 19:26:13 +00:00
Jeremy Ruston
d19fa16ca6 Fix inclusion of revision field when getting a tiddler 2013-03-17 19:25:59 +00:00
Jeremy Ruston
2624fed4f1 Get rid of the support for old-style syncers 2013-03-17 18:45:22 +00:00
Jeremy Ruston
210f596d0c Marginally improve the elegance of the simple HTTP server 2013-03-17 17:57:46 +00:00
Jeremy Ruston
dbde2bf23b Started refactoring TiddlyWeb syncer into generic syncer + TiddlyWeb adaptor
The refactored plugin is `tiddlyweb2` for the moment. The idea is to be
able to use the same syncer with a different adaptor for syncing
changes to the local file system.
2013-03-17 15:28:49 +00:00
Jeremy Ruston
8e6ce3733d Use "self" rather than "me" for consistency 2013-03-17 15:06:09 +00:00
Jeremy Ruston
17a9cdd1e3 Remove initSyncers() from wiki.js 2013-03-16 11:06:44 +00:00
Jeremy Ruston
71aa79013d Remove invokeSyncers() method from wiki.js 2013-03-16 10:58:47 +00:00
Jeremy Ruston
854e8d7083 Use the wiki event mechanism to dispatch lazyLoad notifications to syncers
We're trying to get to the point where wiki.js doesn't know about
syncers
2013-03-16 10:50:36 +00:00
Jeremy Ruston
c3b57507b0 Refactored wiki event mechanism to support multiple event types 2013-03-16 10:42:46 +00:00
Jeremy Ruston
623a3ec8f8 Rename "shadow" tiddlers to "system" tiddlers
What we have at the moment isn't really the same as TiddlyWiki
classic's shadow tiddlers, it's a much simpler system for excluding
tiddlers. We'll use the term "shadow" instead to refer to the way that
tiddlers in plugins behave, which is exactly like TiddlyWiki classic's
shadow tiddlers.
2013-03-15 22:00:19 +00:00
Jeremy Ruston
e5443e27cb Minor tweaks to getTiddlers 2013-03-15 20:02:31 +00:00
Jeremy Ruston
71ecb022ef Update TiddlyWeb support
Lots of changes:
* Make the built-in server support recipes and bags, albeit there's
just one of each, called "default"
* Correctly parse returned Etag to get bag of freshly PUT tiddlers
* URI encoding for tiddler titles, so that tiddlers with slashes and so
on work OK
2013-03-12 19:18:56 +00:00
Jeremy Ruston
7e57c422dc Re-introduce video widget 2013-03-12 19:17:13 +00:00
Jeremy Ruston
6b78352764 Fixed handling of deleting tiddlers over HTTP 2013-03-11 10:04:44 +00:00
Jeremy Ruston
ab8fc26ba1 Update server command to be compatible with the TiddlyWeb syncer
Now TW5 in the browser can use the TiddlyWeb syncer to talk to TW5 on
the server
2013-03-10 19:28:24 +00:00
Jeremy Ruston
00ad0bc7a9 Docs update 2013-03-10 19:27:44 +00:00
Jeremy Ruston
fc33df8829 Add support for deleting tiddlers 2013-03-10 19:24:49 +00:00
Jeremy Ruston
21cb1e233e Add "info" widget for displaying information about tiddlers
Currently only supports displaying the changecount of a tiddler
2013-03-10 19:24:22 +00:00
Jeremy Ruston
83a141752c Further simplifications to syncer interface
Dropped the idea of exposing separate server connections
2013-03-09 09:54:01 +00:00
Jeremy Ruston
3da508b7c4 Simplify syncer interface 2013-03-08 20:29:13 +00:00
Jeremy Ruston
7d589b4b27 Removed extraneous debugging code 2013-03-08 17:50:40 +00:00
Jeremy Ruston
0731135866 Adding comment 2013-03-07 17:18:04 +00:00
Jeremy Ruston
f85afdb964 Fixed #70 2013-03-06 22:12:21 +00:00
Jeremy Ruston
06c5308c4b More explicit name for "touchTiddler"
Thanks to @boycook for the conversation that triggered this refactoring
2013-03-05 19:59:55 +00:00
Jeremy Ruston
9155b8475f Use synchronous file writes for saving tiddlers
So that we don't get problems with "docs.tid" overwrites "Docs.tid"
halfway through each other
2013-03-05 11:56:15 +00:00
Jeremy Ruston
8e9b2996eb Restore qualifyHoverTitles attribute to link widget 2013-03-05 11:55:25 +00:00
Jeremy Ruston
15a9e04a6a Add support for static site generation
See http://five.tiddlywiki.com/static.html for an example
2013-03-04 18:15:54 +00:00
Jeremy Ruston
c24c00e8d6 Make the htmwikified viewer pass the renderContext through 2013-03-04 18:05:22 +00:00
Jeremy Ruston
fc79db53ab Allow templating with the link widget
And add some documentation
2013-03-04 11:13:10 +00:00
Jeremy Ruston
79bb082b92 Restore password widget
Hence allowing TiddlySpot integration to work again
2013-03-04 11:12:49 +00:00
Jeremy Ruston
4c06bd72de Fix #59
Much more intelligent automatic scrolling
2013-03-03 20:06:23 +00:00
Jeremy Ruston
d7896f051a Fixed problem with greediness of filtered transclude regexp 2013-03-02 13:01:44 +00:00
Jeremy Ruston
25df8bae6a Quick fix to allow wikilinks to be disabled
And using it to disable wikilinks in the readmes
2013-03-01 18:04:53 +00:00
Jeremy Ruston
9cbee467cb Smaller titles for modal dialogs 2013-03-01 09:13:10 +00:00
Jeremy Ruston
6c4a2a6026 Fix modal dialogue to use inline parsing for header and footer 2013-02-10 18:44:00 +00:00
Jeremy Ruston
f3acc92730 Tweak removal animation in classic list view 2013-02-09 17:18:00 +00:00
Jeremy Ruston
114e8f4145 Remove extraneous newline in HTML representation 2013-02-09 17:07:52 +00:00
Jeremy Ruston
c76d038b8e Update command line processing to allow a wiki path to be specified 2013-02-09 17:07:18 +00:00
Jeremy Ruston
6584939114 Less confusing method name 2013-02-08 09:22:21 +00:00
Jeremy Ruston
5fd73a2b8d Remove obsolete modules
ArgParser was used by the old tw2 parser, and the Sprite animator was
never actually used
2013-02-08 09:22:02 +00:00
Jeremy Ruston
87986a945d Animation tweaks for classic listview 2013-02-06 17:06:48 +00:00
Jeremy Ruston
b0a20e704b Restored the classic listview 2013-02-06 11:27:09 +00:00
Jeremy Ruston
1b2cdf9cd0 Use string.charAt(n) instead of string[n]
Safari doesn't seem to like the string indices in some circumstances
2013-02-05 19:12:05 +00:00
Jeremy Ruston
170c1425f7 Normalise custom event names 2013-02-04 15:29:25 +00:00
Jeremy Ruston
365974d14f Improved generation of titles for draft tiddlers 2013-02-04 11:56:11 +00:00
Jeremy Ruston
30d0dec1fa Replacement styles
Smaller simpler styles (including CSS reset from
https://github.com/necolas/normalize.css/)
2013-02-03 23:02:23 +00:00
Jeremy Ruston
5df60aaa3c Don't render content or closing tag for void elements 2013-02-03 17:44:40 +00:00
Jeremy Ruston
c85acd71fe Move the void element list into the main config file 2013-02-03 17:44:28 +00:00
Jeremy Ruston
4289a027d4 Add newlines after opening and closing tags
Which also fixes the problem with the PRE tag eating it's first newline
2013-02-03 17:11:03 +00:00
Jeremy Ruston
5028da3953 Better wording and button colours for password UI 2013-02-02 12:06:59 +00:00
Jeremy Ruston
a9de17bd55 Restore encrypted TiddlyWiki support 2013-01-31 10:20:13 +00:00
Jeremy Ruston
9a71117853 Prettify JSON 2013-01-28 19:27:22 +00:00
Jeremy Ruston
32331a8764 Process DefaultTiddlers on the server as well as the browser
Thus fixing the baking of static.html
2013-01-23 12:36:42 +00:00
Jeremy Ruston
83900b0230 Fixed problem with erroneous rendering of empty HTML tags
We were doing things like `<div />`, which HTML doesn't like
2013-01-23 12:36:08 +00:00
Jeremy Ruston
bae48d5526 Stop base64 encoding context scope IDs
The base64 encoding wasn't working on node.js, and is a bit messy
2013-01-23 12:35:21 +00:00
Jeremy Ruston
d91f12f30a Turn the recipe deserialiser into a plugin in the tw2 edition 2013-01-22 08:56:21 +00:00
Jeremy Ruston
f37e99d1fb Extend fields widget to allow stripping of prefixes from tiddler titles
This functionality is a bit specific to the production of TW2, and so
might be refactored elsewise in the future.
2013-01-21 17:26:43 +00:00
Jeremy Ruston
d3fefa8b16 Fixed regexp for filtered transclusion
Previously we couldn't use filter expressions that included curly braces
2013-01-21 17:24:47 +00:00
Jeremy Ruston
dd3433f39f Fixed problem with closing all tiddlers in a story 2013-01-18 15:36:49 +00:00
Jeremy Ruston
5e7e1fa93d Re-introduce the checkbox widget 2013-01-18 09:33:16 +00:00
Jeremy Ruston
71f6194f01 Introduce a simple listview that scrolls to newly inserted entries 2013-01-17 13:52:46 +00:00
Jeremy Ruston
94744843b6 Added new tiddler button 2013-01-17 11:38:02 +00:00
Jeremy Ruston
aba120befc Added text and bitmap editors 2013-01-17 11:30:35 +00:00
Jeremy Ruston
106099d991 Removed obsolete code 2013-01-17 11:29:35 +00:00
Jeremy Ruston
e024440ca8 Fixed transclude widget to only refresh when the template changes
Not when the tiddler being viewed changes; any such changes will be
picked up by embedded view widgets.
2013-01-17 11:29:21 +00:00
Jeremy Ruston
df59dee188 Removed ability for widgets to not generate any elements
It interfered with the refresh mechanism
2013-01-17 11:28:24 +00:00