A design/roadmap => design/roadmap +61 -0
@@ 0,0 1,61 @@
+Tasks
+=====
+- fill out urish_surface
+- create uri_shell_modals sister protocol
+- begin work on proper implementation of a reference wm
+- settings management
+
+Schemas to specify and implement
+================================
+web:
+ http
+ https
+ gopher
+ gemini
+ spartan
+ ftp
+ sftp
+ rsync
+ ipfs
+ smb
+ nfs
+ git
+ dns
+ magnet
+net:
+ tcp
+ udp
+ raw
+ unix
+util:
+ file
+ zip
+ tar
+shell:
+ telnet
+ ssh
+ exec
+app:
+ irc
+ ircs
+ xmpp
+ matrix
+ mailto
+ tel
+ imap
+ imaps
+ pop
+ pops
+ smtp
+ smtps
+ message
+internal:
+ system
+ settings
+ debug
+ chrome
+ about
+special:
+ data
+ javascript (this will require special protocol support!)
+ blob
M proto/uri_shell.xml => proto/uri_shell.xml +30 -10
@@ 45,10 45,10 @@
</request>
<request name="open_read">
- <arg name="url" type="string" />
+ <arg name="uri" type="string" />
</request>
<request name="open_write">
- <arg name="url" type="string" />
+ <arg name="uri" type="string" />
<arg name="mime_type" type="string" />
<arg name="data" type="fd" />
</request>
@@ 67,12 67,12 @@
<event name="read_request">
<arg name="response" type="new_id" interface="urish_response" />
- <arg name="url" type="string" />
+ <arg name="uri" type="string" />
<arg name="flags" type="uint" enum="request_flags" />
</event>
<event name="write_request">
<arg name="response" type="new_id" interface="urish_response" />
- <arg name="url" type="string" />
+ <arg name="uri" type="string" />
<arg name="flags" type="uint" enum="request_flags" />
<arg name="mime_type" type="string" />
<arg name="data" type="fd" />
@@ 88,7 88,7 @@
<interface name="urish_renderer" version="1">
<event name="render">
<arg name="response" type="new_id" interface="urish_response" />
- <arg name="url" type="string" />
+ <arg name="uri" type="string" />
<arg name="flags" type="uint" enum="render_flags" />
<arg name="mime_type" type="string" />
<arg name="data" type="fd" />
@@ 111,7 111,6 @@
<arg name="chain" type="new_id" interface="urish_chain" />
</request>
<request name="error" type="destructor">
- <arg name="page" type="new_id" interface="urish_page" />
<arg name="title" type="string" />
<arg name="message" type="string" />
</request>
@@ 150,6 149,9 @@
<arg name="mime_type" type="string" />
<arg name="data" type="fd" />
</request>
+ <request name="cancel" type="destructor">
+ <arg name="new_response" type="object" interface="urish_response" />
+ </request>
<event name="metadata_int">
<arg name="field" type="string" />
@@ 186,23 188,41 @@
<request name="refresh" type="destructor" />
<request name="hard_refresh" type="destructor" />
+ <!-- link -->
<request name="navigate_read" type="destructor">
- <arg name="url" type="string" />
+ <arg name="uri" type="string" />
</request>
<request name="navigate_write" type="destructor">
- <arg name="url" type="string" />
+ <arg name="uri" type="string" />
<arg name="mime_type" type="string" />
<arg name="data" type="fd" />
</request>
+ <!-- new tab -->
<request name="open_read">
- <arg name="url" type="string" />
+ <arg name="uri" type="string" />
</request>
<request name="open_write">
- <arg name="url" type="string" />
+ <arg name="uri" type="string" />
<arg name="mime_type" type="string" />
<arg name="data" type="fd" />
</request>
+
+ <!-- as in, fork the renderer chain -->
+ <request name="fork" type="destructor">
+ <arg name="new_response" type="object" interface="urish_response" />
+ </request>
+
+ <!-- this exists to facilitate bookmarklets -->
+ <request name="enable_intercept">
+ <arg name="scheme" type="string" />
+ </request>
+ <request name="disable_intercept">
+ <arg name="scheme" type="string" />
+ </request>
+ <event name="intercept">
+ <arg name="uri" type="string" />
+ </event>
</interface>
<interface name="urish_surface" version="1">