1
0
mirror of https://github.com/rkd77/elinks.git synced 2024-12-04 14:46:47 -05:00
Commit Graph

383 Commits

Author SHA1 Message Date
Miciah Dashiel Butler Masters
8edcb292cb In l_set_option, use lua_toboolean for boolean options instead of
lua_tonumber. Now set_option(opt, not get_option(opt)) will always work
to toggle a boolean option.
2005-12-17 00:31:45 +00:00
Miciah Dashiel Butler Masters
35e5ec74d2 Merge with git+ssh://pasky.or.cz/srv/git/elinks.git 2005-12-17 00:09:02 +00:00
Miciah Dashiel Butler Masters
fa0ce83f24 Recomment do_tab_compl_unambiguous. 2005-12-17 00:02:15 +00:00
Miciah Dashiel Butler Masters
093800d6fb Only set match the first time since we are only interested in the common
substring at the start, which will be the same for all matches.
2005-12-16 23:59:04 +00:00
Miciah Dashiel Butler Masters
aad46173ae Refactor. 2005-12-16 23:50:17 +00:00
Miciah Dashiel Butler Masters
63a71348f2 Refactor. 2005-12-16 23:48:41 +00:00
Miciah Dashiel Butler Masters
5279ea97da Drop a funny comment. 2005-12-16 23:47:25 +00:00
Miciah Dashiel Butler Masters
20ee738904 Stop using a special value of 0 for longest_common_match to check whether
a match has been found and just check whether match is NULL.
2005-12-16 23:37:52 +00:00
Miciah Dashiel Butler Masters
0f8fe3f919 Define a new routine strcommonlen and use it in do_tab_compl_unambiguous. 2005-12-16 23:35:11 +00:00
Jonas Fonseca
45861c68e1 pop_dom_state(): Drop unused left-over argument 2005-12-15 22:05:30 +01:00
Jonas Fonseca
ef5d5fc27a dom_node_cmp(): Only use element or attribute type ID if both are set 2005-12-15 22:02:02 +01:00
Jonas Fonseca
c2d27a33d8 Rename: nav -> stack 2005-12-15 17:24:20 +01:00
Jonas Fonseca
87c8a5cee4 Merge with 5ef041c051
Which mysteriously didn't get auto-merged when updating.
2005-12-13 20:26:06 +01:00
Jonas Fonseca
5ef041c051 Redo the assertm() message to just show the type of the node and parent 2005-12-13 20:08:58 +01:00
Miciah Dashiel Butler Masters
13f4464151 Merge with git+ssh://pasky.or.cz/srv/git/elinks.git 2005-12-13 18:03:55 +00:00
Laurent MONIN
1ca88c9147 encode_multipart(): move @rd to inner scope. 2005-12-13 17:04:24 +01:00
Laurent MONIN
10aa67fb32 sort_submitted_values(): move @change abd @next to inner scope. 2005-12-13 17:01:45 +01:00
Laurent MONIN
dbcc033edb draw_frames(): move @more to inner scope. 2005-12-13 16:59:10 +01:00
Laurent MONIN
4a930507e4 process_file_requests(): move @more, @ftl and @doc_view variables to
inner scope.
2005-12-13 16:57:17 +01:00
Laurent MONIN
1c7b27c99f abort_files_load(): make @more and @ftl variables local to the loop. 2005-12-13 16:53:56 +01:00
Laurent MONIN
f331c7ac85 sort_bittorrent_peer_connections(): make @resort variable local to
the loop.
2005-12-13 16:52:08 +01:00
Laurent MONIN
852bdaec88 sort_queue(): make @swp variable local to the loop. 2005-12-13 16:50:04 +01:00
Jonas Fonseca
2eebef098d Prepare the CSS scanner for tokenizing ~ and + as char tokens
They are used for "E ~ F" and "E + F" element relations.
2005-12-13 16:35:41 +01:00
Jonas Fonseca
d1635d6970 Fix wrong assertion message string
You just cannot print dom_string structs with %s.
2005-12-13 16:33:50 +01:00
Jonas Fonseca
be3223b38e Don't try MIME handlers for application/x-bittorrent
It is an internally supported protocol, so it should be all internal. The
other thing was just causing headacks. Thanks to Neuromancer for suggesting
not to endeavor into another configuration nightmare. And thanks to arcatan
for requesting this for the n-th time. ;)
2005-12-13 16:32:53 +01:00
Jonas Fonseca
cd4fd51438 Compile fix, reported by zas 2005-12-13 16:28:14 +01:00
Jonas Fonseca
b2c1af1611 Add key parameter to the tracker announce URI
If non-empty it will be sent to the tracker. A short description of the
purpose:

