1
0
mirror of https://github.com/Jermolene/TiddlyWiki5 synced 2024-11-27 20:10:03 +00:00
Commit Graph

1558 Commits

Author SHA1 Message Date
buggyj
710759daed added support for xlink: attribute prefix 2014-08-30 17:25:04 +02:00
Jermolene
2952afe7af Fix for autosave
Re-introduces the “tw-auto-save-wiki” message. The previous approach of
automatically triggering autosave whenever a tiddler changed meant that
changing configuration changes in control panel was triggering an
autosave. Using the explicit message gives us better control of the
situations in which we’ll autosave.

Now we solve the earlier problem of there being outstanding tiddler
change events at the time that we process the “tw-auto-save-wiki” by
deferring the autosave until the outstanding change event comes in.
2014-08-29 09:58:30 +01:00
Jermolene
48312272ad Extend 'all' filter operator to select all source tiddlers 2014-08-29 09:54:31 +01:00
Jermolene
89fd5379dd Change "tw-*" variables to "tv-*" 2014-08-28 22:28:02 +01:00
Jermolene
2f69ea362c Rename "tw-*" messages to "tm-*" 2014-08-28 21:43:44 +01:00
Jermolene
43aeb47fc3 Skip whitespace from start of inline macro definitions
Now `\define mymacro() yes` will not have a leading space in the
variable value
2014-08-28 20:21:09 +01:00
Jermolene
d945492b8b Fixed text widget crashing when text is missing
`<$text text=<<missingVariable>>/>` was crashing
2014-08-28 20:20:38 +01:00
Jermolene
f223310d34 Yet more "tw-*" -> "tc-*"
Part of #764
2014-08-28 19:41:29 +01:00
Jermolene
a1ec52c5cb Rename more "tw-*" classes to "tc-*"
Part of #764
2014-08-28 19:08:31 +01:00
Jermolene
8b10994cfe Rename more "tw-*" classes to "tc-*"
Part of #764
2014-08-28 18:59:35 +01:00
Jermolene
1814d502a4 Convert more "tw-*" classes to "tc-*" 2014-08-28 18:47:21 +01:00
Jermolene
787481a804 Change more "tw-*" classes to "tc-*"
Part of #764
2014-08-28 18:21:08 +01:00
Jermolene
4a1c530da7 Rename "tw-tiddlylink-*" classes to "tc-tiddlylink-*"
Part of #764
2014-08-28 18:13:46 +01:00
Jermolene
54591100b5 Rename "modal-*" classes to "tc-modal-*"
Part of #764
2014-08-28 17:34:02 +01:00
Jermolene
90f0fc22ff Rename "title" class to "tc-title"
Part of #764
2014-08-28 17:25:07 +01:00
Jermolene
d8c3691bd1 Removed unneeded CSS classes
Part of #764
2014-08-28 17:17:50 +01:00
Jermolene
112a9a95d9 Make prefix/suffix operators be case sensitive
I think it was a mistake for them to be case insensitive in the first
place.

https://groups.google.com/d/topic/tiddlywiki/dzpFsRCC5D8/discussion

If case insensitivity is required then regexps can be used instead.
2014-08-28 15:27:10 +01:00
Jermolene
ad40223d6b Revert incorrect refreshing of tiddler widget
Mistakenly, I had changed the tiddler widget to refresh itself when the
value of the target tiddler changed. This is not in fact necessary; it
only needs to refresh itself when the identity of the target tiddler
changes.

Fixes #744
2014-08-28 15:16:14 +01:00
Jermolene
2e3221c4e0 Fix for removesuffic operator 2014-08-28 14:48:03 +01:00
Jermolene
dcf4e93a32 Add suffix and removesuffix filters 2014-08-28 14:46:00 +01:00
Jermolene
13c4e028b1 Refactored autosave mechanism
Previously we were using a message `tw-auto-save-wiki` to trigger an
autosave. The message was generated by certain UI actions such as
saving a tiddler. The trouble was that the message was being processed
before the wiki change event for the accompanying change had had a
chance to percolate. The end result was that the dirty indicator was
staying lit when using autosave.

The new approach abandons the autosave message and instead triggers the
autosave in the wiki change event when a relevant change occurs.

