Commit Graph

163 Commits

Author SHA1 Message Date
Vincent Sanders
096bd47ab0 refactor url utility functions to use standard nserror codes and have appropriate documentation. 2014-05-08 00:16:50 +01:00
Vincent Sanders
c56642819e add file operations table and make all frontends use it.
This rationalises the path construction and basename file
operations. The default implementation is POSIX which works for all
frontends except windows, riscos and amiga which have differeing path
separators and rules.

These implementations are significantly more robust than the previous
nine implementations and also do not use unsafe strncpy or buffers
with arbitrary length limits.

These implementations also carry full documentation comments.
2014-05-07 16:24:51 +01:00
Vincent Sanders
f6867efcf8 Fix checking memory allocation return, fixes coverity 1164969 2014-05-07 16:23:19 +01:00
Vincent Sanders
626d37511f check return from stat() fixes coverity 1164069 2014-05-07 16:23:19 +01:00
Vincent Sanders
3a7fb23b87 monkey should not force external iconv 2014-04-30 12:11:01 +01:00
Vincent Sanders
6f9a93e332 fix formatting of defaults makefiles 2014-03-20 11:05:39 +00:00
Vincent Sanders
87f6314dab move scheduleing into browser operation table 2014-03-09 15:37:40 +00:00
Michael Drake
49bed056dd Make browser_window_navigate (un)verifiable flag match browser_window_create. 2014-02-10 22:40:04 +00: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
Michael Drake
ea79e85fcd Clean up gui_window creation API. 2014-02-09 13:07:39 +00:00
Vincent Sanders
6799f68bcc stop monkey pulling in headers from gtk 2014-02-03 17:00:10 +00:00
Vincent Sanders
886a3106db move utf8 local conversion operations to table 2014-02-01 22:17:36 +00:00
Vincent Sanders
427f127fa9 remove further extraneous includes 2014-02-01 14:23:58 +00:00
Vincent Sanders
db33103fa3 clean up desktop/gui.h include usage 2014-01-29 21:35:53 +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
Vincent Sanders
8ce0a10670 move path_to_url and url_to_path to fetch operation table 2014-01-25 23:01:32 +00:00
Vincent Sanders
b38dfd7939 ensure monkey command dispatch frees argument vector (coverity 1127054) 2014-01-24 11:54:53 +00:00
Vincent Sanders
0475693394 create table for fetcher operations and move all operations into it 2014-01-23 00:00:18 +00:00
Vincent Sanders
d47fed4524 move 401 login into operation table 2014-01-16 00:52:17 +00:00
Vincent Sanders
38cb39339a move filename_from_path and path_add_part into gui operation tables 2014-01-16 00:01:25 +00:00
Vincent Sanders
bd065d4a43 split browser gui operations up 2014-01-15 19:37:05 +00:00
Vincent Sanders
68eaec5cb4 complete move of remaining core gui functions 2014-01-15 12:28:55 +00:00
Vincent Sanders
8dfe225153 move download operations to download table 2014-01-14 16:04:02 +00:00
Vincent Sanders
d18c8ed452 move teh final optional window operations into the table 2014-01-13 22:54:19 +00:00
Vincent Sanders
e82d83f184 move four more optional window operations to table 2014-01-13 14:51:27 +00:00
Vincent Sanders
d70e371cd9 move two more mandantory window operations to table 2014-01-13 11:38:35 +00:00
Vincent Sanders
7227c29bba move window scroll getter and setter into operations table 2014-01-13 01:08:15 +00:00
Vincent Sanders
5a962586fb move mandantory window update and redraw operations into table 2014-01-12 23:50:54 +00:00
Vincent Sanders
4b49b4ac77 move more optional window operations into table including removing unused hide_pointer operation altogether 2014-01-12 22:55:26 +00:00
Vincent Sanders
b7736bae2f split gui operations into core and window and move more operations into tables 2014-01-12 17:07:34 +00:00
Vincent Sanders
56bb9582b1 move set title, set url, start and stop throbber window operations to gui table 2014-01-12 10:27:41 +00:00
Vincent Sanders
c8496df3df move window creation and destruction into table 2014-01-11 22:34:12 +00:00
Vincent Sanders
d3c392c3d3 Initial conversion of netsurf gui to callback vtable 2014-01-11 14:20:30 +00:00
Daniel Silverstone
f97c1fc605 Add some more frontend stubs and fix up some others 2014-01-05 17:37:21 +00:00
Daniel Silverstone
692d4a328c Fix some log statements 2014-01-05 17:22:30 +00:00
Rob Kendrick
550c8cd73c Change gui_file_gadget_interface to pass gui_window not browser_window, add GTK implementation that of course does not work. 2014-01-05 16:45:32 +00:00
Rob Kendrick
d8ad3b8e78 Add new gui entry point for file open dialogue requests 2014-01-05 16:01:03 +00:00
Vincent Sanders
a1725caf86 fix mngectony makefiles 2014-01-04 18:08:08 +00:00
Vincent Sanders
5a408069c9 remove lcms dependancy as NetSurf does not directaly use it.
The dependancy probbaly comes from our historical use of libmng,
even then the libmng pkg-config should bring it in.
2014-01-04 16:13:10 +00:00
Vincent Sanders
75ec87cbca fix null derference (coverity 1127056) 2013-11-27 21:36:56 +00:00
Vincent Sanders
36bf4547c6 fix null ereference (coverity 1127057) 2013-11-27 21:35:30 +00:00
Vincent Sanders
447ab79e89 fix null dereference (coverity 1127058) 2013-11-27 21:31:00 +00:00
Michael Drake
49c7994d05 Remove bulk of old treeview implementation. 2013-09-02 16:19:16 +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
19a9193ecb No need to set treeview icon for ssl cert windows. 2013-08-12 11:27:12 +01:00
Vincent Sanders
bccaa05fdb add finalisation to options and document the API better 2013-06-01 16:09:39 +01:00
Vincent Sanders
182b85b9ec make monkey frontend use new options code 2013-05-28 14:16:11 +01:00
Vincent Sanders
ee6e6eec05 move options include 2013-05-28 14:16:10 +01:00
Vincent Sanders
a5355ec557 change all core and frontend options headers to new format 2013-05-28 14:16:10 +01:00
Vincent Sanders
87b80b667f add missing include 2013-05-23 12:13:53 +01:00
Vincent Sanders
35dacc3671 move the logging initialisation out to be call by frontends
This allows each frontend to pass a distinct callback to configure the
output file stream appropriately for their use.
2013-05-23 11:50:57 +01:00
Michael Drake
9644d0594c Remove struct selection from gui_drag_save_selection, so gui.h doesn't need it now. 2013-05-10 11:54:26 +01:00
Michael Drake
037beb44fb Pass caret clip rect out to front ends. (Nothing actually using them yet.) 2013-03-05 22:54:51 +00:00
Vincent Sanders
0eb0798873 fix errors introduced in refactor 2013-02-18 12:24:49 +00:00
Vincent Sanders
529ca251fc rename flags for browser_window routines to be shorter 2013-02-18 11:51:42 +00:00
Vincent Sanders
b112dec78d change browser_window_create and refactor all callsites 2013-02-18 11:23:48 +00:00
Vincent Sanders
3bfb5b96a7 browser_window_navigate refactor 2013-02-18 11:23:27 +00:00
Michael Drake
e7e5211eb9 Update for new nsfont_split expectations. Untested, but code similar to framebuffer. 2013-02-10 18:32:08 +00:00
Michael Drake
0bfc40618a Make Monkey front end build with new clipboard API. 2013-01-08 17:06:01 +00:00
Vincent Sanders
484fa8b110 move common include path setup to core Makefile 2012-12-20 15:27:07 +00:00
Vincent Sanders
4448722425 allow flags to be selected based on compiler version 2012-12-13 19:27:16 +00:00
Vincent Sanders
c87cbe5655 split target defaults out 2012-12-13 19:26:24 +00:00
Vincent Sanders
45906b9dc2 make macro name more correct 2012-12-13 16:31:05 +00:00
Vincent Sanders
17e20537d4 try without option altogether 2012-12-13 16:04:06 +00:00
Vincent Sanders
0ff9d85813 let monkey generate unused-but-set-variable without causing an error 2012-12-13 15:52:55 +00:00
John-Mark Bell
617d655c7b Remove libxml 2012-11-10 00:11:57 +00:00
John-Mark Bell
f824ab8af4 Port save complete to libdom. 2012-11-03 23:19:45 +00:00
Daniel Silverstone
19a50699e2 Disable unused-but-set-variable warnings until such time as the JS bindings are complete (or bodged) 2012-11-02 23:04:22 +00:00
Vincent Sanders
9629e428a5 add javascript compilation to monkey 2012-10-22 16:37:58 +01:00
Michael Drake
35eb251244 Fix "error setting certificate verify locations" problem when the Choices file doesn't exist. Now there's a single place for front ends to set options overrides. Fix nsoption_setnull_charp leak. 2012-10-17 14:20:18 +01:00
Michael Drake
d88a839937 Remove suspension of bmp/gif images. It's completely redundant with the convert on demand core image cache. 2012-10-14 20:03:18 +01:00
Michael Drake
d9e7d58106 Fix up ripples from urldb change. 2012-10-11 11:20:02 +01:00
Vincent Sanders
e237ebac8f Split install and package targets.
Install target is for installing on the local machine and package generates a package
2012-08-23 11:46:31 +01:00
Michael Drake
153c444454 Move browser_window struct to private header. Places that shouldn't include it do, such as front end code.
Frontends that have been updated to build:
  framebuffer
  gtk
  monkey
  riscos

