Commit graph

676 commits

Author SHA1 Message Date
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 c4003f79b3 Support SVG-Edit Custom Attribute(s)
Add support for se:connector attribute in
Instiki's Sanitizer.
2010-02-23 23:07:09 -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 47524a7104 Small tweak to itex metal 2010-02-22 19:13:46 -06:00
Jacques Distler a1654f1e99 Sync with latest SVG-Edit 2010-02-22 18:53:15 -06:00
Jacques Distler 3fbff19997 itex Endpoint Should Handle Blank TeX
Reported by Andrew Stacey
2010-02-22 08:52:52 -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