Commit Graph

1661 Commits

Author SHA1 Message Date
Michael Drake
951ad51cd4 Add functions to get first selected hotlist/global_history node data. 2013-09-13 14:24:25 +01:00
Michael Drake
3d123d72fc Enable front end to select treeview text size. 2013-09-09 13:11:36 +01:00
Michael Drake
b10252e325 Protect against attempt to initialise twice. 2013-09-09 13:00:24 +01:00
Michael Drake
172551870b Squash warning from older GCC. 2013-09-08 19:34:43 +01:00
Michael Drake
7f31b2c776 Fix use after unref. 2013-09-08 19:28:57 +01:00
Michael Drake
2468d00675 Check for error as soon as we have return value. 2013-09-05 13:06:53 +01:00
Michael Drake
411e367add Various tidyups to make ownership more clear. 2013-09-05 12:54:15 +01:00
Michael Drake
9c855df691 Remove dead assignment. 2013-09-05 12:01:13 +01:00
Michael Drake
2fce8cccbc Remove dead assignement. 2013-09-05 11:58:49 +01:00
Michael Drake
5d3362be81 Fix dead assignments. 2013-09-05 11:55:49 +01:00
Michael Drake
84b90853b5 Fix dead assignement. 2013-09-05 11:53:19 +01:00
Michael Drake
33c383357d Express logic to avoid confusing static analyser. 2013-09-05 11:39:44 +01:00
Michael Drake
8007027f84 Express logic so that the static analyser can understand and not report NULL deref. 2013-09-05 11:34:38 +01:00
Michael Drake
e94528518d Remove a couple of dead stores. 2013-09-05 11:27:33 +01:00
Michael Drake
decb4d40f3 Ensure correct field is edited when more than one hidden field is editable. 2013-09-05 11:26:05 +01:00
Michael Drake
267c630b88 Tidy up compatibility layer. 2013-09-04 15:13:53 +01:00
Michael Drake
e8071e676c Remove some redundancy. 2013-09-03 20:06:42 +01:00
Michael Drake
393dee4fd7 Squash leak in error case. 2013-09-03 20:01:05 +01:00
Michael Drake
541724fb0d Add hotlist iteration function. 2013-09-03 19:43:59 +01:00
Michael Drake
f477fd2570 Remove height getters from treeview client modules API. 2013-09-03 14:44:53 +01:00
Michael Drake
b9e3f7ae3d Ensure tree height is provided when treeview building is complete. 2013-09-03 14:38:01 +01:00
Michael Drake
42afcf918f Make externally induced node expand/contract cause redraw. 2013-09-03 14:08:44 +01:00
Michael Drake
1569e9e2a8 Change recursife node collapse behaviour slightly. 2013-09-03 13:32:46 +01:00
Michael Drake
11b784a167 Node collapsing needs to happen when leaving nodes. 2013-09-03 12:36:29 +01:00
Michael Drake
c2375339a1 Add recursive expand/contract functions to hotlist, global history, and cookie manager modules. 2013-09-03 11:28:02 +01:00
Michael Drake
b56d684a31 Add a pair of recursive expand/contract functions. 2013-09-03 11:06:07 +01:00
Michael Drake
472108576e Make it more clear that tree.c is deprecated. 2013-09-02 22:58:18 +01:00
Michael Drake
cf8ffa412a Remove old hotlist, cookies, and history_global_core modules.
New versions of expand/collapse node functions for these modules aren't yet implemented.
2013-09-02 22:41:04 +01:00
Michael Drake
e9f65ff9cb Remove cookies, history_global, and hotlist_old _initialise and _cleanup functions. 2013-09-02 18:57:43 +01:00
Michael Drake
49c7994d05 Remove bulk of old treeview implementation. 2013-09-02 16:19:16 +01:00
Michael Drake
46e569c481 Use TREE_HOTLIST directly. 2013-09-02 14:42:53 +01:00
Michael Drake
9f35fd3fee Use TREE_HISTORY directly. 2013-09-02 14:39:04 +01:00
Michael Drake
128fdbec43 Select TREE_COOKIES directly. 2013-09-02 14:33:53 +01:00
Michael Drake
5c7ca39ada Remove tree_url_node module. Had to disable treeview scanning in amiga and cocoa front ends. Amiga front end very likely broken. 2013-09-02 14:17:09 +01:00
Michael Drake
28a948bd32 Reduce old hotlist to skeleton. 2013-09-02 13:35:49 +01:00
Michael Drake
29328e5077 Reduce to skeleton. 2013-09-02 13:15:07 +01:00
Michael Drake
ec3547ec9d Remove unused type. 2013-09-02 13:08:36 +01:00
Michael Drake
81b2a859c0 Reduce old cookie manager to skeleton. 2013-09-02 13:06:40 +01:00
Michael Drake
452c89aa83 Remove unused hotlist_old_visited. 2013-09-02 12:53:47 +01:00
Michael Drake
6a4a297b2f Remove temp_treeview_test option. Now it's always "enabled". 2013-09-02 12:47:36 +01:00
Michael Drake
fadaa306d0 Always redirect to the new treeview implementations. 2013-09-02 12:46:33 +01:00
Michael Drake
5d76b448b1 Use new hotlist. 2013-09-02 12:44:40 +01:00
Michael Drake
4ce2f6fd55 Update to use new hotlist and global history manager. 2013-09-02 12:29:16 +01:00
Michael Drake
9a59103c6a Polish node deletion. 2013-08-30 13:29:19 +01:00
Michael Drake
09f5b0e95f Improve callback suppression options. Reduce unnecessary callback usage. 2013-08-30 12:51:40 +01:00
Michael Drake
e2fbd3a266 Avoid copying rectangle for redraw_request calls. 2013-08-30 11:38:02 +01:00
Michael Drake
b4a3c94cf0 Various redraw improvements. 2013-08-29 20:43:25 +01:00
Michael Drake
67cbc779be Make client-requested node deletions issue a redraw request. 2013-08-29 19:58:43 +01:00
Michael Drake
db2f47ab27 Use treeview height instead of REDRAW_MAX for rectangle's y1. 2013-08-29 19:12:49 +01:00
Michael Drake
8cc6ac8980 Redraw on node creation, unless suppressed. 2013-08-29 19:05:04 +01:00
Michael Drake
afaf24378b Add flag to suppress redraw on node creation. 2013-08-29 18:31:58 +01:00
Michael Drake
895954a1e1 Don't bother trying to keep old hotlist in sync -- the old one isn't saved when new one is used anyway. 2013-08-29 14:13:09 +01:00
Michael Drake
7d0f0b08e2 Redirect most interaction with the old hotlist to the new one, when the new one is enabled. 2013-08-29 13:09:24 +01:00
Michael Drake
38e4bbe74d Make clear that title is copied. 2013-08-29 13:08:49 +01:00
Michael Drake
bc0571b9dc Better handling of added entry titles. 2013-08-29 13:08:04 +01:00
Michael Drake
7a25b6aaee Fix one px missmatch between click and drag handling of node selection. 2013-08-28 15:59:00 +01:00
Michael Drake
eaa04e3208 Fix pass-through for drag end. 2013-08-28 15:37:41 +01:00
Michael Drake
bd39d108db Add a few functions for front ends to use. 2013-08-28 14:23:22 +01:00
Michael Drake
91018643db Expose a bit more core treeview functionality for hotlist clients. 2013-08-28 14:13:02 +01:00
Michael Drake
bc14d492d2 Add height getter. 2013-08-28 14:12:30 +01:00
Michael Drake
28dec67c64 Remove select all and clear selection functions from public API. Clients can send KEY_SELECT_ALL and KEY_CLEAR_SELECTION to the keypress handler. 2013-08-28 13:36:15 +01:00
Michael Drake
826b392b57 Simple treeview_edit_selection implementation. 2013-08-28 12:58:41 +01:00
Michael Drake
fbfe5ab17b Function for global history export. 2013-08-28 11:43:34 +01:00
Michael Drake
45d3b9162c Move default title generation from _fini to _export. 2013-08-28 11:14:33 +01:00
Michael Drake
a61e74714d Give export walk ctx clearer name. 2013-08-28 11:05:21 +01:00
Michael Drake
eec80c561c Expose hotlist_export. 2013-08-28 10:59:56 +01:00
Michael Drake
39b68d0b83 Ensure url is unreffed. 2013-08-27 21:01:35 +01:00
Michael Drake
77a090e9d0 Functions to add entry/folder at y-coord or at selection. 2013-08-27 20:56:43 +01:00
Michael Drake
43d1e777df Function to get releations for node entry. 2013-08-27 20:56:20 +01:00
Michael Drake
52937b9763 Update new hotlist 2013-08-27 13:46:36 +01:00
Michael Drake
fd1a94a751 Update the new hotlist on visits. 2013-08-27 13:38:23 +01:00
Michael Drake
4bf5ec0dad Unset default folder when it gets deleted. 2013-08-27 13:31:40 +01:00
Michael Drake
fb9353f220 Use Messages for default folder name. 2013-08-27 12:44:01 +01:00
Michael Drake
00f108f4a2 Add new entries to default folder. 2013-08-27 11:57:31 +01:00
Michael Drake
b7bc3deb7f Load and save default folder ID. 2013-08-27 11:40:12 +01:00
Michael Drake
2c3d2e5f8e Add function to update visited data for hotlist entries. 2013-08-23 19:49:06 +01:00
Michael Drake
44e33001d7 Add function to remove any entries with given URL. 2013-08-23 18:26:18 +01:00
Michael Drake
184650c7d8 Add function to determine whether URL is in hotlist. 2013-08-23 17:30:31 +01:00
Michael Drake
f0749394d1 Add Hotlist export/save support. 2013-08-22 16:06:06 +01:00
Michael Drake
1212f1d321 Expose leaving node callback in public treeview walker interface. 2013-08-22 16:05:03 +01:00
Michael Drake
1e27299cf1 Inform when textarea drag is happening. 2013-08-21 13:54:00 +01:00
Michael Drake
7e6079ea49 Complete editing of entry title and URL values. 2013-08-20 20:04:42 +01:00
Michael Drake
50efc3be3c Act on node edit request message for folders. 2013-08-20 20:04:42 +01:00
Michael Drake
71676165c1 Add folder node update function. 2013-08-20 20:04:42 +01:00
Michael Drake
9e29ef4bdd Pass edit message to treeview client, when editing ends. 2013-08-20 15:44:24 +01:00
Michael Drake
a9e92e335c Fix node insertion ancestor height updating having cumulative effect. 2013-08-20 15:02:09 +01:00
Michael Drake
9f3a83da66 Tidy edit start click behaviour, with existing selections. 2013-08-19 14:41:12 +01:00
Michael Drake
385af23fbe Start of treeview node edit support. Internal treeview part is mostly done. It now needs to inform the client (only hotlist allows edit), of the change. And the hotlist needs to handle the change request message and update the node. 2013-08-19 14:23:44 +01:00
Michael Drake
5beac3085e Implement get window dimensions for treeview test parasite. 2013-08-19 14:04:20 +01:00
Michael Drake
0e00654681 Mention behaviour when params are NULL in comment. 2013-08-19 14:03:36 +01:00
Michael Drake
0ae3bfde8a Use extern on tree.c globals. (These go away when front ends can use the new treeview modules directly.) 2013-08-18 17:17:41 +01:00
Michael Drake
f389c7ad6e Set allow edit flag on title and url fields. 2013-08-18 17:16:47 +01:00
Michael Drake
fd961c6dfa Ensure ctrl modifier is handled, by dealing with it before no-modifiers case. 2013-08-18 13:22:57 +01:00
Michael Drake
5aa5eb9d6f Ensure nodes within contracted nodes are unselected. 2013-08-17 23:52:48 +01:00
Michael Drake
5f32ac1858 Fix clang warning. 2013-08-17 20:20:49 +01:00
Michael Drake
4ab7ad6bd2 Implement node moving drags. 2013-08-17 19:39:17 +01:00
Michael Drake
e5a4c3d4c9 Find the top y value of selections for indicator pos. 2013-08-17 14:37:24 +01:00
Michael Drake
d1cd950327 Improve keyboard nav slightly. 2013-08-17 13:40:05 +01:00
Michael Drake
e1468a78df Fix keyboard nav redraw when treeview height decreases as a result of keypress. Reduce some variable name lengths. 2013-08-17 13:27:38 +01:00
Michael Drake
e17e56b0cc Move drops over selection target top of selected run. 2013-08-17 13:22:40 +01:00
Michael Drake
59ea55ef3d Propagate selection to visible descendant nodes when a move drag is started with folder selected. 2013-08-17 12:51:08 +01:00
Michael Drake
dee0cb0380 Optimise drop indicator redraw area. 2013-08-17 11:48:16 +01:00
Michael Drake
d8bf6c2216 Remove unused structure member. 2013-08-16 23:13:25 +01:00
Michael Drake
29b6185ab1 Do indicator redraw after everything else is done, to simplify things. 2013-08-16 23:08:57 +01:00
Michael Drake
b699169d0b Group the move details, for clarity. 2013-08-16 21:40:45 +01:00
Michael Drake
304523553c Start optimising drop indicator redraw. 2013-08-16 20:34:41 +01:00
Michael Drake
a9cad3cfa8 Begin move handling. Currently only moves the drop target indicator during drags. Nothing actually gets moved. 2013-08-16 20:06:08 +01:00
Michael Drake
7169b2fb01 Make treeview test parasite convert move drag enum type. 2013-08-16 20:03:18 +01:00
Michael Drake
15c1ad7eea Add move drag type. 2013-08-16 20:02:49 +01:00
Michael Drake
7bd57563e1 Set appropriate treeview flags. 2013-08-16 20:01:58 +01:00
Michael Drake
5f4c624c5b Slight refactor of drag end handling, for future handling of more types of drag. 2013-08-16 12:23:37 +01:00
Michael Drake
2dc8b64153 Add comment. 2013-08-16 11:17:45 +01:00
Michael Drake
285fe734bc Rename "section" to "part". 2013-08-16 11:15:16 +01:00
Michael Drake
9d624ce17f Inform front end when drag starts below nodes too. 2013-08-16 08:25:26 +01:00
Michael Drake
2ba2fcc7b6 Add selection to enum. 2013-08-16 08:25:26 +01:00
Michael Drake
2a3ff41e14 Flag a TODO. 2013-08-16 08:25:26 +01:00
Michael Drake
2c695bc2fa Use abstracted folder creation. 2013-08-16 08:25:26 +01:00
Michael Drake
32ae7b5117 Add generator for default hotlist. 2013-08-16 08:25:25 +01:00
Michael Drake
e13e72357d Set built=false after destruction. 2013-08-16 08:25:25 +01:00
Michael Drake
82f5cd33a0 Implement simplisitic hotlist_add function. Need to improve where new entries are placed. (See TODO comment.) 2013-08-16 08:25:25 +01:00
Michael Drake
952ab7b6e4 Move urldb data acquisition so it doesn't need to be duplicated when there are other entry points. 2013-08-16 08:25:25 +01:00
Michael Drake
ec7e1f71c4 Tidy some comments. 2013-08-16 08:25:25 +01:00
Michael Drake
da557af967 Slight simplification. 2013-08-16 08:25:25 +01:00
Michael Drake
58315b9673 Minor tweaking. 2013-08-16 08:25:25 +01:00
Michael Drake
8b83456c02 Beginnings of new hotlist module, implemented with new treeview.
Currently it can only open, display and launch entries in an existing hotlist file.

