> > >> Yes, looks like that's the case. Like I said, that's in Android 2.3, and > the built-in browser is hardly up-to-date. On another device, with Android > 4.0.3, SVGs are displayed and saving works. So may some text fallback aka > "graceful degradation"? >
Yes, it would be useful if SVGs degraded somehow.... I'll give it some thought. Best wishes Jeremy > > >> Best wishes >> >> Jeremy >> >> >>> >>> Best regards, >>> Yakov. >>> >>>> >>>> Best wishes >>>> >>>> Jeremy >>>> >>>> >>>> On Thu, Aug 22, 2013 at 2:11 PM, Yakov <yakov.litv...@gmail.**com>wrote: >>>> >>>>> Hi Jeremy, >>>>> >>>>> what's the usual way of getting TW5? I've saved the page of [1] via >>>>> FireFox (which brought an .htm) and that instance is not able to save >>>>> (TiddlyFox sais >>>>> >>>>> [Exception... "Component returned failure code: 0x80004005 >>>>> (NS_ERROR_FAILURE) [nsILocalFile.create]" nsresult: "0x80004005 >>>>> (NS_ERROR_FAILURE)" location: "JS frame :: chrome://tiddlyfox/content/ >>>>> **ove**rlay.js :: TiddlyFox.saveFile :: line 96" data: no] >>>>> >>>>> on an attempt to save; I accepted TiddlyFox to save when the prompt >>>>> appeared onload). Can't see any "download" button at [1] :) >>>>> >>>>> Best regards, >>>>> Yakov. >>>>> >>>>> [1] five.tiddlywiki.com >>>>> >>>>> понедельник, 19 августа 2013 г., 16:57:42 UTC+4 пользователь Jeremy >>>>> Ruston написал: >>>>>> >>>>>> Hi Yakov >>>>>> >>>>>> Thanks for that. I've committed a first pass at a saver for >>>>>> AndTidWiki to GitHub and five.tiddlywiki.com, I'd be very grateful >>>>>> if you could give it a go. >>>>>> >>>>>> The code is here: >>>>>> >>>>>> https://github.com/Jermolene/**T****iddlyWiki5/commit/**1fd59a4bd312* >>>>>> ***ead20251da80dd7bce**b52f9c2bb0<https://github.com/Jermolene/TiddlyWiki5/commit/1fd59a4bd312ead20251da80dd7bceb52f9c2bb0> >>>>>> >>>>>> Best wishes >>>>>> >>>>>> Jeremy >>>>>> >>>>>> >>>>>> On Sat, Aug 17, 2013 at 11:25 AM, Yakov <yakov.litv...@gmail.**com>wrote: >>>>>> >>>>>>> Hi Jeremy, >>>>>>> >>>>>>> четверг, 15 августа 2013 г., 21:34:50 UTC+4 пользователь Jeremy >>>>>>> Ruston написал: >>>>>>>> >>>>>>>> Hi Yakov >>>>>>>> >>>>>>>> checked that. AndTidWiki changes saveFile function: its test is the >>>>>>>>> following >>>>>>>>> >>>>>>>>> function (fileUrl,content) { >>>>>>>>> return window.twi.saveFile(fileUrl,**co******ntent); >>>>>>>>> } >>>>>>>>> >>>>>>>>> so presumably to make TW5 work with ATW, one should use that >>>>>>>>> window.twi.saveFile interface in the TW5 saving engine. >>>>>>>>> >>>>>>>> >>>>>>>> That's great. There's two other things we need to figure out: >>>>>>>> >>>>>>>> 1) How AndTidWiki detects a TiddlyWiki document to determine if it >>>>>>>> should inject it's code (it's possible that it injects it's code into >>>>>>>> all >>>>>>>> HTML files, not just specifically TiddlyWikis). Right now TW5 is >>>>>>>> unlikely >>>>>>>> to be detected as a TiddlyWiki file. >>>>>>>> >>>>>>>> I wouldn't expect ATW somehow detect a TW file. And my test >>>>>>> somewhat confirms this: an html >>>>>>> >>>>>>> <html> >>>>>>> <body> >>>>>>> <p><a href="javascript:;" onclick=' >>>>>>> alert(saveFile); >>>>>>> '>let's try</a></p> >>>>>>> </body> >>>>>>> </html> >>>>>>> >>>>>>> shows the save text of saveFile onclick. >>>>>>> >>>>>>> 2) How the fileUrl parameter has been mangled and encoded by the >>>>>>>> time that the saveFile() function is called. >>>>>>>> >>>>>>>> Well, the simplest idea for this is to create a function that >>>>>>> copies the way the path is formed in TWc in saveChanges before it >>>>>>> is passed to saveFile, isn't it? According to the current core >>>>>>> code, that would be >>>>>>> >>>>>>> var originalPath = document.location.toString(); // not netscape, >>>>>>> convertUriToUTF8 >>>>>>> is not needed in ATW >>>>>>> >>>>>>> // Remove any location or query part of the URL >>>>>>> var argPos = originalPath.indexOf("?"); >>>>>>> if(argPos != -1) >>>>>>> originalPath = originalPath.substr(0,argPos); >>>>>>> var hashPos = originalPath.indexOf("#"); >>>>>>> if(hashPos != -1) >>>>>>> originalPath = originalPath.substr(0,hashPos)******; >>>>>>> >>>>>>> // Convert file://localhost/ to file:/// (is not needed >>>>>>> in ATW) >>>>>>> if(originalPath.indexOf("file:******//localhost/") == 0) >>>>>>> originalPath = "file://" + originalPath.substr(16); >>>>>>> >>>>>>> // Convert to a native file format (in ATW, the >>>>>>> third case takes place) >>>>>>> //# "file:///x:/path/path/path..." - pc local file --> >>>>>>> "x:\path\path\path..." >>>>>>> //# "file://///server/share/path/**p****ath/path..." - FireFox pc >>>>>>> network file --> "\\server\share\path\path\**path****..." >>>>>>> //# "file:///path/path/path..." - mac/unix local file --> >>>>>>> "/path/path/path..." >>>>>>> //# "file://server/share/path/**path****/path..." - pc network file >>>>>>> --> "\\server\share\path\path\**path****..." >>>>>>> var localPath; >>>>>>> if(originalPath.charAt(9) == ":") // pc local file >>>>>>> localPath = unescape(originalPath.substr(**8****)).replace(new >>>>>>> RegExp("/","g"),"\\"); >>>>>>> else if(originalPath.indexOf("file:******/////") == 0) // FireFox >>>>>>> pc network file >>>>>>> localPath = "\\\\" + >>>>>>> unescape(originalPath.substr(**1****0)).replace(new >>>>>>> RegExp("/","g"),"\\"); >>>>>>> else if(originalPath.indexOf("file:******///") == 0) // mac/unix >>>>>>> local file >>>>>>> localPath = unescape(originalPath.substr(**7****)); >>>>>>> else if(originalPath.indexOf("file:******/") == 0) // mac/unix >>>>>>> local file >>>>>>> localPath = unescape(originalPath.substr(**5****)); >>>>>>> else // pc network file >>>>>>> localPath = "\\\\" + >>>>>>> unescape(originalPath.substr(**7****)).replace(new >>>>>>> RegExp("/","g"),"\\"); >>>>>>> >>>>>>> return localPath; >>>>>>> >>>>>>> So probably this can be shortened further (cut unnecessary cases, >>>>>>> localhost cut etc). >>>>>>> >>>>>>> A quick hack to determine the answer to (2) would be if you could >>>>>>>> modify a TW classic file to insert "alert(localPath)" just before the >>>>>>>> call >>>>>>>> to saveFile() in the saveMain() function. Then can you attempt a save >>>>>>>> under >>>>>>>> AndTidWiki, and note the path that is alerted. Ideally, could you >>>>>>>> include a >>>>>>>> character like "%" in the filename. >>>>>>>> >>>>>>> >>>>>>> An example of originalPath is "file:///mnt/sdcard/...../atw >>>>>>> test.html" and the corresponding localPath is >>>>>>> "/mnt/sdcard/...../atw test.html". >>>>>>> >>>>>>> Best regards, >>>>>>> Yakov. >>>>>>> >>>>>>> >>>>>>>> I'm not sure how to deal with (1); if you can help with (2) I'll >>>>>>>> create an exploratory TW5 saver for AndTidWiki and we can experiment >>>>>>>> further. >>>>>>>> >>>>>>>> Many thanks, >>>>>>>> >>>>>>>> Jeremy >>>>>>>> >>>>>>>> >>>>>>>>> >>>>>>>>> Best regards, >>>>>>>>> Yakov. >>>>>>>>> >>>>>>>>> четверг, 15 августа 2013 г., 11:13:21 UTC+4 пользователь Jeremy >>>>>>>>> Ruston написал: >>>>>>>>>> >>>>>>>>>> Hi Yakov >>>>>>>>>> >>>>>>>>>> There are two ways that TiddlyWiki can interact with a server: >>>>>>>>>> >>>>>>>>>> 1. By saving the entire file to the server (this is how >>>>>>>>>> TiddlySpot works, and the iPhone/iPad app TWEdit) >>>>>>>>>> 2. By syncing changes to individual tiddlers to the server (this >>>>>>>>>> is how TiddlyWeb/TiddlySpace works) >>>>>>>>>> >>>>>>>>>> I would expect AndTidWiki to work using the first technique. >>>>>>>>>> Typically that would be done by injecting code that overrides the >>>>>>>>>> saveChanges function, or the lower level saveFile/loadFile functions. >>>>>>>>>> >>>>>>>>>> You can see an example of the technique in the source to >>>>>>>>>> TiddlyFox. This is the javascript file that TiddlyFox injects into >>>>>>>>>> TiddlyWiki documents: >>>>>>>>>> >>>>>>>>>> https://github.com/TiddlyWiki/********** >>>>>>>>>> TiddlyFox/blob/master/content/**********inject.js<https://github.com/TiddlyWiki/TiddlyFox/blob/master/content/inject.js> >>>>>>>>>> >>>>>>>>>> You can see the internal functions being overridden at lines 50 >>>>>>>>>> to 53. >>>>>>>>>> >>>>>>>>>> Best wishes >>>>>>>>>> >>>>>>>>>> Jeremy >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> On Thu, Aug 15, 2013 at 12:27 AM, Yakov <yakov.litv...@gmail.** >>>>>>>>>> com> wrote: >>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> пятница, 2 августа 2013 г., 14:27:41 UTC+4 пользователь Jeremy >>>>>>>>>>> Ruston написал: >>>>>>>>>>> >>>>>>>>>>>> понедельник, 29 июля 2013 г., 15:43:02 UTC+4 пользователь Arlen >>>>>>>>>>>>> Beiler написал: >>>>>>>>>>>>> >>>>>>>>>>>>>> Using TiddlyWiki5 which I just downloaded in AndTidWiki, I >>>>>>>>>>>>>> can edit fine, but when I try to save it, I get an Internal >>>>>>>>>>>>>> Javascript >>>>>>>>>>>>>> Error. "Uncaught TypeError: Cannot call method 'getItem' of >>>>>>>>>>>>>> null". >>>>>>>>>>>>>> >>>>>>>>>>>>>> That's unfortunate. Theoretically it's possible to "emulate" >>>>>>>>>>>>> the saving engine of TWc in TW5 by a plugin, but that's far from >>>>>>>>>>>>> my >>>>>>>>>>>>> knowledge (I haven't researched TW5 core yet, and also don't quite >>>>>>>>>>>>> understand how ATW and TW interact). >>>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> I agree that we should be able to make TW5 work with the >>>>>>>>>>>> existing AndTidWiki app. I don't have an Android device for >>>>>>>>>>>> testing, and >>>>>>>>>>>> have had bad experiences in the past with the poor performance of >>>>>>>>>>>> the >>>>>>>>>>>> Android emulator. So I'd be very grateful if anyone can help with >>>>>>>>>>>> information on the way that AndTidWiki works. >>>>>>>>>>>> >>>>>>>>>>>> Hi Jeremy, >>>>>>>>>>> >>>>>>>>>>> I'm not familiar with how TiddlyWiki interacts with any server >>>>>>>>>>> side, so may be you can help me with that first.. >>>>>>>>>>> >>>>>>>>>>> the chain >>>>>>>>>>> config.macros.saveChanges.**onCl********ick - saveChanges - >>>>>>>>>>> saveMain - saveFile - ... >>>>>>>>>>> doesn't seem to have anything that's "awaiting" server side, so >>>>>>>>>>> >>>>>>>>>>> my only guess on where server side can jump in is >>>>>>>>>>> >>>>>>>>>>> TiddlyWiki.prototype.**allTiddle********rsAsHtml - >>>>>>>>>>> TiddlyWiki.prototype.getSaver - TW21Saver/some other saver - >>>>>>>>>>> .externalize - >>>>>>>>>>> .externalizeTiddler >>>>>>>>>>> >>>>>>>>>>> so is it true that usually server sides create their own >>>>>>>>>>> SaverBase instance with their own externalizeTiddler method and >>>>>>>>>>> change >>>>>>>>>>> TiddlyWiki.prototype.getSaver and that's how they make TW use some >>>>>>>>>>> new >>>>>>>>>>> functionality to save? Or is it done somehow else? >>>>>>>>>>> >>>>>>>>>>> Best regards, >>>>>>>>>>> Yakov. >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>>> On Mon, Jul 29, 2013 at 4:39 AM, Yakov <yakov.litv...@gmail.* >>>>>>>>>>>>>> *com> wrote: >>>>>>>>>>>>>> >>>>>>>>>>>>>>> Hi Leo, >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> by the way, have you tried AndTidWiki? As for now, I only >>>>>>>>>>>>>>> use TiddlyWiki Classic on Android, so don't know if TW5 works >>>>>>>>>>>>>>> with it. As a >>>>>>>>>>>>>>> side note: with AndTidWiki, I only have to add >>>>>>>>>>>>>>> ToggleLeft/RightSidebar [1], >>>>>>>>>>>>>>> add a line-menu on top by changing PageTemplate and a few CSS >>>>>>>>>>>>>>> adjustments, >>>>>>>>>>>>>>> while FireFox needs some more work on styles (in fact, I need >>>>>>>>>>>>>>> to create a >>>>>>>>>>>>>>> plugin which will apply different styles depending on what >>>>>>>>>>>>>>> "browser" opened >>>>>>>>>>>>>>> TW). >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> Best regards, >>>>>>>>>>>>>>> Yakov. >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> [1] http://tiddlytools.com/#**Toggle************ >>>>>>>>>>>>>>> RightSidebar%**20ToggleLeftSideb************ar<http://tiddlytools.com/#ToggleRightSidebar%20ToggleLeftSidebar> >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> вторник, 16 июля 2013 г., 8:54:26 UTC+4 пользователь Leo >>>>>>>>>>>>>>> Staley написал: >>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> Thank you Eric! I didn't know how to do that from my >>>>>>>>>>>>>>>> Android. Firefox didn't install it when I clicked on it like I >>>>>>>>>>>>>>>> thought it >>>>>>>>>>>>>>>> should have. >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> After downloading it with another browser (because firefox >>>>>>>>>>>>>>>> didn't let me "save link" on long-press) and opening the file >>>>>>>>>>>>>>>> using >>>>>>>>>>>>>>>> firefox, I was able to install it. >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> Sadly though, no "save" button appears under the tools >>>>>>>>>>>>>>>> menu. The button at the top, to download a copy of the page >>>>>>>>>>>>>>>> worked once, >>>>>>>>>>>>>>>> but i'm having trouble doing it again. >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> Additionally, when i create a new tiddler, I first have to >>>>>>>>>>>>>>>> delete the existing text in both the title and the main text >>>>>>>>>>>>>>>> area, which >>>>>>>>>>>>>>>> takes some time with an android keyboard. >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> Eric, How compatible are most of the items on TiddlyTools >>>>>>>>>>>>>>>> with Tiddly5? Is development still continuing with the current >>>>>>>>>>>>>>>> edition of >>>>>>>>>>>>>>>> Tiddlywiki, and if so, in what Capacity? Forgive me for being >>>>>>>>>>>>>>>> such a noob. >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> On Monday, July 15, 2013 9:15:47 PM UTC-7, Eric Shulman >>>>>>>>>>>>>>>> wrote: >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> On Monday, July 15, 2013 9:13:16 PM UTC-7, Leo Staley >>>>>>>>>>>>>>>>> wrote: >>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>> More significantly, There was no way to save any changes >>>>>>>>>>>>>>>>>> I made. Took me a while to realize that. >>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> As Jeremy noted in his previous post: >>>>>>>>>>>>>>>>> "... install TiddlyFox to save changes locally on the >>>>>>>>>>>>>>>>> device (https://github.com/TiddlyWiki************ >>>>>>>>>>>>>>>>> /TiddlyFox/raw/master/tiddlyfo************x.xpi<https://github.com/TiddlyWiki/TiddlyFox/raw/master/tiddlyfox.xpi> >>>>>>>>>>>>>>>>> )." >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> enjoy, >>>>>>>>>>>>>>>>> -e >>>>>>>>>>>>>>>>> Eric Shulman >>>>>>>>>>>>>>>>> TiddlyTools / ELS Design Studios >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> HELP ME TO HELP YOU - MAKE A CONTRIBUTION TO MY "TIP >>>>>>>>>>>>>>>>> JAR"... >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> http://www.TiddlyTools.com/#D************onations<http://www.TiddlyTools.com/#Donations> >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> Professional TiddlyWiki Consulting Services... >>>>>>>>>>>>>>>>> Analysis, Design, and Custom Solutions: >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> http://www.TiddlyTools.com/#C************ontact<http://www.TiddlyTools.com/#Contact> >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> -- >>>>>>>>>> Jeremy Ruston >>>>>>>>>> mailto:[email protected] >>>>>>>>>> >>>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> -- >>>>>>>> Jeremy Ruston >>>>>>>> mailto:[email protected] >>>>>>>> >>>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> Jeremy Ruston >>>>>> mailto:[email protected] >>>>>> >>>>> >>>> >>>> >>>> -- >>>> Jeremy Ruston >>>> mailto:[email protected] >>>> >>> >> >> >> -- >> Jeremy Ruston >> mailto:[email protected] >> > -- Jeremy Ruston mailto:[email protected] -- You received this message because you are subscribed to the Google Groups "TiddlyWikiDev" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at http://groups.google.com/group/tiddlywikidev. For more options, visit https://groups.google.com/groups/opt_out.
