Commit Graph

59 Commits

Author SHA1 Message Date
Chris Young
01e116ee1f Clear pointer after free 2017-01-08 00:46:23 +00:00
Michael Drake
9aecf47408 Treeview: Rationalise initialisation and finalisation.
Previously the expected behaviour for front ends using the correct
API for hotlist, global history, cookie manager, and ssl cert
viewer was that the front end would initialise the treeview module
on startup and finalise it on application exit.

However, this meant that the front ends had to include the core
treeview header, which they didn't otherwise need.

Since the tree module provided access to the new treeview utilities
through the old tree API, and was used by front ends with no changes
for the new treeview API, the tree layer refcounted initialisations
of treeview-based widgets, and only called the underlying treeview
init/fini functions when needed.

This change moves that refcounting into the treeview module.  Now
the hotlist, global history, cookie manager, and ssl cert viewer
widgets call call treeview init/fini as part of their own
initialisation and finalisation.  This means that front ends
using the correct APIs for treeview-based widgets don't need to
know anything about the underlying treeview, and the tree module
compatibility layer has had its treeview refcounting removed.

Finally, the treeview_init function took a font size parameter.
Now it does not and lit gets font size from config.  We probably
want to add a new `treeview_font_size` option to nsoptions, and
have differnent defaults on different platforms. 12pt on RISC OS,
and 11pt elsewhere, most likely.
2016-08-10 18:57:36 +01:00
Vincent Sanders
73b81a59cc fix global history keypress consumption return 2016-08-04 23:40:34 +01:00
Vincent Sanders
976eca9958 msplit public url database API out for frontends 2016-06-13 23:34:45 +01:00
Vincent Sanders
7fc0a4c481 move desktop window header into public API 2016-05-30 17:32:57 +01:00
Vincent Sanders
c105738fa3 Change LOG() macro to be varadic
This changes the LOG macro to be varadic removing the need for all
callsites to have double bracketing and allows for future improvement
on how we use the logging macros.

The callsites were changed with coccinelle and the changes checked by
hand. Compile tested for several frontends but not all.

A formatting annotation has also been added which allows the compiler
to check the parameters and types passed to the logging.
2015-05-28 16:08:46 +01:00
Vincent Sanders
7e6b86eb1a make global history treeview directory creation return error instead of aborting 2015-05-03 17:40:27 +01:00
Michael Drake
4cc3746084 Make URL field for copying to clipboard. 2015-01-03 00:21:31 +00:00
Vincent Sanders
7c4c73f1b0 Desktop doxygen fixes 2014-11-09 21:49:33 +00:00
Vincent Sanders
1620f20c4d make global history treeview callback return error
returns an error instead of directly waning the user.
2014-10-30 22:52:54 +00:00
Vincent Sanders
db01637343 remove content include from urldb header 2014-07-17 00:18:44 +01:00
Michael Drake
ce4d52e72a Fix hotlist and global_history _get_selection functions.
Broken when selection was folder, rather than entry.
  Renamed tree_node_flags lables to avoid TREE_NODE_NONE name clash.
2014-05-24 15:09:20 +01:00
Vincent Sanders
706c92bf8f remove uneeded includes 2014-05-18 18:51:18 +01:00
Michael Drake
af014bce99 Allow tab creation without history clone. Changes browser_window_create and browser_window_navigate flags. 2014-02-10 14:08:45 +00:00
Vincent Sanders
654da2ffb5 move utf8 conversion routines to use nserror instead of their own error enum 2014-01-28 21:40:13 +00:00
Michael Drake
b547e1205b Use messages for translations instead of string literals. 2013-11-11 14:32:07 +00:00
Michael Drake
951ad51cd4 Add functions to get first selected hotlist/global_history node data. 2013-09-13 14:24:25 +01:00
Michael Drake
e8071e676c Remove some redundancy. 2013-09-03 20:06:42 +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
c2375339a1 Add recursive expand/contract functions to hotlist, global history, and cookie manager modules. 2013-09-03 11:28:02 +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
09f5b0e95f Improve callback suppression options. Reduce unnecessary callback usage. 2013-08-30 12:51:40 +01:00
Michael Drake
afaf24378b Add flag to suppress redraw on node creation. 2013-08-29 18:31:58 +01:00
Michael Drake
bd39d108db Add a few functions for front ends to use. 2013-08-28 14:23:22 +01:00
Michael Drake
fbfe5ab17b Function for global history export. 2013-08-28 11:43:34 +01:00
Michael Drake
473738083b Fix several comments about return type. 2013-08-16 08:25:24 +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
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
5616221064 Typedefs for internal treeview and treeview_node structs. 2013-07-03 13:48:53 +01:00
Michael Drake
4f238758db Don't allow empty folders. 2013-07-03 12:38:30 +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
743ffa2a46 Pass keypresses on to treeview. 2013-07-01 11:48:43 +01:00
Michael Drake
64eab40b18 Fix typo. 2013-06-18 20:10:08 +01:00
Michael Drake
4e0f960e3c Write up the rest of the fucntion comments. 2013-06-18 19:53:57 +01:00
Michael Drake
7cd0bacaf6 Create folders as they're required when entry is inserted. 2013-06-18 19:26:49 +01:00
Michael Drake
8c114cdfd8 Ensure global_history_delete_internal checks treeview node is NULL. Add various documentation comments. 2013-06-18 18:54:06 +01:00
Michael Drake
a642cab1b7 Point at header for exported function commentary. 2013-06-18 17:26:36 +01:00
Michael Drake
146fea758f Global history finaliser does not need core_window stuff. 2013-06-18 17:25:23 +01:00
Michael Drake
b04acde228 Set visits and last visited values. 2013-06-04 21:53:28 +01:00