TODO:
  - Generate defualt hotlist when file not found.
  - Add hotlist saving.
  - Allow adding to hotlist.
  - Allow hotlist editing.
  - Allow hotlist nodes to be moved by dragging.
  - Allow hotlist visit data to be updated.
2013-08-16 08:25:25 +01:00
Michael Drake
ee7df2761f Make dom node children iterator return nserror. 2013-08-16 08:25:24 +01:00
Michael Drake
473738083b Fix several comments about return type. 2013-08-16 08:25:24 +01:00
Michael Drake
298ac7c329 Use the new ssl certificate viewer in all situations. 2013-08-13 14:09:15 +01:00
Michael Drake
1e64ca5f44 Remove old sslcert module. 2013-08-13 13:52:21 +01:00
Michael Drake
bf11033987 Remove unused flags. 2013-08-13 13:43:08 +01:00
Michael Drake
eaae716989 Move old hotlist out of the way. 2013-08-13 12:41:04 +01:00
Michael Drake
da84e1a00a Add SSL cert handling to treeview test hack. 2013-08-12 10:32:54 +01:00
Michael Drake
5520b2ca92 Clear out most of old sslcert module. 2013-08-12 10:31:32 +01:00
Michael Drake
d89b5e2678 Build SSL certificate viewer module. 2013-08-12 10:30:24 +01:00
Michael Drake
4a9e4a676f First pass at new ssl certificate chain viewer module. 2013-08-11 22:11:05 +01:00
Michael Drake
b770130a8b Improve namespacing of enum values. 2013-07-26 15:20:19 +01:00
Michael Drake
2bd587add5 Make the parasitic hack of the old tree code more robust. Now if the temp_treeview_test option is set, the global history and cookie manager will be replaced with their respective new implementations. 2013-07-26 14:48:26 +01:00
Michael Drake
bb870de150 Move remaining string literals over to FatMessages. 2013-07-26 12:49:41 +01:00
Michael Drake
f2476a1e20 Yield ownership of value to field builder, since date strings were already allocated. 2013-07-26 12:23:00 +01:00
Michael Drake
b0baa839e8 Avoid snprintf and having buffer on stack. 2013-07-26 12:16:53 +01:00
Michael Drake
7bbcec90c4 Use prefabricated field text for common values. 2013-07-26 12:11:14 +01:00
Michael Drake
0d681fb38e Log old cookie manager init timings for comparison. 2013-07-25 22:51:54 +01:00
Michael Drake
44fa2a9b91 Optimise cookie tolder and entry node search by comparing lengths before strings. 2013-07-25 22:31:27 +01:00
Michael Drake
3f0e70706d Abstract field building. 2013-07-25 22:22:36 +01:00
Michael Drake
f3a3272dd3 Flag a todo. (Move some string literals to messages.) 2013-07-25 16:09:43 +01:00
Michael Drake
92ee6e953c Build new cookie manager. 2013-07-25 16:08:22 +01:00
Michael Drake
219f5dac32 Add initial version of new cookie manager. 2013-07-25 16:07:46 +01:00
Michael Drake
4697d1ccc1 Expose treeview walker. 2013-07-25 16:06:34 +01:00
Michael Drake
17abee0045 Namespace treeview node callback table. 2013-07-25 15:06:09 +01:00
Michael Drake
ba576ad5d6 Guard for uninitalised history case. 2013-07-25 11:45:07 +01:00
Michael Drake
a399e5aa70 Fix return type. 2013-07-25 11:42:04 +01:00
Michael Drake
a4b5a8aed7 Unset built bool when fini is called. 2013-07-25 11:41:16 +01:00
Michael Drake
ef05c2f6e6 Return correct error. 2013-07-25 11:07:40 +01:00
Michael Drake
c6820e8402 Replace magic numbers with enum. 2013-07-24 23:03:16 +01:00
Michael Drake
df2efd03c4 Update header guard. 2013-07-22 11:12:57 +01:00
Michael Drake
68078d7ea7 Fix up for cookies_old rename. 2013-07-22 10:21:37 +01:00
Michael Drake
01159ff589 Move cookies viewer module. 2013-07-21 23:24:07 +01:00
Michael Drake
9ac58865a7 Remove unused function declaration. 2013-07-17 11:42:42 +01:00
Michael Drake
5aed142560 Document callbacks. 2013-07-17 11:42:20 +01:00
Michael Drake
618ef54983 Update new global history, if the treeview test option is set. 2013-07-16 13:15:22 +01:00
Michael Drake
07c2add5cc Add function to add to global history. Fix add_entry to actually add new entry after removing an existing one. Implement directory deletion. 2013-07-16 13:13:33 +01:00
Michael Drake
28a04f6da7 Reset entry url's urldb visit data when user deletes entry from global history. 2013-07-15 21:51:45 +01:00
Michael Drake
ec9608c4de Make node delete callback msg differentiate between deletes caused by user interaction and other deletes (e.g. treeview destruction). 2013-07-15 14:34:56 +01:00
Michael Drake
9f72b5e046 Fix namespace of old global history add function. 2013-07-15 12:57:40 +01:00
Michael Drake
094ef9a64b Minor wrapping fix. 2013-07-12 15:31:43 +01:00
Michael Drake
716776a181 Remove forward declaration. 2013-07-12 13:50:17 +01:00
Michael Drake
55592d5a8d Move hotlist_visted from browser.h to hotlist.h 2013-07-12 12:07:54 +01:00
Michael Drake
d6d9378e9b Move global_history_add out of browser.h into global_history_core.h 2013-07-12 12:01:54 +01:00
Michael Drake
3a0bda9771 Move local history over to nsurl. 2013-07-11 23:38:32 +01:00
Michael Drake
3f45e53539 s/history_core/local_history/ 2013-07-10 11:55:42 +01:00
Michael Drake
ed557f090a Cursor down moves to next after noncontinuous selections. 2013-07-09 14:24:48 +01:00
Michael Drake
0df23dda20 Cursor right toggles expansion. 2013-07-09 13:47:06 +01:00
Michael Drake
11eed50de4 A couple of tidyups. 2013-07-09 12:46:30 +01:00
Michael Drake
541bc8e283 Initial keyboard navigation support. 2013-07-09 12:42:22 +01:00
Michael Drake
e9401de768 Move mix_colour macro out of treeview for other stuff to use. 2013-07-08 17:41:06 +01:00
Michael Drake
81a1506c5c Launch selection launches entries within contracted folders. 2013-07-08 15:22:25 +01:00
Michael Drake
e8f2297d0f Improve doc comments. 2013-07-08 13:01:00 +01:00
Michael Drake
7bd01a0e75 Return key launches current selection. 2013-07-08 12:53:19 +01:00
Michael Drake
de1f0afde2 Change how nodes are deleted. 2013-07-06 23:00:43 +01:00
Michael Drake
3e33721ab6 Make tree walker use nserror. 2013-07-03 14:18:33 +01:00
Michael Drake
5616221064 Typedefs for internal treeview and treeview_node structs. 2013-07-03 13:48:53 +01:00
Michael Drake
c256320b08 Treeview walker now takes two callback function pointers. One called in fwd direction, one called in bwd direction. 2013-07-03 13:23:26 +01:00
Michael Drake
4f238758db Don't allow empty folders. 2013-07-03 12:38:30 +01:00
Michael Drake
657d6ed587 Implement DEL_EMPTY_DIRS flag. 2013-07-03 12:37:58 +01:00
Michael Drake
520503bc7e Allow empty folders to be open. 2013-07-03 12:14:07 +01:00
Michael Drake
26befde81c Make READ_ONLY flag a combinator for NO_MOVES and NO_DELETES. Implement NO_DELETES. 2013-07-03 11:50:23 +01:00
Michael Drake
c010535fbe Add treeview behaviour flags. 2013-07-03 11:19:16 +01:00
Michael Drake
4313d4c4ec Make flags for suppress resize. 2013-07-02 17:30:52 +01:00
Michael Drake
6014a35ed3 Implement entry launching. Currently only launches in new window. 2013-07-02 12:20:44 +01:00
Michael Drake
2476af4c65 Use messages for treeview labels. 2013-07-01 20:05:09 +01:00
Michael Drake
21cd01a9b3 Add quite param to insertion calls to suppress treeview height callback. 2013-07-01 16:16:11 +01:00
Michael Drake
bc37046c6c Pass drag state to core window user. 2013-07-01 15:10:45 +01:00
Michael Drake
6e5e741d53 Add temporary option to enable test of new treeview in bookmarks window. 2013-07-01 14:07:25 +01:00
Michael Drake
b6219f6685 Delete and backspace keys delete selected nodes. 2013-07-01 13:00:46 +01:00
Michael Drake
c862cd60ad Make treeview test parasite trap keyboard action too. 2013-07-01 11:49:14 +01:00
Michael Drake
743ffa2a46 Pass keypresses on to treeview. 2013-07-01 11:48:43 +01:00
Michael Drake
df1667bd58 Start keypress handling. 2013-07-01 11:47:46 +01:00
Michael Drake
6599f415f7 Handle mouse action below last node. 2013-07-01 10:37:40 +01:00
Michael Drake
31450767c9 Update ancestor heights on node deletion. 2013-06-30 22:07:53 +01:00
Michael Drake
a1f5272f78 Update treeview test parasite to pass tree height changes on to front end. 2013-06-30 17:54:08 +01:00