[daisy] Better desktop integration
Marc Portier
mpo at outerthought.org
Sun May 4 13:35:59 CEST 2008
Karel Vervaeke wrote:
> We are planning to make things much better by creating a desktop
> component that will even make it unnecesary to go to the HTML document
> editor.
>
> [0] http://cocoondev.org/wiki/g5/607-cd.html
>
> Please post your remarks to the list, I will gather your input and merge
> it with the document later.
A lot of thoughts I had when reading the document, in no particular order:
* Main observation: daisy works with *documents*, but these external
editors will all work on *files* that fit into single parts of daisy.
From that observation I more and more got the feeling that this tool
should focus on files/parts first and only for the interested and for
background daisy communication know (and show) detailed info about the
actual daisy-documents.
The most obvious effect of this would be that the gui proposal would
change to not list daisy-documents, but rather files (or daisy-parts).
And probably thus by 'filename' rather then by document-name (or id) +
partname.
For most 'simple' documents the relation is 1-1 so doesn't make a big
difference?
* Leading to my name/abbreviation(extension) proposal: dpm for daisy (or
desktop) part manager
* Leading to my menu-integration proposal
- it's getting crowded already but I think this deserves a separate
menu entry:
- Desktop Part Manager (or something shorter)
- Install (link to docs or jws directly)
------------
- Manage All Parts (unlikely IMHO)
------------
- AttachmentPart
- ImageDataPart
* Additionally some (all?) part-editors (in html) could easily provide
an obvious button to "manage this part through a desktop editor tool"
- this probably calls for an extra property of part's (or
part-document-associations) that indicates of external editor management
should be offered or not (something the xsl will eventually pick up
probably)
* If possible the desktop component should have the possibility to
notify the user via the systray. + We should list the kind of
notifications that could be of interest. (If not via the systray, at
least via the component itself)
* In the list of "Desktop component fucntionality" I was missing two
actions:
- "Overwrite" which would allow to just copy over a local file over
the one that is in the local dpm-cache
- "Revert" which should allow to discard all local changes and go
back to the version at last checkout-time (by keeping a .svn like
original copy so it is available off-line?)
* and if I've read the discussion between Jorg and Lou correctly, a
third additional operation could be:
- "Link To File" which would allow telling the system that the
part-file itself is not internally in the "local cache" but rather
pointing to another file-path
* Note that drag-drop might trigger similar effects:
- drag-drop-in could be 'overwrite'
- drag-drop-out could be 'link to'
* And in the same area: double-click should equal the mentioned 'edit'
* When the user chooses (in his browser) to manage a part from the
desktop a so called dpm launcher file should be sent in the reply
- extension and mime-type should be associated to launch the desktop
component
- file should probably not hold the contents (binary octet stream)
but only all required metadata (xml or json format) to support all
required management operations
* The wiki-document should be extended with a more detailed description of
- the contents and layout of the
- dpm launcher file
- dpm local cache directory
- the extra cocoon supported uri's that will handle the pass-through
part operations on the repository (cause I think we should not just call
the repo directly)
* gui should display appropriate file-preview icons, if possible those
associated to the part's mime-type/extension as per the host's OS settings?
* With respect to the support for multiple daisy instances:
- I'm not sure, but I think we can have one installation of the
dpm-desktop component per daisy instance connected to?
- Main argumentation for that: having one jws installation per
daisy-installation/server means they can independently follow up on the
version upgrades in the future (jws update)
- There is probably a very limited set of users that get to work with
more the one daisy instance in this way?
- The JWS installation can easily (and clearly) hold the name of the
daisy installment one works with...
* More on the support for "configuration" in the gui of the desktop
component: Specially stuff like user/password can probably be
managed/stored in the background? I would hope we can keep this
component as lightweight as possible.
* In contrast with that: I like the idea of the facet-assisted searching
in large document-sets. We should however clearly list on which facets
this browsing would occur (mimetype, extension, date, document type,
document owner, ...) In the end sortable and configurable columns might
be good enough. Big question is what size of local cached documents do
people expect to be managing at any given time in this way? (personal
guess would be around 20-25)
* I like the idea of reusing the current logged in session from the
browser. We'll have to be weary of session hijacking though. (Even if
this is not in the 'criminal area' e.g. dpm launcher files being
forwarded by email to some colleague)
*As for the listed URI's
- I would keep the jws URI's strictly for GETting the web-start file
to trigger the local installation.
- Same for the dpm-launcher file
- Next to that there should be a set of pass-through REST-like part
mangenemet URI's to actually get/update the part contents.
* The wiki-document can use a glossary since it introduces some new
nomenclature in daisy land. Local Document Cache, Desktop Component,
DPM Launcher File,...
all for now,
regards,
-marc=
More information about the daisy
mailing list