TODO:
  amiga
  atari
  beos
  cocoa
  windows
2012-08-22 12:22:58 +01:00
Michael Drake
d106091d6e Pass font plot style out to front end clipboard append function. 2012-08-13 14:43:04 +01:00
Vincent Sanders
76583d63ec link math library 2012-08-13 11:16:35 +01:00
John-Mark Bell
37779f77d2 Fix build: we need libdom now. 2012-08-01 08:53:13 +01:00
Michael Drake
ce20021df7 Fix colour string matching. Lose unneeded case insensitivity in matching.
svn path=/trunk/netsurf/; revision=13739
2012-03-27 11:02:35 +00:00
Michael Drake
eb189092c7 Constify param to gui_system_colour_char function.
svn path=/trunk/netsurf/; revision=13737
2012-03-27 10:47:29 +00:00
Daniel Silverstone
85d3e6337f Monkey does not need _GNU_SOURCE
svn path=/trunk/netsurf/; revision=13596
2012-03-24 15:22:01 +00:00
Vincent Sanders
1490b52a6b NetSurf options rework (a=vince r=daniels,jmb)
svn path=/trunk/netsurf/; revision=13548
2012-03-22 09:34:34 +00:00
John Mark Bell
b75a3960fc Fix gui_window_drag_start
svn path=/trunk/netsurf/; revision=13418
2012-02-05 08:16:41 +00:00
Michael Drake
6794af012e Constify rect param to gui_window_drag_start.
svn path=/trunk/netsurf/; revision=13397
2012-01-11 16:45:17 +00:00
Michael Drake
04ece30fa9 Pass pointer constraints for drag out to front ends. Ensure content scrollbar drag termination always informs the browser window layer that the drag is over.
svn path=/trunk/netsurf/; revision=13395
2012-01-11 14:20:26 +00:00
Michael Drake
67f2470d5a Pass whether background images are wanted in redraw_context.
svn path=/trunk/netsurf/; revision=13335
2011-12-23 22:39:25 +00:00
John Mark Bell
e2ffd38c1e Fix monkey frontend
svn path=/trunk/netsurf/; revision=13238
2011-12-04 14:59:11 +00:00
Daniel Silverstone
f32fa6fa0e More response tags, updated docs with commands
svn path=/trunk/netsurf/; revision=13181
2011-11-25 18:08:30 +00:00
Rob Kendrick
dd3ac94a9c Avoid unused variable warning
svn path=/trunk/netsurf/; revision=13180
2011-11-25 16:46:00 +00:00
John Mark Bell
d5bb9d98e7 Build resource: map at start time
Remove stylesheet url globals -- the core will always use resource:{default,quirks,adblock}.css as appropriate

