Commit graph

187 commits

Author SHA1 Message Date
Jacques Distler
ae0274783d Small Fixes
Get rid of 'markdown' attribute on SVG-Edit
whitelist (it's no longer needed).

Slightly smarter detection of existing SVGs.
2010-03-06 18:28:51 -06:00
Jacques Distler
d33b072cba The Task of Sisyphus
Correcting, and re-correcting the bugs in SVG-Edit.
2010-03-05 22:59:45 -06:00
Jacques Distler
5a5ff87286 Fix Bug in itex Extension
Firefox was too lenient, in allowing
you to append nodes from another document to
the svg canvas. Use adoptNode(), to do things
right. (Google Chrome is more strict about this.)
2010-03-05 16:19:12 -06:00
Jacques Distler
e75c0cc81c Sync with latext SVG-Edit
Subpath tool.

Also make the itex tool a little more selective
(only applies to <foreignObject>s with a <math> firstChild.
2010-03-04 00:05:36 -06:00
Jacques Distler
dcfe870a02 Fix foreignObject
Fix SVG-Edit Issue 503.
Selecting a foreignObject was
mistakenly setting the stroke to 'none'.
2010-02-27 16:39:57 -06:00
Jacques Distler
519f81ab20 Try to make Jeff happy
Make use of a nonce for setting SVG-Edit IDs
option. By default, SVG-Edit behaves as before.
Calling svgCanvas.randomizeIds(true) gives our
behaviour, instead.

Also, sync with latest SVG-Edit (but disable,
for now, manual editing of IDs).
2010-02-27 09:49:02 -06:00
Jacques Distler
8a851eeab2 Sync with latest SVG-Edit
Fixes Issue 502 (Connector
lines are not re-editable).
2010-02-26 14:51:27 -06:00
Jacques Distler
f7f1668e31 Fix killer bug when attempting to edit SVGs from prior SVG-Edit versions
D'Oh!
2010-02-25 10:56:18 -06:00
Jacques Distler
aa0a151ba4 Uniquify IDs in SVG-Edit
Since we can have several SVG-Edit graphics
on a page, SVG-Edit should assign unique IDs
to elements, and do so in a fashion that survives
re-editing.

To do this, we use a nonce, and record its value in
a custom se:nonce attribute on the <svg> element.
(Is there a better way?). 

Also, preserve the custom se:connector attribute for
later editing purposes.
2010-02-25 02:25:16 -06:00
Jacques Distler
4cd626ef49 Cleanup itex extension
Most of the DOM manipulations can be done
before doing the AJAX call. This leaves
just the insertion of the MathML nodes in the
mrow for the AJAX callback function.

Also, make the stroke-width for the connector tool 
default to 2.
2010-02-23 17:24:23 -06:00
Jacques Distler
d201f79766 No Need to Double-Escape
Apparently, JQuery takes care of all of the
escaping we need. So ditch our own escaping
(which effectively double-escaped everything).
2010-02-23 10:16:14 -06:00
Jacques Distler
42d92a0b37 More ext-itex.js Fixes
Ajax is asynchronous. Need to 
sanitize in the callback function,
NOT when adding <math> to the DOM.

Need to unescape text for itex editor
window (since JQuery seems to take care
an 'extra' round of escaping).
2010-02-22 23:20:57 -06:00
Jacques Distler
85e0a2cb10 More tweaks
Make the AJAX endpoint configurable (this could still be
done better).
Use POST, rather than GET for the AJAX request, so that
we don't have to worry about overly-long equations.
2010-02-22 21:50:38 -06:00
Jacques Distler
cb1fe51e84 Don't need an xmlns:xlink on the math element
itex2MML puts one on the mrows that are hyperlinks.
2010-02-22 21:35:29 -06:00
Jacques Distler
a1654f1e99 Sync with latest SVG-Edit 2010-02-22 18:53:15 -06:00
Jacques Distler
702b450fd9 itex Endpoint
Add a Rack Metal itex endpoint.
Add an itex tool to SVG-Edit.
Disable the foreignObject tool
(at least, for now) as it doesn't
currently play nice with the itex tool.
2010-02-22 00:05:52 -06:00
Jacques Distler
956d523a4a Change default line thickness
The default stroke-width on various SVG
elements is now 2 (rather than 5).

Also, sync with latest SVG-Edit.
2010-02-20 23:54:20 -06:00
Jacques Distler
c16c67928e Another tweak to the close_path icons 2010-02-20 10:40:40 -06:00
Jacques Distler
f471ba7d59 Close_path Icons, Mark II 2010-02-19 17:06:54 -06:00
Jacques Distler
f84b4370fa Make Closepath Icons Work 2010-02-19 16:37:20 -06:00
Jacques Distler
dab8e5daa1 And your little dog, too ... 2010-02-18 21:02:11 -06:00
Jacques Distler
06262ce257 Aother SVG-Edit fix that got lost in the Great Migration 2010-02-18 20:43:57 -06:00
Jacques Distler
9eb0573eca Fix SVG-Edit Issue #489 2010-02-18 11:04:00 -06:00
Jacques Distler
2dfb852727 Fix connectors to work with foreignObject
Alexis got this working on SVG-Edit trunk.
2010-02-18 10:12:44 -06:00
Jacques Distler
08cd194330 Restore line-height fix for foreignObjects
Line-height is inherited, and the setting in SVG-Edit
ever-so-slightly screws up foreignObject (the bounding box
is not where it should be. This can be fixed in the CSS
(and was, till the great migration to the extensions folder).
2010-02-17 15:44:53 -06:00
Jacques Distler
b302bf36c5 Fixes to foreignObject Extension
(From Alex)
2010-02-17 14:48:49 -06:00
Jacques Distler
ea581a50ae setCustomhandlers
Further whittling away at differences between
Instiki's and the main branch of SVG-Edit.
Now, the saveHandler is set from within the calling
page.

If the editor was opened from Instiki, choosing "Save Image"
now closes the editor window. To leave it open was kinda confusing.

Also sync with latest SVG-Edit changes.
2010-02-17 14:28:00 -06:00
Jacques Distler
4475f02586 Fix SVG-Edit Regression
"text" and "foreignObject" tools should not
disable "line" and "freehand" tools.
2010-02-17 08:26:05 -06:00
Jacques Distler
db5b418659 Andrew Stacey says I can't count ... 2010-02-17 07:29:15 -06:00
Jacques Distler
ce47d49e69 SVG-Edit foreignObject tool refactored as an extension
Thanks to Alexis Deveria. (Though I did fix one small bug.)
My patch-file is now down to a mere 178 lines (a big
chunk of which is Revision 569).
Also, the font-size for foreignObjects defaults to 16pt,
which will be more useful in Instiki.
2010-02-16 23:14:04 -06:00
Jacques Distler
63f1d34d74 Fix a bug in cloning MathML nodes in Firefox
Gecko-based broswers append some weird-shit
attributes. Filter them
2010-02-16 13:55:36 -06:00
Jacques Distler
5094a7339b Make SVG-Edit Clone-Element Work with foreignObject
Fixes SVG-Edit Issue #485.
2010-02-16 11:17:45 -06:00
Jacques Distler
d6e749cf6a Make the SVG-Edit sanitizeSVG() Namespace-Aware 2010-02-15 13:53:07 -06:00
Jacques Distler
10c0e709f6 Fix SVG-Edit Issue #484
Incorrect namespace handling broke Text tool.
2010-02-14 22:07:45 -06:00
Jacques Distler
ee5d03dca6 One more attempt at namespace sanity 2010-02-14 16:36:26 -06:00
Jacques Distler
2151c8d86b More Namespace fun
I don't know why they want to mess
with this, but it's clearly way more
complicated than any benefit I can see
it yielding.
2010-02-14 03:16:54 -06:00
Jacques Distler
2e16458c44 Namespace Handling in SVG-Edit becomes a little saner. 2010-02-14 01:20:59 -06:00
Jacques Distler
612fbf2920 Fix SVG-Edit Issue 483
Fix http://code.google.com/p/svg-edit/issues/detail?id=483
2010-02-13 23:22:36 -06:00
Jacques Distler
afcdc932ff Two SVG-Editor buglets
Should not be able to convert a foreignObject
to a path.
#foreignObject_panel should always be initially
invisible.
2010-02-13 22:19:14 -06:00
Jacques Distler
c608cedab9 Make foreignObject editing work in Safari
"Apply Changes" no longer generates an error in Safari.
2010-02-13 14:44:56 -06:00
Jacques Distler
620bb2a1f7 Fix Safari
Revision 1380 of SVG-Edit broke Safari.
Revert the problematic change.
2010-02-13 14:15:55 -06:00
Jacques Distler
d503100fe9 Mostly cosmetic
Sync with latest SVG-Edit.
Tweak an icon.
2010-02-13 00:11:13 -06:00
Jacques Distler
db7bbca920 Minor tweaks to SVG-Edit
1) Tweak the edit_foreign icon
2) Make the query parameter matching a little
less dumb (but still very dumb).
2010-02-12 17:38:17 -06:00
Jacques Distler
52d85c6d01 Don't use a data-url
Pass the SVG to the editor, using
  editor.svgCanvas.setSvgString(selected);
instead. (Suggested by Jeff Schiller)
Fix a bug with line and freehand tools caused
by activating foreignObject tool. (Again, fix
due to Jeff)
Sync with SVG-Edit.
2010-02-12 12:34:56 -06:00
Jacques Distler
e744a697c2 Update edit-foreign icon
Also, a tweak to the loading code.
(Needs to be completely rewritten.)
2010-02-12 09:12:01 -06:00
Jacques Distler
0b459d0a47 Whoops! Missed another piece of XML Namespace Bogosity
Also forgot to add the new PNGs.
2010-02-12 00:16:13 -06:00
Jacques Distler
502d4f20bb foreignObject Support in SVG-Edit
Added support so that you can
create new foreignObjects, manipulate
existing ones, and edit their content.

No itex support. You need to use MathML
in there. But it's a start ...
2010-02-12 00:01:27 -06:00
Jacques Distler
9047e5d460 Fix SVG-Edit code for rotating objects
A little math goes a long way ...

Also pick up some updates from SVG-Edit trunk.
2010-02-10 15:41:47 -06:00
Jacques Distler
1d8318cfd2 foreignObject are now selectable, etc
They are now selectable, draggable, resizable
and rotatable.

The MathML content behave strangely when you
resize, but snaps back to its correct size when
you let go of the mouse.

(Resizing the MathML involves changing the font-size
on the containing foreignObject. No interface for
that, yet.)
2010-02-10 11:37:26 -06:00
Jacques Distler
d362b886c2 Make Embedded MathML Visible
Thanks to Jeff Schiller for tracking
down the problem (and committing 
preliminary MathML support to SVG-Edit).
2010-02-10 00:11:14 -06:00
Jacques Distler
7114e46817 Sync with SVG-Edit 2010-02-09 11:44:43 -06:00
Jacques Distler
65b00d8551 A fist stab at foreignObject support
Ability to resize (etc) the still-invisible
element.
Also, some improvements from SVG-Edit trunk.
2010-02-08 21:39:35 -06:00
Jacques Distler
f98802336f Minor tweaks
Allow 'markdown' attribute on <svg> and
on <foreignObject> in SVG-edit whitelist.
Specify SVG-edit Window properties.
2010-02-08 01:26:41 -06:00
Jacques Distler
c32e5b7178 Sync with SVG-Edit 2010-02-06 16:55:49 -06:00
Jacques Distler
c5e5f1ef2c Yet Another "Focus" Tweak
I'm not that happy with passing
the SVG as a Base64-encoded
query-parameter.

Will have to fix that, too...
2010-02-06 01:44:41 -06:00
Jacques Distler
b5a7f7ac05 Add MathML Support to SVG-edit
Doesn't actually render anything,
but doesn't strip out all the 
MAthML tags, either.
2010-02-06 01:14:42 -06:00
Jacques Distler
bad5beec29 Sync with SVG-edit 2010-02-05 23:17:34 -06:00
Jacques Distler
de3008d3e4 Some SVG-edit tweaks
Remove the XML prolog.
Fix focus on save.
2010-02-05 22:55:54 -06:00
Jacques Distler
c3ed5b461b Preliminary SVG-edit Support
WYSIWYG SVG editing.

Still no support for mixed
SVG/MathML content, yet.
2010-02-05 21:36:35 -06:00
Jacques Distler
5506f87f17 One-Click S5 Template
Make it yet-easier to create
S5 slideshows.
2010-01-28 23:37:10 -06:00
Jacques Distler
bafa7743f1 Allow Periods in Page Names
Thanks to Jeff Zellman.
2010-01-26 00:18:30 -06:00
Jacques Distler
979ea7eca0 CSS Improvements
Fixed a few aesthetic matters.
2010-01-23 00:21:14 -06:00
Jacques Distler
c8ef0a3dd4 Release Instki 0.18.1
Seems warranted, in light of the
Ruby 1.9 encoding issues.
2010-01-07 00:07:10 -06:00
Jacques Distler
6e6bf1a446 Yikes! Yet more Ruby 1.9 Encoding Issues
We're getting there. Thanks to Andrew Stacey.
2010-01-05 09:35:14 -06:00
Jacques Distler
ea431ad373 Stylesheet tweak
Don't put boxes around links on the web_list page.
2010-01-04 23:00:36 -06:00
Jacques Distler
e3aa626489 Better Display of Interweb Wikilinks
Perhaps not the most creative use of CSS. But,
at least, this will read better.
2010-01-03 13:19:47 -06:00
Jacques Distler
f66fc4de4d Fenced Code Blocks, Fortran Syntax Colouring
Support Marhdown Extra's fenced code blocks. [From Jason Blevins]
Fortran syntax colouring. [From Jason Blevins]
Turn on Syntax colouring, by default.
Point to Michel Fortin's Markdown Extra page.
2009-12-31 15:54:01 -06:00
Jacques Distler
a705709f9a Vendor Rack 1.1
Also clean up some View stuff.
2009-12-26 14:00:18 -06:00
Jacques Distler
fcef0fd031 Stylesheet tweak 2009-12-25 04:26:07 -06:00
Jacques Distler
af0f607e75 Syntax Colouring
New syntax colouring modes.
In addition to the existing
  html, xml, ruby
we now support
  yaml, ansic, javascript, sqlite, css
2009-12-24 00:45:45 -06:00
Jacques Distler
a1420aa5c7 Revamp Markup Cheat Sheets
They still suck, but less-so.
2009-12-17 10:29:51 -06:00
Jacques Distler
c88a1d43dc Another Textarea Resizing Tweak
Handle the 'Change page name'
part of the form more intelligently.
2009-12-12 22:37:38 -06:00
Jacques Distler
a58bee7437 Another Textarea Tweak and a Ruby 1.9 Fix 2009-12-12 15:28:05 -06:00
Jacques Distler
60a233a917 More Robust
Browsers have a bewildering array of
default behaviours for <textarea>s.

This will work a little more uniformly
across brosswers.
2009-12-12 01:12:52 -06:00
Jacques Distler
561a007682 Auto-resizing Textarea
Resize textarea to fit viewing area.
Also update Prototype to 1.6.1.
2009-12-10 16:57:05 -06:00
Jacques Distler
2c5c6dc78a S5 Fix
Omit a (seemingly superfluous)
javascript hack which causes
Gecko-based browsers to request
   /my_wiki/s5/null
when they load an s5 slideshow.

Also a stylistic cleanup in
the wiki_controller.
2009-12-07 15:27:40 -06:00
Jacques Distler
2b213d95de Accessiblity: Skip Navigation Link
Thanks to John Gardner for the suggestion.
2009-11-09 11:58:57 -06:00
Jacques Distler
6be9c5ca6a More Robust mactionWorkarounds
The previous version was OK with itex2MML
output. But this one will not get tripped up
by extraneous text nodes.
2009-11-08 02:27:38 -06:00
Jacques Distler
f9bd8f081f Change body Font Back to Verdana
Some CSS experiments crept into Revision 464.
Revert them.
2009-11-07 21:11:32 -06:00
Jacques Distler
977da29f68 Support for \tooltip{}{} and \statusline{}{}
itex2MML 1.3.16 add a \tooltip{}{} command which,
like \statusline{}{}, produces an <maction> element.

Neither of these is natively supported by Mozilla/Firefox.
Add some Javascript to work around that weakness.
2009-11-06 14:32:45 -06:00
Jacques Distler
2240206554 Ack!
Do that right.
2009-10-11 10:29:15 -05:00
Jacques Distler
a483b4e71e Also fix S5 slides.js
It needs to use relative URLs, too.
2009-10-11 10:20:43 -05:00
Jacques Distler
93ea19f567 Workaround for Mozilla Bug 449396
Andrew Stacey reminded me that this bug
   https://bugzilla.mozilla.org/show_bug.cgi?id=449396
is still unfixed.
But it's easy to work around...
2009-08-27 15:28:16 -05:00
Jacques Distler
a0b965c9f5 Tweak CSS for S5 Themes
So that syntax-colouring will be passably OK there.
2009-07-07 00:13:48 -05:00
Jacques Distler
ef5878cf11 Put class name on <pre>, rather than <code>
Better CSS styling options ensue, if we put
the class='lang' on the <pre> element.

(Suggested by Casper Gripenberg)
2009-07-06 15:30:35 -05:00
Jacques Distler
573af987bc Syntax Colouring
Add some default CSS support for syntax colouring of code blocks.

Try:

	require 'chunks/chunk'
{:lang=ruby html_use_syntax=true}

or

        <div xhtml:class='foo' width='4'>bar<!-- fubar --></div>
{:lang=html html_use_syntax=true}

(Suggested by Casper Gripenberg)
2009-07-06 11:07:57 -05:00
Jacques Distler
d135ac3982 Flash[:info] messages use Web's colour scheme 2009-06-14 23:14:24 -05:00
Jacques Distler
c98d44606a Wikilinks with '." in the Page Name
Rails won't let you put "." in the page name.
This prevents creating new-page Wikilinks with
such names.
2009-06-11 13:16:10 -05:00
Jacques Distler
7f2b16e78d File Upload Fixes
Dunno why this was buggered again. ":back" doesn't seem to function as it used to.
Also, when uploading a file from page "foo", it's important to return to "foo" after
a successful upload, rather than redirecting to the HomePage.

Finally, a favicon tweak.
2009-02-18 01:40:11 -06:00
Jacques Distler
d7c445178b Favicon
Add a favicon for Instiki.
Also, add an id for the svg path (which makes it reusable).
2009-02-13 17:22:58 -06:00
Jacques Distler
1ad8885974 Optimize SVG
Thanks to Sam Ruby, SVG logo is half the size it was before.
Also, use the "wrapper div" trick to make the logo work in
older browsers.
2009-02-08 10:27:08 -06:00
Jacques Distler
6b49228aad Logo for Instiki
Added an SVG logo for Instiki.
2009-02-08 03:17:20 -06:00
Jacques Distler
788d1eb075 Stylesheet Tweak
Make the "Delete File" link more visually distinct.
2008-12-30 10:20:43 -06:00
Jacques Distler
5700d4513f Preliminary (?) Interface for Deleting Uploaded Files.
The simplest thing which could possibly work ...
2008-12-30 03:03:02 -06:00
Jacques Distler
2ab04421a3 BlahTeX/PNG Support (from Ari Stern) 2008-12-17 23:42:28 -06:00
Jacques Distler
b209ad2397 Tiny Stylesheet Tweak 2008-11-28 02:05:33 -06:00
Jacques Distler
2e81ca2d30 Rails 2.2.2
Updated to Rails 2.2.2.
Added a couple more Ruby 1.9 fixes, but that's pretty much at a standstill,
until one gets Maruku and HTML5lib working right under Ruby 1.9.
2008-11-24 15:53:39 -06:00
Jacques Distler
7600aef48b Upgrade to Rails 2.2.0
As a side benefit, fix an (non-user-visible) bug in display_s5().
Also fixed a bug where removing orphaned pages did not expire cached summary pages.
2008-10-27 01:47:01 -05:00
Jacques Distler
2fb41f12ce Automatic Theorem Numbering
Can now refer to numbered theorems by \ref{...}, as in LaTeX
2008-10-20 00:24:22 -05:00
Jacques Distler
34082fbf94 Theorem Environments
Implement amsthm-like Theorem environments with Maruku.
Support is based on Maruku "div"s with special class-names.
Classes
    num_*
produce numbered environments, and

    un_*

produce un-numbered environments, where * is one of

   theorem     (for Theorem)
   lemma       (for Lemma)
   prop        (for Proposition)
   cor         (for Corollary)
   def         (for Definition)
   example     (for Example)
   remark      (for Remark)
   note        (for Note)

In addition, the class

   proof

produces a Proof environment.

The LaTeX export works as expected, and these also work in the S5 view.

Bumped version number.
2008-10-17 16:26:17 -05:00