* key: Optional. An additional identification that is not shared
  with any users. It is intended to allow a client to prove their
  identity should their IP address change.

Reported by Toksyuryel.
2005-12-13 16:16:55 +01:00
Jonas Fonseca
f35026ecfb Add DOM_NODE_UNKNOWN node type for internal purposes only 2005-12-13 04:52:47 +01:00
Jonas Fonseca
771a2eea82 Prepare the CSS scanner for parsing [foo{|,*,^,$,}=bar] selectors 2005-12-13 04:50:30 +01:00
Miciah Dashiel Butler Masters
db5b9be213 Convert the body of activate_link to a single switch statement. 2005-12-13 00:00:08 +00:00
Miciah Dashiel Butler Masters
b191247894 Reflow some code to reduce indentation in activate_link. 2005-12-12 23:57:37 +00:00
Miciah Dashiel Butler Masters
73e3cdecd0 Factor activate_link out of enter, which now just acquires the link
reference, calls activate_link, and triggers the onClick event.
2005-12-12 22:58:05 +00:00
Jonas Fonseca
5ff0849eb3 set_dom_string(): take length as size_t; -1 means use strlen() to get size 2005-12-12 17:42:26 +01:00
Jonas Fonseca
27116d6385 Make the DOM stack and the SGML parser interface more general
They now both hold a single private data member. This means the parser now
holds the renderer data.
2005-12-12 17:41:09 +01:00
Laurent MONIN
c769b81f93 send_event(): initialize @doc_view only when needed, and prevent a
useless test for mouse event when event is of keyboard type.
2005-12-12 17:11:28 +01:00
Laurent MONIN
59c8dcc473 get_current_link_info(): simplify code flow. 2005-12-12 17:05:43 +01:00
Laurent MONIN
ac5441db9e Prevent successive calls to time(), since it doesn't have much impact. 2005-12-12 17:00:08 +01:00
Jonas Fonseca
458fc5ee79 Review and change dom_string specific uint16_t value to size_t 2005-12-10 22:24:30 +01:00
Jonas Fonseca
c1136b8791 Use dom_string for storing sgml_node_info data
Reduces code redundancy for node searching. Oh, comment the purpose
of the special SGML_NODE_HEAD() macro.
2005-12-10 21:58:59 +01:00
Jonas Fonseca
cdc749def3 get_dom_node_value(): indent switch 2005-12-10 21:50:40 +01:00
Jonas Fonseca
86c9a37810 Factor out dom_string_casecmp() 2005-12-10 21:49:33 +01:00
Jonas Fonseca
87aad88c96 Use dom_string throughout the DOM stack interface 2005-12-10 21:42:49 +01:00
Jonas Fonseca
0fab644bee get_dom_node_value(): move non-compliant functionality to the tree renderer
Entity references are supposed to have a null value and the string
compression is for improving the tree view.
2005-12-10 21:37:47 +01:00
Jonas Fonseca
52f5276f92 get_dom_node_name(): indent switch statement 2005-12-10 20:05:01 +01:00
Jonas Fonseca
295679a5e6 get_dom_node_name(): return struct dom_string *
Also, simplify the rendering a bit for now.
2005-12-10 20:03:43 +01:00
Jonas Fonseca
7d6db6b152 Update the DOM tree renderer to support dom_strings 2005-12-10 19:44:01 +01:00
Jonas Fonseca
2aedeb0a67 get_dom_node_type_name(): return struct dom_string * 2005-12-10 19:28:37 +01:00
Jonas Fonseca
5f69255cbc get_dom_node_map_entry(): take name as a dom_string
Requires that dom_string->length becomes a size_t.
2005-12-10 19:21:12 +01:00
Jonas Fonseca
0546759b4b Use struct dom_string for node->proc_instruction.instruction 2005-12-10 18:59:17 +01:00
Jonas Fonseca
9935bf2083 Convert some yet unused strings to use the dom_string struct
Also remove the unneeded path member from the dom_node_id_item struct. It
was obsoleted by the addition of dom_node->parent.
2005-12-10 18:51:08 +01:00
Jonas Fonseca
ed7a292966 Use struct dom_string for node->attribute.value 2005-12-10 18:42:54 +01:00
Jonas Fonseca
ce3778c3c0 Add struct dom_string
In time it should be used for all strings in the DOM engine.
For now it is just used for node->string.
2005-12-10 18:37:47 +01:00
Miciah Dashiel Butler Masters
f9dea85126 Drop a line that should have been dropped with commit
3719e75068, 'Reduce code redundancy.'
2005-12-10 16:24:54 +00:00
Petr Baudis
0281f732ab Fix broken onClick on checkboxes etc.
onClick on checkbox would get triggered before actually ticking the
checkbox, which is not the expected behaviour (apparently). This change
makes sure that we call the onClick event handler only after actually
doing our work with the checkbox/select widget (for the other widgets,
things should stay the same).
2005-12-10 03:48:42 +01:00
Russ Rowan
588ba7db30 fonseca: We don't do that for other downloaded files, so why add bt links?
(global history)
2005-12-09 19:25:06 -05:00
Jonas Fonseca
f9c8838465 The not so short BitTorrent TODO list 2005-12-09 22:43:28 +01:00
Russ Rowan
9bd00e0ad8 Added a short TODO list for fonseca. 2005-12-09 16:29:02 -05:00
Laurent MONIN
20cb9ad9ee html_option(): optimize code. 2005-12-08 16:33:37 +01:00
Laurent MONIN
8fe86a1a63 Drop trailing spaces. 2005-12-08 16:27:51 +01:00
Laurent MONIN
3719e75068 Reduce code redundancy. 2005-12-08 16:26:37 +01:00
Laurent MONIN
1f7aa841aa Simplify tests. 2005-12-08 16:25:22 +01:00
Laurent MONIN
d9f0de82f8 Use closing_tag variable in tests. 2005-12-08 16:22:53 +01:00
Laurent MONIN
37ec65247d Minor code reordering. 2005-12-08 16:20:13 +01:00
Laurent MONIN
279f2bec93 Goto see instead of se. 2005-12-08 16:19:20 +01:00
Laurent MONIN
a499bf5a61 Introduce closing_tag variable. 2005-12-08 16:16:28 +01:00
Laurent MONIN
ae00f391f2 t_name -> name, t_namelen -> namelen. 2005-12-08 16:13:21 +01:00
Laurent MONIN
5f66f98b66 Prevent useless tests when @namelen is 0. 2005-12-08 16:11:19 +01:00
Jonas Fonseca
8aa078393a Move dom_node_data union outside the dom_node struct 2005-12-08 03:26:34 +01:00
Jonas Fonseca
45958b773a Merge with dom-stack-keep-nodes 2005-12-08 03:07:20 +01:00
Jonas Fonseca
4480a9a4cd Removes node from the DOM tree when using the SGML stream parser
That should free up some short-term memory.