svn path=/trunk/netsurf/; revision=12949
2011-10-05 08:32:52 +00:00
John Mark Bell
f27d5a3e15 Remove gui_multitask
svn path=/trunk/netsurf/; revision=12828
2011-09-21 00:25:09 +00:00
Michael Drake
0401d52f51 Remove gui_window_frame_resize_start() functions.
svn path=/trunk/netsurf/; revision=12738
2011-09-05 15:35:34 +00:00
Michael Drake
34fe2531f2 Remove gui_window_get_browser_window from core. Remove unused implementations from front ends. Rename the GTK front end implementation to nsgtk_get_browser_window and change the GTK front end to use that.
svn path=/trunk/netsurf/; revision=12737
2011-09-05 13:28:17 +00:00
Michael Drake
5be6bd452d Remove gui_window_position_frame() definition from core and remove all implementations from front ends.
svn path=/trunk/netsurf/; revision=12711
2011-09-04 18:20:24 +00:00
Vincent Sanders
cd554e6f1e make image content handlers build conditional from teh makefile
svn path=/trunk/netsurf/; revision=12673
2011-08-28 14:29:15 +00:00
Michael Drake
ad205c1d66 Fix up Monkey for r12574 API change.
svn path=/trunk/netsurf/; revision=12581
2011-07-06 12:56:31 +00:00
Michael Drake
3bb83e0349 Add file missing from r12543.
svn path=/trunk/netsurf/; revision=12544
2011-06-30 15:49:12 +00:00
Michael Drake
eddae6af06 Remove plotter table global. Pass a redraw context around redraw functions. Knockout could be handled better. Note: untested on most front ends.
svn path=/trunk/netsurf/; revision=12543
2011-06-30 15:48:07 +00:00
Michael Drake
dea7683985 Remove gui_window_set_scale().
svn path=/trunk/netsurf/; revision=12502
2011-06-24 12:01:24 +00:00
Michael Drake
5a4c8916ef If iframes are reformatted due to containing document reflow, don't need to redraw them since they will be redrawn when the containing document is redrawn. Make iframe handling more robust.
svn path=/trunk/netsurf/; revision=12497
2011-06-24 09:30:33 +00:00
John Mark Bell
e71691bae8 Merge branches/jmb/content-factory to trunk
svn path=/trunk/netsurf/; revision=12283
2011-05-06 20:40:09 +00:00