One happy side effect of these changes is that the dirty indicator now
works as expected with the client server edition - ie, when typing in a
draft tiddler the dirty indicator will flash briefly, and then clear
when the sync mechanism has completed saving the draft.
2014-08-27 10:04:54 +01:00
Jermolene
9d871309c2 Remove stray console.log 2014-08-27 09:59:15 +01:00
Jermolene
ab41462af3 Ensure that savers invoke the callback 2014-08-27 09:59:01 +01:00
Jermolene
e47852cb14 Stop clearing the location hash for tw-browser-refresh 2014-08-26 14:19:12 +01:00
Jermolene
2bbe9f76ec Block temporary state tiddlers from import/upgrade 2014-08-20 13:52:59 +01:00
Jermolene
a105b52399 Refactor saver handler
Fixing problems caused by c4b76ceb0b:

* We still need to initialise the saver-handler even when syncing to a
server, otherwise offline snapshots can’t be saved
* We need to override the default save template a bit further up the
stack, to avoid the server side serving the offline version of the wiki
at `/`
2014-08-20 10:02:44 +01:00
Jermolene
fbf307c648 Add alt attribute to image widget 2014-08-20 10:00:34 +01:00
Jermolene
0dfe23e0db Rename tw-refresh message to tw-browser-refresh 2014-08-19 13:11:18 +01:00
Jermolene
920e11e792 Introduce refresh button and revert home button
Now the home button behaves as it did in 5.0.13, and the new refresh
button does a full page refresh.
2014-08-19 12:12:36 +01:00
Jermolene
a637af022d Fix problem with parseTextReference not recognising missing indices 2014-08-18 10:13:30 +01:00
Jermolene
bea83bfe55 Fix problem with refreshing the edit widget 2014-08-16 15:01:04 +01:00
Jermolene
18592fe8f8 Fix problem with edit widget not refreshing
One symptom of this problem was that changing the type field of a
tiddler didn’t immediately switch to the bitmap editor
2014-08-15 10:06:52 +01:00
Jermolene
c8830d32f7 Fixed problem with building TW under Windows
Fixes #717

The issue was that under Windows we generate text nodes that contained
CRLF as a linebreak (rather than just LF as usual).

The subtle problem is that when these strings are placed in the DOM via
createTextNode(), the CR character is treated as a printable character,
not whitespace. When creating DOM notes with innerHTML or as part of a
static HTML document the HTML parser will strip out the CR characters.

The hacky solution is to manually remove CRs before building the text
node.
2014-08-15 09:40:22 +01:00
Jermolene
f75af2c983 Separate the saver handling out of the syncer 2014-08-14 11:43:07 +01:00
Jermolene
27f1f82a70 Rejigging syncer structuring
The goal is to separate out the saver handling from the syncadaptor
handling; it will take a few steps to get there
2014-08-14 11:12:25 +01:00
Jermolene
d57446f1e4 Remove $tw.syncer global from syncer.js 2014-08-14 08:54:31 +01:00
Jermolene
35fcdd270e Move syncer event handlers into syncer module 2014-08-13 20:25:23 +01:00
Jermolene
449edf99b5 Fix rootwidget handling 2014-08-13 20:20:58 +01:00
Jermolene
7c1cb97f7f Move syncer-browser startup handling into syncer.js 2014-08-13 20:07:08 +01:00
Jermolene
d16bff7787 Move construction of rootwidget into main startup 2014-08-13 20:06:44 +01:00
Jermolene
c9ce606b7c Move the unsaved changes warning into the syncer 2014-08-13 19:29:00 +01:00
Jermolene
57ab9f6167 Translatability for the unsaved changes message
Another bit of #491
2014-08-13 19:14:23 +01:00
Jermolene
b2e1dd2138 Allow whitespace after first line of multiline macro
Fixes the remaining part of #482
2014-08-11 13:52:10 +01:00
Jermolene
2ff2092615 More improvements to control panel plugin formatting 2014-08-08 17:19:48 +01:00
Jermolene
2526bfb078 Disable wikilinking when preceded with dash or underscore
“HelloThere” in “My-HelloThere” shouldn’t be wikified.

