Commit Graph

204 Commits

Author SHA1 Message Date
Vincent Sanders
3b9df4f796 Fix IDL update from spec 2015-07-17 09:29:37 +01:00
Vincent Sanders
20d29c0537 fixup logging macros that incorrectly override the LOG() macro name 2015-05-28 17:33:18 +01:00
Vincent Sanders
30c2962faa Fixup javascript logging to cope with new varadic LOG macro 2015-05-28 16:33:30 +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
d06df231bc Update the core to use the split operations table headers
Second in the series to decouple the core API usage from the frontends.
2014-10-16 22:33:43 +01:00
Vincent Sanders
02bbaa3e88 split version info into its own header and remove unnecessary nesurf.h includes
The netsurf.h header should *only* contain the registration, core
initialisation and finalisation methods. Version information is best
placed in its own header.

Also remove any unneeded inclusion of this header limiting it to
solely the places the relevant API is required.
2014-10-13 15:08:16 +01:00
Vincent Sanders
37755fb135 add incomplete scheme fetcher for javascript urls 2014-08-25 15:59:52 -07: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
Vincent Sanders
f8854707bb fix leak of utsname structure (coverity 1109881) 2013-11-06 10:53:01 +00:00
Vincent Sanders
ccb0c1cfd1 implement very, very bad js window.top method 2013-06-03 23:10:53 +01:00
Vincent Sanders
3aba4b778a enable trace logging in binding generation 2013-06-03 15:16:38 +01:00
Vincent Sanders
8d57bb30af forcing a GC when the new global is created improves memory usage with scripts enabled 2013-06-03 11:55:37 +01:00
Vincent Sanders
6397fedb2b Turns out there are still two different compiles of the 1.8.5 API about 2013-06-03 11:10:46 +01:00
Vincent Sanders
ae6058c15c create objects from window on demand an keep them as simple unshared objects
update prototype handling to keep GC refs
2013-06-02 21:00:32 +01:00
Vincent Sanders
ee6e6eec05 move options include 2013-05-28 14:16:10 +01:00
Vincent Sanders
ca345e9b99 fix version range when teh callback API changed 2013-05-22 20:42:37 +01:00
Vincent Sanders
ce0fe06349 create javascript heartbeat and hook a script timeout to it 2013-05-22 19:12:26 +01:00
Vincent Sanders
95e726c7cc split sources lists out to their subdirectories as first step towards using core buildsystem 2013-03-11 17:53:52 +00:00
Vincent Sanders
f3b515540e move javascript makefile 2013-03-11 11:09:47 +00:00
Vincent Sanders
529ca251fc rename flags for browser_window routines to be shorter 2013-02-18 11:51:42 +00:00
Vincent Sanders
3bfb5b96a7 browser_window_navigate refactor 2013-02-18 11:23:27 +00:00
Vincent Sanders
4ffa39177d fix docuemnt/window location to correctly navigate, fixes http://www.avaaz.org/ base page 2013-02-07 18:16:37 +00:00
Vincent Sanders
5ee7c6fd5c fix cast warning in location::href setter 2013-01-31 22:53:20 +00:00
Vincent Sanders
3d075bec32 add href location setter 2013-01-31 20:29:12 +00:00
Vincent Sanders
67ffb8e6e9 implement Element::hasAttribute 2013-01-23 17:46:40 +00:00
Vincent Sanders
09dc0649df implement Element::removeAttribute 2013-01-23 17:12:57 +00:00
Vincent Sanders
7ab835df8f implement Element::className 2013-01-23 17:00:13 +00:00
Vincent Sanders
16d938dd63 implement Element::id 2013-01-23 16:28:35 +00:00
Vincent Sanders
db7d3acdc3 add and use debug logging macro 2013-01-23 15:51:55 +00:00
Vincent Sanders
1d08350981 implement Element::tagName 2013-01-23 15:51:55 +00:00
Vincent Sanders
fab7b04de6 implement Element::getElementsByTagName 2013-01-23 15:51:45 +00:00
Vincent Sanders
31f7af700f implement Element::setAttribute 2013-01-23 13:42:43 +00:00
Vincent Sanders
faddd8b035 implement Element::getAttribute 2013-01-23 12:37:56 +00:00
Vincent Sanders
9b568abf96 add default property handler for array indexing 2013-01-22 22:54:34 +00:00
Vincent Sanders
fc6f04161e simplify jsapi property compatability macros 2013-01-22 18:58:22 +00:00
Vincent Sanders
5f66864c3a add macros for default proprty actions 2013-01-17 19:58:15 +00:00
Vincent Sanders
7b62bb5ff8 implement document.compatmode 2013-01-17 19:58:15 +00:00
Vincent Sanders
bb10e7131f use a prologue section in the node binding to abstract out javascrip dom node to libdom node conversion 2013-01-02 23:14:31 +00:00
Vincent Sanders
1b8f9daa51 Initial implementation of document.createComment
Improve robustness of jsobject to libdom object conversion in appendChild
2013-01-02 23:14:30 +00:00
Vincent Sanders
27873fa9fe add explicit stdlib include for definition of free() 2012-12-20 17:17:42 +00:00
Vincent Sanders
c0f9ae95b9 change the javascript bindings to use generated headers 2012-12-20 17:00:06 +00:00
Vincent Sanders
0d803b6c0d add coment on superclasses 2012-12-17 18:33:08 +00:00
Vincent Sanders
e913a58ee7 add missing copyright header 2012-12-17 15:15:11 +00:00
Vincent Sanders
347fdf0743 add dom event handler to document object 2012-12-17 14:55:16 +00:00
Vincent Sanders
90f0cfb551 allow for JSOPTION_JIT to not be set 2012-12-16 20:51:42 +00:00
Vincent Sanders
25e85f1429 do not add script handler if runtime cannot be initialised 2012-12-13 15:35:01 +00:00
Vincent Sanders
04825c62df implement document.URL and document.documentURI 2012-12-07 15:50:24 +00:00
Vincent Sanders
99f93da0f3 correctly handle location 2012-12-07 12:08:56 +00:00
Vincent Sanders
0718d80918 abstract out GC root manipulation for js values 2012-12-04 18:15:14 +00:00
Vincent Sanders
897acff532 make events work on elements 2012-12-04 18:01:11 +00:00
Vincent Sanders
878fe3e68c fix disabled javascript function signature 2012-12-03 17:53:14 +00:00
Vincent Sanders
70ece8a428 add stub implemntation for event handling in elements 2012-12-03 17:34:03 +00:00
Vincent Sanders
3052864773 issue click events at dom 2012-12-03 17:09:44 +00:00
Vincent Sanders
4865886721 fix logic 2012-11-28 22:35:40 +00:00
Vincent Sanders
71577f214d use macro to compare 2012-11-28 22:08:11 +00:00
Vincent Sanders
56b521a125 make window load event delivery work 2012-11-28 18:53:11 +00:00
Vincent Sanders
68f359d1ec initial event fireing implementation 2012-11-28 18:07:36 +00:00
Vincent Sanders
567017898c remove example binding its out of date and in nsgenbind anyway 2012-11-26 20:34:59 +00:00
Vincent Sanders
f9d94af893 add correct copyright headers 2012-11-26 20:34:59 +00:00
Vincent Sanders
7915708b58 update event handler to cope with nsgenbind changes 2012-11-25 19:27:58 +00:00
Vincent Sanders
ec43456e4b use unshared type handler for all events on window 2012-11-23 13:48:11 +00:00
Vincent Sanders
966fb9f215 rationalise the JSAPI macro usage requires nsgenbind changes 2012-11-22 14:00:13 +00:00
Vincent Sanders
054984099f use correct unref functions 2012-11-21 22:08:18 +00:00
Vincent Sanders
c2cd36fda8 improve location interface implementation 2012-11-21 18:51:44 +00:00
Vincent Sanders
a159a4a79b update JSAPI_PS() signature to cope with new nsgenbind 2012-11-20 19:17:54 +00:00
Vincent Sanders
bb6b546b4b cleanup formatting in binding files 2012-11-19 17:23:24 +00:00
Vincent Sanders
6797e1f8ef add nodeValue implementation 2012-11-18 21:50:11 +00:00
Vincent Sanders
8810bc0163 add nodeName implementation 2012-11-18 21:24:29 +00:00
Vincent Sanders
ba867955a2 add nodeType 2012-11-18 21:12:49 +00:00
Vincent Sanders
fa9046fc97 implement childElementCount 2012-11-18 17:35:52 +00:00
Vincent Sanders
99d3633e03 implement previousElementSibling and nextElementSibling 2012-11-18 12:59:10 +00:00
Vincent Sanders
bec8711528 implement lastElementChild 2012-11-18 12:38:07 +00:00
Vincent Sanders
b1ca83ad8c implement firstElementChild 2012-11-18 12:14:44 +00:00
Vincent Sanders
6589c7cc19 add Garbage colelction root set macros 2012-11-17 11:19:31 +00:00
Vincent Sanders
e36b8f6579 safely deal with NULL strings 2012-11-16 15:31:14 +00:00
Vincent Sanders
2bea506f83 add Node interface binding just to get the prototype 2012-11-14 02:11:01 +00:00
Vincent Sanders
a79e098817 remove redundant domutils and put functionality in existing utils/libdom 2012-11-10 11:44:38 +00:00
Daniel Silverstone
413248d0fc Rough implementation of httponly cookie support 2012-11-09 11:38:46 +00:00
Vincent Sanders
9318e66449 add document.createElement 2012-11-09 10:52:55 +00:00
Chris Young
b0e43148b5 JSContext needs to be a pointer 2012-11-08 23:28:04 +00:00
Chris Young
2a63ce87bb Spidermonkey 1.70 headers don't have JS_SET_RVAL 2012-11-08 20:09:40 +00:00
Vincent Sanders
85ede7192d put correct type casts into constructor 2012-11-08 17:30:43 +00:00
Vincent Sanders
28ac5fe9c1 implement appendChild so wikipedia lcm script works 2012-11-08 17:22:29 +00:00
Vincent Sanders
9006a96119 setup spidermonky 1.7.0 compatability macros, derived from ole's macros 2012-11-08 01:02:14 +00:00
Vincent Sanders
bb42a650df ensure JS_EvaluateScript has a variable to return its result 2012-11-08 00:45:30 +00:00
Vincent Sanders
06b08d3af0 make compatability macros for garbage collection 2012-11-08 00:40:21 +00:00
Vincent Sanders
882fd4f5c5 implement document.createTextNode operation 2012-11-07 19:55:42 +00:00
Vincent Sanders
ca24b238ed add Text interface 2012-11-07 18:53:05 +00:00
Vincent Sanders
43fb761f45 add document.body, head and documentElement getters
add a dom utility file and use it
2012-11-07 18:53:05 +00:00
Vincent Sanders
b68f928cb2 fix JSAPI_CLASS_NO_INTERNAL_MEMBERS for 1.8.0 spidermonkey 2012-11-06 18:47:26 +00:00
Vincent Sanders
e0dc7d40ab implement JSAPI_CLASS_NO_INTERNAL_MEMBERS correctly for differring versions of teh jsapi interface 2012-11-06 18:35:59 +00:00
Vincent Sanders
12f874cd92 separate javascript logging macro 2012-11-06 18:20:41 +00:00
Vincent Sanders
4bd5e23fff ensure garbage collector knows about created objects 2012-11-06 18:20:41 +00:00
Vincent Sanders
478b57c5d7 working docuemnt.cookie 2012-11-04 16:37:51 +00:00
Vincent Sanders
8de9e19077 improve dom reference accounting 2012-11-04 11:20:02 +00:00
Vincent Sanders
3f1b683845 implement dom-getElementsByTagName and nodelist and htmlcollection 2012-11-03 21:37:06 +00:00
Vincent Sanders
85c973f986 add jsstring to jsval conversion macro that copes with null jsstrings 2012-11-03 17:37:59 +00:00
Vincent Sanders
45d508487a add global api to window binding 2012-11-03 13:52:13 +00:00
Vincent Sanders
48cbca0399 move bindings into the correct place 2012-11-02 22:37:57 +00:00