Signed-off-by: Jonas Fonseca <fonseca@diku.dk>
2005-12-08 03:02:27 +01:00
Jonas Fonseca
8f97dc8403 done_dom_node(): remove the node from all parent lists
Signed-off-by: Jonas Fonseca <fonseca@diku.dk>
2005-12-08 02:59:40 +01:00
Jonas Fonseca
93fb17ea2a Indent switch statement
Signed-off-by: Jonas Fonseca <fonseca@diku.dk>
2005-12-08 02:32:23 +01:00
Jonas Fonseca
ce5bf8c6f8 Fix DOM node list iterators macros
Signed-off-by: Jonas Fonseca <fonseca@diku.dk>
2005-12-08 02:04:13 +01:00
Jonas Fonseca
1c2f271782 Add parent member to dom_node
Signed-off-by: Jonas Fonseca <fonseca@diku.dk>
2005-12-08 01:35:48 +01:00
Laurent MONIN
a1284ccd1f skip_table(): simplify code. 2005-12-07 20:51:09 +01:00
Laurent MONIN
f3838bac5b parse_table(): cache to_upper() result. 2005-12-07 20:36:07 +01:00
Laurent MONIN
485e16c6c9 parse_table(): optimize code a bit. 2005-12-07 20:32:36 +01:00
Laurent MONIN
53cbf3e3df parse_table(): introduce a local variable @is_header to cache test result. 2005-12-06 15:38:34 +01:00
Laurent MONIN
90d843e8fc parse_table(): re-order code. 2005-12-06 15:35:52 +01:00
Laurent MONIN
a00dfbecf9 parse_table(): fix missing goto see. 2005-12-06 15:32:02 +01:00
Laurent MONIN
29a80ce4eb parse_table(): optimize even more using @closing_tag. 2005-12-06 15:19:44 +01:00
Laurent MONIN
b63dd28500 parse_table(): use strlcasecmp() instead of strncasecmp(). 2005-12-06 15:17:56 +01:00
Laurent MONIN
3fe59e8c7a parse_table(): totally drop @t_name and @t_namelen in favor of @name
and @namelen.
2005-12-06 15:15:25 +01:00
Laurent MONIN
975a4251e8 parse_table(): reorder code to optimize even more. 2005-12-06 15:07:49 +01:00
Laurent MONIN
b6c54846ad parse_table(): reduce code redundancy. 2005-12-06 15:02:45 +01:00
Laurent MONIN
a371f22b22 parse_table(): use intermediate variables to optimize tests. 2005-12-06 14:57:25 +01:00
Jonas Fonseca
b06a8adeac Move parser root node initialization to init_sgml_parser()
... parse_sgml() in theory should be able to be called multiple times.
2005-12-06 12:30:53 +01:00
Jonas Fonseca
69b321cb5b Replace struct cache_entry member with struct uri member
Reduces the number of (unused) dependencies. Also, update the #include
list removing old entries.
2005-12-05 23:47:23 +01:00
Jonas Fonseca
38b8503161 Remove document member from struct sgml_parser
The document URI can be accessed from the cache entry.
2005-12-05 23:31:54 +01:00
Jonas Fonseca
1d24d549e4 Merge with dom-parser-stream 2005-12-05 19:41:56 +01:00
Jonas Fonseca
c7ad6f967b Introduce new pop_dom_state()
It's basically pop_dom_nodes() without the search part and is now used as a
backend in pop_dom_nodes(). Use it in parse_sgml_document() to avoid two
DOM stack searches in a row.
2005-12-05 19:40:35 +01:00
Jonas Fonseca
1c4a0d67ce Restore highlighting of element end-tags
... by installing a pop-callback for elements and responding to whatever
the parser has put in the end_token parser state member.
2005-12-05 19:33:15 +01:00
Jonas Fonseca
9aebb66bce Introduce separate push/pop callbacks
This should make it possible to do the SAX (parser stream thing) for XBEL.
And will also be used for fixing the end-tag highlighting.
2005-12-05 19:31:42 +01:00
Jonas Fonseca
d7d5fcab4d Save the end tag token in the SGML parser state
... so that the renderer eventually can pick it up and highlight it.
2005-12-05 19:28:23 +01:00
Jonas Fonseca
7a912795e1 Make the parser stream mode work as intended
This makes the parser and renderer share the stack, most importantly the
callbacks are now those of the renderer. Disable node attribute rendering
code that worked around the attributes being visited in sorted order.
2005-12-05 19:25:13 +01:00
Jonas Fonseca
2dddf86acc Initialize the renderer before initializing the parser
... so it is ready when/if the parser will push any initial states.
2005-12-05 19:20:48 +01:00
Jonas Fonseca
65b504f093 Remove all traces of the element end-tag hilighting hack
End-tags will stay uncolored for the next few commits.
2005-12-05 11:21:08 +01:00
Jonas Fonseca
4c8d871404 Introduce sgml_parser_type for specifying tree and streaming parsers
Mostly added for the future, since currently only one parser type is
supported.
2005-12-05 11:19:13 +01:00
Jonas Fonseca
05a61cd16a Update the DOM stack comment for things to come 2005-12-05 11:16:52 +01:00
Jonas Fonseca
8f25d73013 Use separate data variables for storing DOM stack data
They will eventually have to share the stack.
2005-12-05 11:16:05 +01:00
Jonas Fonseca
f85b498375 Add FIXME about using DOM node subtypes when searching the DOM stack 2005-12-05 11:11:40 +01:00
Jonas Fonseca
208515c82f Fix access to free()d memory in the DOM stack state data
There already was one work-around in the code related to clearing of the
state data after popping. Instead of storing a pointer to the state data in
the state we now store the depth of the state (in the stack) and use a
macro to access the state data. The bug occurred when reallocating the
stack state objects and the stack data pointers wasn't updated to point to
the newly allocated data.
2005-12-05 11:11:06 +01:00
Jonas Fonseca
cc416b2234 Prospone pushing of DOM nodes on the stack until they are fully initialized
Goes for both attributes and elements.
2005-12-05 10:26:55 +01:00
Laurent MONIN
eb74cdf6f9 html_button(): drop suspect line which has nothing to do with BUTTON
html element.
2005-12-05 09:57:54 +01:00
Laurent MONIN
59329dbc30 get_resource_info(): fix memory cache size display. 2005-12-05 09:37:29 +01:00
Laurent MONIN
e498b4bc74 Fix dump_frags() compilation (cache debug only). 2005-12-05 09:33:11 +01:00
Jonas Fonseca
cfb347bf45 Fix reporting of cache size in the resource dialog
The longlong bigval was never used. Reported by zas.
2005-12-04 20:13:26 +01:00
Laurent MONIN
15a7069fea Move code from html_input() to new html_input_format(). 2005-12-04 18:25:23 +01:00
Laurent MONIN
b863b65fbc html_input(): minor code reordering. 2005-12-04 12:45:42 +01:00
Laurent MONIN
a57c193ad9 html_input(): drop local variable @type, use @fc->type directly. 2005-12-04 12:43:53 +01:00
Laurent MONIN
7a443d0f73 html_input(): re-order type tests a bit. 2005-12-04 12:40:38 +01:00
Laurent MONIN
a5a731a77b html_input(): increase indentation a bit to drop a goto/label. 2005-12-04 12:38:19 +01:00
Laurent MONIN
1223850567 html_input(): improve the test logic and simplify the code. 2005-12-04 12:35:55 +01:00
Laurent MONIN
e222bb733c html_button(): improve the logic. 2005-12-04 12:27:22 +01:00
Laurent MONIN
2df9c06c46 Tidy up. 2005-12-04 12:24:39 +01:00
Laurent MONIN
d1f8b8061c html_form(): prevent useless second test by using else if instead of if. 2005-12-04 12:21:43 +01:00
Laurent MONIN
37b1fcadea distribute_table_widths(): simplify. 2005-12-01 11:39:39 +01:00
Laurent MONIN
978eff94ad Move code from format_table() to new distribute_table_widths(). 2005-12-01 11:37:08 +01:00
Laurent MONIN
ac01cbba30 draw_table_caption(): reduce indentation level. 2005-12-01 11:33:43 +01:00
Jonas Fonseca
b42c3f5bd2 Merge with git+ssh://pasky/srv/git/elinks.git 2005-11-30 01:28:34 +01:00
Laurent MONIN
40829d3e34 draw_frame_point(): use BORDER_* and enum border_char type, drop a TODO. 2005-11-29 11:21:35 +01:00
Laurent MONIN
c8b53a6c2b Complete enum border_char using codes borrowed from TWIN project. 2005-11-29 11:20:10 +01:00
Miciah Dashiel Butler Masters
fee63d574a Merge with git+ssh://pasky.or.cz/srv/git/elinks.git 2005-11-27 19:40:49 +00:00
Jonas Fonseca
3a9cba5695 Split the parser interface up into init, parser and done steps
The parser will eventually have to live across parses for incremental
renderering. Also the renderer and parser need to share the DOM stack.
2005-11-27 09:18:40 +01:00
Jonas Fonseca
83dca03a27 Remove indentation from option description 2005-11-27 07:29:36 +01:00
Jonas Fonseca
68404b5bf1 Remove some unused struct decls 2005-11-27 07:21:28 +01:00
Miciah Dashiel Butler Masters
d0eeab5b7e Merge the special handling in start_element for tables into html_table. 2005-11-26 02:38:12 +00:00
Miciah Dashiel Butler Masters
947ddc4160 In html_table, rename parameter a to attr. 2005-11-26 02:15:00 +00:00
Miciah Dashiel Butler Masters
cf2fcaa84f Shuffle code so that the do_html_select, do_html_select_multiple, and
html_select are together.
2005-11-26 01:50:46 +00:00
Miciah Dashiel Butler Masters
a781cf1894 Give do_html_select return type void instead of int. 2005-11-26 01:47:50 +00:00
Miciah Dashiel Butler Masters
321003a09e Check for the multiple attribute in html_select rather than in
do_html_select.
2005-11-26 01:46:01 +00:00
Miciah Dashiel Butler Masters
c2445f09bd Factor do_html_select_multiple out of html_select. 2005-11-26 01:43:10 +00:00
Miciah Dashiel Butler Masters
a6a67174af Drop the html_textarea wrapper for do_html_textarea and rename
do_html_textarea to html_textarea.
2005-11-26 01:35:26 +00:00
Miciah Dashiel Butler Masters
a27284611c Don't export do_html_select. 2005-11-26 01:32:10 +00:00
Miciah Dashiel Butler Masters
683c8722d2 Merge do_html_script into html_script. 2005-11-26 01:23:07 +00:00
Jonas Fonseca
bb588729ff Silence various sparse warnings
... related to __INT_MAX__ and friends not being defined, and various
__builtin.. function declarations missing (they should probably be added
to sparse, but I am lazy).
2005-11-25 19:02:16 +01:00
Jonas Fonseca
48c113b114 Fix non-ANSI function declaration 2005-11-25 18:51:21 +01:00
Jonas Fonseca
2e18d752fc Kill suspicious looking empty line 2005-11-25 13:31:07 +01:00
Laurent MONIN
3dd81f003e Fix trailing whitespaces. 2005-11-25 09:38:32 +01:00
Laurent MONIN
50ffe0f2cd html_select(): fix compilation bug to recent patch. 2005-11-25 09:32:43 +01:00
Miciah Dashiel Butler Masters
9062c83b51 Let html_select, html_textarea, and html_script call do_html_select,
do_html_textarea, and do_html_script directly instead of handling them
specially in start_element.
2005-11-25 01:22:55 +00:00
Miciah Dashiel Butler Masters
08c1cdf9d4 Add parameters unsigned char *html, unsigned char *eof, and unsigned
char **end to element_handler_T.
2005-11-25 00:30:13 +00:00
Jonas Fonseca
94e6b2def5 Revert DOM stack member renames and fix compile errors 2005-11-25 00:16:22 +01:00
Jonas Fonseca
60269a7466 One missing sparse warning fix 2005-11-24 21:57:35 +01:00
Witold Filipczyk
6afdbf608f Fix frame-related crash on www.sts.pl (bug 723)
Earlier doc_view was freed in src/document/renderer.c line 455
and used later by load_additional_file.
2005-11-24 16:42:03 +01:00
Jonas Fonseca
5dffe2e8ac Fix various sparse warnings
Mostly non-ANSI function declarations, using 0 as NULL and inline
function prototypes. Also removed unused S_HTTP_100 network state
enum type, which text message contained unknown escape sequence: '\?'.
2005-11-24 15:38:47 +01:00
Jonas Fonseca
2dd2e10a28 Remove unused ditrm declaration 2005-11-24 14:24:14 +01:00
Jonas Fonseca
7c0b6809b9 HTML_NODE_INFO -> HTML_, HTML_NODE_INF2 -> HTM2_ 2005-11-24 13:32:04 +01:00
Witold Filipczyk
583649e807 Try to fix HTTP gzip decoding
Sometimes gzip decoding causes garbage on screen. With this patch garbage
will go away. It inverts the logic. Now is simpler.
2005-11-15 22:23:27 +01:00
Jonas Fonseca
b42b098fd4 Remove unused root member of struct dom_renderer 2005-11-15 12:11:48 +01:00