Part of #337
2014-08-08 16:20:15 +01:00
Jermolene
f8548cc8f2 Stop classifyinh "÷" (\u00f7) as an upper case letter
Part of #337
2014-08-08 16:12:23 +01:00
Jermolene
9c8564d5b0 Stop classifying "×" (\u00d7) as a lower case letter
Part of #337
2014-08-08 16:09:56 +01:00
Jermolene
d7390dbbe1 Remove support for underscore and dash in wikilinks
Starting to fix #337
2014-08-08 11:13:41 +01:00
Jermolene
5260899d8b Relax requirement for newline after macro definition 2014-08-07 16:00:20 +01:00
Jermolene
7953b95d13 Include subtiddler in transclusion recursion detection 2014-08-07 15:43:48 +01:00
Jermolene
3529625a6c Fix full screen button not supported 2014-08-03 12:35:53 +01:00
Jermolene
bf9a87dc0e Fix CR handling by HTML parser
@pmario and @welford - I’m not presenting this as a fix for #717
because I’m still not in a position to reproduce it.

However, I found this during a review of newline handling code, and
would be interested if it is implicated in the problems you are
reporting.
2014-08-03 09:43:22 +01:00
Jermolene
c8bba8caea Switch to "tw-tagged-" prefix for CSS tags 2014-08-02 13:38:39 +01:00
Jermolene
9b9f7d32a0 Add plugin blocklist
Starting with blocking the old fullscreen plugin
2014-08-02 12:42:05 +01:00
Jeremy Ruston
ae469c3f87 Merge pull request #702 from pmario/701-split-emphasis
splited emphasis.js into several modules to have fine grained control with rules pragma
2014-08-01 18:24:16 +01:00
Jermolene
c23f6af4b5 Add CSS classes for each tag 2014-08-01 17:48:26 +01:00
Jermolene
799a5b059a Move fullscreen button into core from plugin 2014-08-01 16:52:12 +01:00
Jermolene
a61169e7e8 Fix problem with parsing missing tiddlers 2014-07-31 18:07:52 +01:00
Jermolene
18f1634802 Make the tw-home message refresh the page 2014-07-30 22:31:15 +01:00
Jermolene
56945d91d3 Add unsaved changes indicator
The “save” icon changes to red to indicate that there are unsaved
changes.
2014-07-30 16:46:13 +01:00
Jermolene
aea06f7df4 Fix checkbox setting text field to empty string 2014-07-30 11:52:45 +01:00
Jermolene
758762eee3 Autosave after an import 2014-07-29 10:03:43 +01:00
Jermolene
cb0eba73c2 Typo 2014-07-28 14:20:18 +01:00
Jermolene
5f018c2092 More defensive dom utility hasClass()
It was failing on SVG elements such as `<path>`
2014-07-28 14:19:52 +01:00
Jermolene
40b4259e86 Clarify widget constructor docs 2014-07-25 15:26:53 +01:00
Jermolene
be040ea8a2 Add support for variable filter operands
Fixes #583
2014-07-25 15:26:44 +01:00
Mario Pietsch
6de453d796 remove stricethrough.js 2014-07-24 23:51:37 +02:00
Mario Pietsch
bb47f1dbad fix whitespace and filename 2014-07-24 23:49:42 +02:00
Mario Pietsch
95f6c92192 fixed whitespace 2014-07-24 23:47:13 +02:00
Mario Pietsch
7aa6c7c06d splited emphasis.js into several modules to have fine grained control with wikification rules eg: rules except bold ... This fixes #701 2014-07-24 17:43:03 +02:00
Jermolene
1f16ef6fa8 Add support for permalink and permaview 2014-07-24 15:49:09 +01:00
Jermolene
eecb9126cd Fix checkbox widget to work with missing tiddlers 2014-07-24 15:43:37 +01:00
Jermolene
fd82112700 Sort out info mechanism docs
Some of it belongs in the browser-sniff plugin

Also add a `$:/info/node` info tiddler.
2014-07-22 15:16:18 +01:00
Jermolene
3d8626dafa Move browser sniffing into a plugin 2014-07-21 13:17:16 +01:00
Jermolene
b4d47858e5 Introduce info mechanism
We expose browser information as shadow tiddlers so that wiki
applications can adapt to available features.
2014-07-20 18:07:30 +01:00
Jermolene
9ddff6d8c0 Move startup.js into the startup folder
Neater.
2014-07-20 18:06:33 +01:00
Jermolene
0cf63ab9f0 Add theme tweaks upgrader 2014-07-18 20:00:05 +01:00
Jermolene
f793816dfa Add subtiddler support to the transclude widget
Useful to be able to reach into plugins. It will enable us to do things
like extract readmes from themes that are not active.
2014-07-17 18:41:20 +01:00
Jermolene
89989c737e Fix bug with import tiddler handling 2014-07-17 15:02:42 +01:00
Jermolene
e40a0c07b8 Fix support for upgrading encrypted wikis
Importing an encrypted wiki ordinarily doesn’t place the password in
the password vault on the basis that one ought to be able to import
from a file without automatically inheriting its password.

