Hi Mike,

Would love to hear what use you are putting Streams to and what the pain 
points are. Understanding user workflow is very beneficial to the design 
and further development of the plugin.
 

> I know that you specifically mentioned the drag and drop reordering 
> functionality in Mobile Chrome but I can confirm that it doesn't work in 
> Mobile Firefox. However, what does work in Firefox is the pop-up context 
> menu which doesn't seem to work on Mobile Chrome. If there was a "Move" 
> option in there that put the stream in "draggable-mode", Firefox would have 
> full functionality. I have no idea if that is possible though in the 
> context of UI events and javascript or whether it doesn't work in Firefox 
> due to it not having some core functionality.
>

The problem with drag and drop on mobile is that in TiddlyWiki we use the 
HTML Drag and drop API which has very poor browser support on mobile, only 
Chrome on Android and iOS on iPad support it:
https://caniuse.com/dragndrop

As such it isn't just about triggering the drag, an entire custom drag and 
drop solution from the ground up would be required or a polyfill for the 
drag and drop API that works well with TiddlyWiki. Perhaps something like 
this: https://github.com/timruffles/mobile-drag-drop
 

> One issue that I have been trying to find the best way to tackle is the 
> concept of cloning tiddlers with streams. The current cloning will work in 
> one sense in that you can create a clone tiddler, and it will look like the 
> original, but they are kind-of siamese-clones in that they point to the 
> same stream-children and if something is edited in the original stream, the 
> clone stream gets changed too.
>
>
Note that you can choose to copy a node when dragging and dropping (DND) 
into a new root tiddler. It doesn't copy the children. 
It sounds like what you need is the ability to copy by DND into the same 
root tiddler, along with copying the children.

Would that fit your workflow at all, to copy via DND rather than by using 
the core clone commands?
 

> 2) An option/button to also clone the stream-children on demand into the 
> new cloned parent if desired. Either a config option that bakes it into the 
> core clone button, a new clone-and-relink button or a right-click option on 
> the stream controls to relink/clone children to a new parent.
>

This is doable. Sounds like you just need a custom button that creates a 
copy of the tiddler being acted upon, plus a copy of the nodes in its tree 
(recursive macro).
 

>
> 3) A "destream"  option to convert a stream into a normal unordered list 
> so that you can clone it normally and a corresponding "enstream" option 
> that does the opposite to undo the destream on both copies. I am working on 
> this option ... "destream" is pretty straight-forward (see below). 
> "enstream" is trickier and I am still working out the way to do that. It 
> seems like the less straightforward way but I think that it will have a 
> nice dual purpose to import lists from other sources (like Word or html) 
> into streams. I think some of the new search and replace functionality 
> might make this possible.
>
>
This reminds me of my prototype of using Streams as an editor for wikilists:
https://groups.google.com/g/tiddlywiki/c/drA7IEx2Ng0/m/67pyPkgKBgAJ

That implementation was very JavaScript heavy as I just wanted a quick 
proof of concept but it could be probably be done with wikitext as well. 

I might abandon my efforts on 3) and do 2) since that seems more doable 
> (but lacks the import functionality). 1) is more elegant but I haven't 
> worked out how to do that as it might involve tweaking the innards of 
> stream itself which I am lost in as soon as it gets into javascript.
>

There shouldn't be much JavaScript that concerns you when trying to  
customize Streams, especially with the 0.2 preview branch the code for 
which is at:
https://github.com/saqimtiaz/streams/tree/performance/plugins/streams

The custom JavaScript is almost entirely in the form of re-usable widgets 
and I don't think any of would be involved in the work you are describing.

Regards,
Saq
 


-- 
You received this message because you are subscribed to the Google Groups 
"TiddlyWiki" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/tiddlywiki/46556e3d-36a6-40a4-914a-5d14525d1928n%40googlegroups.com.

Reply via email to