73a8f2132024d07dd071ccbd0251eb974cce13cb
[uzbl-mobile] / TODO
1 * implement all the ideas from README
2 * get a logo
3 * when launching new instance, don't just try 'uzbl' and then './uzbl', rather launch a new uzbl in the same way the current uzbl instance was started. (same command, same arguments, except --uri)
4 * implement a more advanced dmenu alike that behaves like FF's awesomebar and where you can search in url + window title, with support for Xorg copy paste
5   ideal uri editor: awesome mode like FF, some keyb shortcuts (erase search string, go to end/begin of string,..), history (if you patch dmenu to be in vertical mode and you order correctly, that's it), support copy paste
6   isolate the search field feature from midori and make into a separate dmenu-like-but-more-powerful program?
7 * recognize -h with GOption?
8 * implement a vimperator-like link following scheme.  but let user pick his favorite characters to construct the "link identifiers" with.
9 * add a keybind to hand the current url to an external scrips, so you can edit it and/or store it in the primary and secondary clipboards
10 * clean up our structures for settings + sane defaults + don't iterate over struct to fill hasthtable. rather fill hashtable directly
11 * implement getting feedback from socket
12 * select/fork based instead of the pthread stuff -> drops dependency, more lightweight.
13 * scrolling: make page up and page down configurable.
14 * show % of location in statusbar/title if page doesn't fit entirely on view.
15 * make default size configurable, and optional
16 * on uzbl.org commits overview: add date+time and repository
17 * how to handle different content types? (text-plain, image/png, application/pdf,... maybe a map of content-type to uzbl/command
18   xdg already has a spec for this i think
19   different "opening" modes (open as configured vs ask before opening)
20   integration with download and new window thingies?
21 * blinking cursor when not in insert mode is confusing.  i suggest dimming it's color if possible
22 * open in new window -> uzbl: Fatal IO error 11 (Resource temporarily unavailable) on X server :0.0.
23 * note about merging better then patches. because commit names, and code can have changed in meanwhile. also github makes the process quite easy
24 * check that in new version pageup etc works also in command
25 * tab key to jump between input fields should probably work in both insert and command mode
26 * allow to name a uzbl instance, name fifo/socket after it. use xorgwindow id as fallback
27 * allow to tag , to group instances together
28 * allow users to customize order, separating, colors,.. of items in statusbar using pango markup thing
29 * mention bugtracker in readme, move tickets from github to new bugtracker
30 * default value for fifo_dir, socket_dir so we don't need to if(fifo_dir). it will always be set to something?
31 * change User-agent to contain uzbl + build date or something. + why is there "Mozilla" in the string
32 * backspace key to pop characters from (multichar) command
33 * optional logging of http requests&responses with ip/hostname and port. -> how to implement? handler? stdout? (through a socket so you know what corresponds to what?)
34 * bench/optimize fifo vs socket performance. measure delays.  minimize forks. does glib use a shell? how does it detect the shebang line?
35 * cookie support.
36 * "remember account settings" support. but how? configure post data per site? regex match eg '^bbs.archlinux.org' ?
37 * http_proxy env var not recognized. libproxy (used by libsoup) should handle this http://mail.gnome.org/archives/libsoup-list/2009-February/msg00018.html
38 * support ssl. do ssl certificate & exception management similar to how we do cookies
39 * improve DCOMMIT macro.  what if WC is dirty? what if user downloaded tarball without .git?
40 * DARCH is not correct (should be at runtime)
41
42 * variable replacing:
43 user agent -> str_replace(all vars) DONE
44 title bar -> str_replace(all vars)
45 status bar ->  str_replace(all vars) -> pango markup thingie
46
47 SOMEDAY:
48 check if we can make the settings loading less hard coded. eg( keep a list of all settings, and for each one, try to load it)
49 figure out caching with webkit and in general how we can speed up everything
50 figure out how webkit intercepts key input
51 make "disable insert mode" (esc key) configurable
52 keywords don't work for external commands. is this a problem?