Now there’s a configuration option that can be used by the upgrade
plugin to cause the password vault to be updated with any password
entered by the user. The end result is that the user only needs to
enter their password once.
2014-07-16 10:06:24 +01:00
Jermolene
c92a21ff14 Remove extraneous debugger statement 2014-07-14 21:51:56 +01:00
Jermolene
c0edca78c8 Beginning of one-shot UI for upgrade.html 2014-07-14 14:53:21 +01:00
Jermolene
5a23c883e2 More defensive checks
We’ve had a few bugs with the symptom of ‘text’ being undefined.
2014-07-14 14:52:00 +01:00
Jermolene
7998686cb3 Fix typo affecting transclusion recursion detection 2014-07-14 14:50:46 +01:00
Jermolene
1f6e16318a First pass at upgrade mechanism 2014-07-12 09:09:36 +01:00
Jermolene
f08f57c5d2 Extend checkbox widget to toggle fields 2014-07-12 09:09:13 +01:00
Jermolene
4743d0a863 Fix transclusion recursion detection
We were inadvertantly doing the recursion check before we were checking
if the transclusion target exists.
2014-07-12 09:08:52 +01:00
Jermolene
9de679b84b Fix tiddler widget to refresh properly
Previously wasn’t refreshing for changes to the tiddler that it refers
to
2014-07-12 09:08:20 +01:00
Jermolene
811df7bbf0 Refactor animation easings 2014-07-08 10:07:17 +01:00
Jermolene
3351ae7e29 Fix issue with localStorage error on Firefox
Firefox raises an error if window.localStorage is accessed when cookies
are disabled:

https://bugzilla.mozilla.org/show_bug.cgi?id=771890
2014-07-06 10:11:21 +01:00
Jermolene
465f4ac469 Fix problem with refreshing modal dialogues
Previously any refreshing of the content of a modal would cause a
crash. The problem is the way that we steal the root widget for the
render trees used in the modal. The root widget is tied to the
container DOM node for the main content area, which isn’t actually a
parent of the modal DOM nodes, hence the confusion for the refresh
mechanism.
2014-07-04 21:07:35 +01:00
Jermolene
c9d4714e98 Extend makeTranscludeWidget
Add support for specifying the filename, and the fallback content
within the transclude widget that is used if the transclusion target
isn’t found
2014-07-04 21:03:11 +01:00
Jermolene
5b3b62f93d Fix bug handling of build command
We were taking the commands expanded from the build targets and placing
them at the end of the queue. That caused a problem whereby the
prevailing output folder was always the last one in the command token
list.

Now we splice the new commands into the command token list at the
current position.
2014-06-24 12:09:10 +01:00
Jermolene
6f3e31abe5 Fixed problems with detecting changes to draft tiddlers 2014-06-23 23:28:22 +01:00
Jermolene
6d1eaeb0fc Fix detection of draft changes
We were getting a lot of problems where changes to a tiddler were not
being recognised
2014-06-23 08:10:32 +01:00
Jermolene
680fe41ed7 Add isEqual() method to tiddlers 2014-06-23 08:09:59 +01:00
Jermolene
32a1da7673 Fixed problem with pasted items lacking a type 2014-06-22 11:58:00 +01:00
Jermolene
9987e6de22 Fix problem with overwriting existing tiddlers 2014-06-22 11:45:00 +01:00
buggyj
0206358a1c added missing regex update for triple double-quotes macro params 2014-06-19 19:17:26 +02:00
Jeremy Ruston
0c48502e8e Merge pull request #660 from buggyj/jsonparams
added triple double-quotes delimiters for marco/widget parameters (to su...
2014-06-19 12:06:00 +01:00
buggyj
a2ec4c55e3 added triple double-quotes delimiters for marco/widget parameters (to support json strings) 2014-06-19 07:29:14 +02:00
Jermolene
a9b7df96c2 Add support for TIDDLYWIKI_EDITION_PATH 2014-06-17 21:59:20 +01:00
Jermolene
06b0f9adb7 Added aria-label attribute to link widget
And document it for the button widget
2014-06-17 07:54:10 +01:00
Jermolene
eeedcb6d94 First pass at accessibility improvements for #650 2014-06-14 18:06:56 +01:00
Jermolene
f09d69d1b7 Remove debugging code 2014-06-13 14:44:43 +01:00
Jermolene
eee3a0cf8e Extend server command to allow a path prefix
Thereby making the number of parameters to the command ludicrous
2014-06-13 14:44:34 +01:00
Jermolene
4238af2a40 Extend listed filter operator to use any field 2014-06-13 10:58:19 +01:00
Jermolene
9ab0c84140 Support global macros via the importvariables widget
The new importvariables widget imports macro/variable definitions from
the specified tiddlers and makes them available to its children.

Allows us to split PageMacros up into separate tiddlers.

We still support loading macros from $:/core/ui/PageMacros to help
people upgrading.

Fixes #644 and #559
2014-06-12 18:01:33 +01:00
Jermolene
9547a1f01c First pass at external image support
A bunch of little changes that together enable external image support.
Try:

```
tiddlywiki editions/tw5.com --verbose --build externalimages
```

Then open `externalimages.html`, look for the images in the more/types
tab of the sidebar, open them and verify that they are set with an
external SRC attribute, not a data URI.
2014-06-12 08:36:30 +01:00
Jermolene
f131c37893 Update HTML parser to use an IFRAME
Gives us better sandboxing of unsafe HTML content
2014-06-11 23:04:58 +01:00
Jermolene
d2796d0c9c Introduce setfield command
This new command will let us do the manipulations needed to set up
external image tiddlers
2014-06-11 10:05:35 +01:00
Jermolene
a03a15e7de Allow the text widget to refresh if needed 2014-06-10 19:32:55 +01:00
Jermolene
305617b632 Introduce savetiddlers command
Allows us to save tiddlers in their raw format.
2014-06-09 14:45:41 +01:00
Jermolene
247eb04b11 Extraneous semi-colon 2014-05-31 19:18:01 +01:00
Jermolene
3182a2d599 Add first pass at select widget 2014-05-31 18:37:43 +01:00
Jermolene
f999b2e931 Add wiki.setText() method 2014-05-31 18:37:27 +01:00
Jermolene
a330cb543e Better defaults for radio widget
Now the “field” attribute defaults to “text”.
2014-05-31 18:35:41 +01:00
Jermolene
3f25db0abe More permalink tweaks
And more documentation this time!
2014-05-29 23:17:21 +01:00
Jermolene
412cde6f53 Move "storyviews" filter operator to correct folder 2014-05-28 17:17:47 +01:00
Jermolene
f7b8813a27 Change permalink behaviour
Now a link to a single tiddler like http://tiddlywiki.com/#HelloThere
will just open that single tiddler (the old behaviour was to also open
the default tiddlers)
2014-05-28 17:07:41 +01:00
Jermolene
da273be054 Workaround Firefox "no element found" bug
See https://bugzilla.mozilla.org/show_bug.cgi?id=884693

Fixes #468
2014-05-27 09:49:48 +01:00
Jermolene
9aaa000d3f Fixed default tiddler not appearing in zoomin view
See https://groups.google.com/d/topic/tiddlywiki/c-z7f-h1CAo/discussion
2014-05-26 22:56:28 +01:00
Jermolene
f44f2b33ed Fixed missing class on external pretty links 2014-05-26 17:57:35 +01:00
Jermolene
86d182fd51 Fix importing blank fields from TiddlyWiki files 2014-05-26 17:47:07 +01:00
Jermolene
31e1088aa7 Clean up startup logging
Now we do boot logging to an array. We harvest it in the —verbose
command. We still need to provide a way to access the log in the
browser too.
2014-05-15 18:50:14 +01:00
Jermolene
c9c1b0fbb4 Get rid of the tweakParseTreeNode() hack
It’s an embarrassing hangover from a refactoring of the parsing
mechanism last year.
2014-05-14 08:51:08 +01:00
Jermolene
9a26c4259a Fix problem with widget.getStateQualifier()
Fixed to take into account the recent change to read variables from the
parent widget: e60fc9f81f
2014-05-13 18:16:45 +01:00
Jermolene
ad43958571 Make permalink behaviour configurable
In the process introducing a new advanced settings tab

Fixes #600
2014-05-13 14:16:58 +01:00
Jermolene
75fee26b58 Fix problem with variables containing an empty string
See
https://github.com/Jermolene/TiddlyWiki5/commit/e60fc9f81f2c8f0d115543d8
d330a1d68f9b890a#commitcomment-6301921
2014-05-13 10:15:55 +01:00
Jermolene
e83759e86d Add "before" and "after" filter operators
Fixes #357 by adding new “before” and “after” filter operators.
2014-05-12 15:16:44 +01:00
Jermolene
e60fc9f81f Fixed problem with widgets variable access
Previously, widgets were reading variables from themselves or their
cascaded ancestors. That means that if a widget sets a variable and
then reads the same variable, it will get the same variable back. That
sounds reasonable, until you consider a widget that wants to modify a
variable - eg the tiddler macro. For example:

```
<$tiddler tiddler={{!!report}}>
<$transclude mode="block" />
</$tiddler>
```

Here we first evaluate the `{{!!report}}` reference, which involves
reading the currentTiddler variable, looking up the tiddler, and
retrieving it’s `report` field. The next the tiddler widget is
refreshed, it will use the newly set currentTiddler as the basis for
resolving the `{{!!reference}}` reference.

The fix is to get variables from ancestors, but continue to set them on
ourselves.
2014-05-08 11:51:02 +01:00
Jermolene
6ab68e0fca Remove erroneous global wiki references
$tw.wiki is used as a global reference in the outer initialisation
modules. It shouldn’t be used in widgets etc.
2014-05-07 14:49:14 +01:00
Jermolene
e548dd35af Restored drag and drop functionality within TEXTAREAs and INPUTs
As mentioned by @Skeeve in #592
2014-05-07 14:32:14 +01:00
Jermolene
e676156b24 Fixes for running TiddlyWiki on node-webkit
See Jermolene/TiddlyWiki5NodeWebkit
2014-05-07 09:59:21 +01:00
Jermolene
854b739a35 Implement explicit external links 2014-05-06 20:05:51 +01:00
Jermolene
abe0ce28b9 Fix typos in docs for image parser 2014-05-06 19:00:34 +01:00
Jermolene
7c8c5cf745 Fix problem with parsing main UI boot tiddlers
We were parsing the boot tiddlers, making them into a widget and then
refreshing the widget tree. The problem is that subsequent chances to
the boot tiddlers themselves wouldn’t be picked up as part of the
refresh.

Now we indirectly parse those UI boot tiddlers through a transclusion,
which does get refreshed in the desired way.
2014-05-06 10:14:22 +01:00
Jermolene
b84c663215 Add proper rendering of document title 2014-05-05 23:00:09 +01:00
Jermolene
4e101e240c Suppress history when changing the permalink URL 2014-05-05 21:51:54 +01:00
Jermolene
56251dc1f8 Fixes #598
Ensure we don’t generate permalinks with a target that is not in the
current story
2014-05-05 21:23:29 +01:00
Jermolene
f368175cb0 Remove debugging code 2014-05-05 20:58:47 +01:00
Jermolene
986a20b22b Fixes for permalinks not working on Firefox
Sigh. It’s frustrating that the few browser differences I’m running
into in 2014 are mostly horribly familiar from 2005
2014-05-05 19:21:57 +01:00
Jermolene
ffb6c8ab81 Add hex colours to tag manager
Fixes #597
2014-05-05 18:42:25 +01:00
Jermolene
b24ec8009d Missing dependency 2014-05-05 17:06:24 +01:00
Jermolene
9965c64b6f More refactoring of startup.js 2014-05-05 15:25:51 +01:00
Jermolene
2a50277219 Fix problem with syncer not being initialised on server 2014-05-05 14:44:32 +01:00
Jermolene
3cce12e13f More refactoring of startup.js 2014-05-05 14:41:46 +01:00
Jermolene
887e9d978b Fix problem with saving if URL contains # 2014-05-05 13:30:31 +01:00
Jermolene
a0022a1cd6 Refactoring more of startup.js into modules 2014-05-05 10:17:50 +01:00
Jermolene
519e1b4a44 Pull more of startup.js out into separate modules 2014-05-03 21:23:51 +01:00