Michael Drake
1fb697782a
Stop redrawing zero size images.
...
svn path=/trunk/netsurf/; revision=10614
2010-07-08 19:53:53 +00:00
Michael Drake
e08255f3ee
Remove dead code.
...
svn path=/trunk/netsurf/; revision=10602
2010-07-06 20:29:16 +00:00
Michael Drake
71644097be
Remove dead assignements and add assert to check table cells aren't set to span no columns at layout time (Note: colspan=0 is treated as colspan=1 by box normalisation. It should probably be handled in table_calculate_columns_types() properly. Either way, there shouldn't be colspans of 0 by the time we get to layout.)
...
svn path=/trunk/netsurf/; revision=10601
2010-07-06 20:23:07 +00:00
John Mark Bell
6867be128c
Pedantic whitespace change
...
svn path=/trunk/netsurf/; revision=10590
2010-06-30 20:08:59 +00:00
John Mark Bell
5e990dfb78
Fix assertion when table borders are specified in em/ex units.
...
svn path=/trunk/netsurf/; revision=10583
2010-06-27 13:11:31 +00:00
Michael Drake
0642cdafc2
Fix mouse.h file description. Add iframe comment.
...
svn path=/trunk/netsurf/; revision=10571
2010-06-09 09:53:07 +00:00
Michael Drake
6c59c80ed5
s/int/size_t/
...
svn path=/trunk/netsurf/; revision=10562
2010-06-04 09:39:30 +00:00
Michael Drake
b010a25771
+ Refactor input handling from browser window code into content
...
handlers.
+ Disentangle all box tree manipulation from browser window
code and put it where it belongs.
+ Move other content specific and other irrelevant code from
browser window handling to appropriate places.
+ Put mouse state enum in new mouse header, since it's not just
used by browser window code, and it is used by treeview
windows on the treeview branch.
svn path=/trunk/netsurf/; revision=10561
2010-06-04 09:35:08 +00:00
Michael Drake
bc9fef0a1a
Add iframe comment.
...
svn path=/trunk/netsurf/; revision=10559
2010-06-03 15:15:31 +00:00
Daniel Silverstone
5e887908b3
Consolidate several 'myrealloc' functions into ns_realloc, rename one which *is* different, thereby eliminating the word 'myrealloc' from the NS codebase
...
svn path=/trunk/netsurf/; revision=10530
2010-04-30 16:06:03 +00:00
John Mark Bell
000e6ad3de
It turns out that realloc(ptr, 0) --> free(ptr) is not actually required by the C standard (whereas realloc(NULL, size) --> malloc(size) is).
...
Therefore, explicitly model the behaviour expected by our libraries (that realloc of 0 size is equivalent to free).
svn path=/trunk/netsurf/; revision=10524
2010-04-30 07:00:58 +00:00
Daniel Silverstone
30e0cfe7a9
First step to fixing memory leaks -- Box model no longer leaks computed styles
...
svn path=/trunk/netsurf/; revision=10500
2010-04-27 21:38:41 +00:00
Michael Drake
485ac0dad7
Improve handling of percentage margins and paddings on floats. Fixes pond.org.uk. This is still not ideal and there are cases where we don't match other browsers.
...
svn path=/trunk/netsurf/; revision=10497
2010-04-27 17:45:07 +00:00
Michael Drake
4d67ca25a7
Fix vertical placement of absolute positioned inlines using staic position. Simplify placement of inlines on a line.
...
svn path=/trunk/netsurf/; revision=10495
2010-04-27 12:02:12 +00:00
Michael Drake
542610c779
Fix float wrap issue. (Amiga.org nav bar.)
...
svn path=/trunk/netsurf/; revision=10490
2010-04-26 22:13:22 +00:00
Michael Drake
15f1688f52
Update comment for new cache.
...
svn path=/trunk/netsurf/; revision=10481
2010-04-25 11:35:26 +00:00
Vincent Sanders
03bb3e8636
remove _GNU_SOURCE define from everywhere.
...
strndup is not standard so provide an implementation.
svn path=/trunk/netsurf/; revision=10474
2010-04-24 15:22:17 +00:00
John Mark Bell
250431772f
Use API to invalidate content freshness information
...
svn path=/trunk/netsurf/; revision=10387
2010-04-12 22:54:51 +00:00
Daniel Silverstone
8fd3bb959a
Make favourite icons part of the HTML content's active set so that we don't complete the fetch until the favicon is finished loading
...
svn path=/trunk/netsurf/; revision=10384
2010-04-12 10:40:55 +00:00
John Mark Bell
cca15e14c2
Remove need to constantly type c->data.html in html_destroy().
...
Fix destruction of linked and inline stylesheets to ensure that the pointer is non-NULL before trying to destroy it.
svn path=/trunk/netsurf/; revision=10364
2010-04-11 17:20:07 +00:00
John Mark Bell
737d6ad557
Merge jmb/kill-reentrancy. r=vince
...
svn path=/trunk/netsurf/; revision=10346
2010-04-11 10:52:18 +00:00
John Mark Bell
342fe780c6
Catch calls to html_clone, which is guaranteed to result in breakage, so it's safer to just die, rather than limp on.
...
svn path=/trunk/netsurf/; revision=10341
2010-04-10 12:36:21 +00:00
Michael Drake
9e52f10529
Add encoding source getter.
...
svn path=/trunk/netsurf/; revision=10269
2010-04-07 13:12:27 +00:00
John Mark Bell
ca7441ea54
Release favicon when HTML content is destroyed
...
svn path=/trunk/netsurf/; revision=10239
2010-04-04 17:19:10 +00:00
John Mark Bell
69f02e926f
Make the high-level cache drop contents of unacceptable type on the floor.
...
svn path=/trunk/netsurf/; revision=10238
2010-04-04 17:17:24 +00:00
John Mark Bell
487d4c3ae3
Suppress error page generation for favicon fetches.
...
Pass the correct referring URL.
svn path=/trunk/netsurf/; revision=10237
2010-04-04 12:45:47 +00:00
John Mark Bell
79ce683b4e
Most of a stop implementation.
...
Remaining work:
1) Clone content_html_data
2) Cloning content_css_data requires the charset of the old content
3) Calling hlcache_handle_abort() before a content has been created must clean up the retrieval context.
svn path=/trunk/netsurf/; revision=10236
2010-04-04 12:41:19 +00:00
John Mark Bell
43a99ab683
Constify data parameter to *_process_data
...
svn path=/trunk/netsurf/; revision=10234
2010-04-03 16:37:36 +00:00
John Mark Bell
d4524e7def
Remove pointless destruction of bitmap: HTML contents will never have one.
...
svn path=/trunk/netsurf/; revision=10232
2010-04-03 12:00:37 +00:00
John Mark Bell
49810d8191
Use mutator to modify content's title field.
...
svn path=/trunk/netsurf/; revision=10231
2010-04-03 11:55:28 +00:00
John Mark Bell
9aca901eb1
The convert stage of a content's state progression no longer reflows the content to the provided dimensions.
...
It is now defined as converting the content into a state in which it is ready for use.
The user of the content is now responsible for performing an initial reformat (sic) of the content before it can be redrawn.
Purge width/height parameters from hlcache_handle_retrieve/content_convert/*_convert APIs.
Fix up content handlers affected by the above change in semantics.
Ensure that browser_window_callback performs an initial reformat of its content.
svn path=/trunk/netsurf/; revision=10207
2010-03-29 22:33:21 +00:00
Daniel Silverstone
cb7412181f
Replace fetch_poll with llcache_poll throughout. Allow CONTENT_OTHER to complete properly.
...
svn path=/trunk/netsurf/; revision=10187
2010-03-28 16:00:54 +00:00
Daniel Silverstone
05a4eceae2
Remove fetchcache.[ch]
...
svn path=/trunk/netsurf/; revision=10183
2010-03-28 15:34:07 +00:00
Daniel Silverstone
8a49da03f0
Ensure we honour html_fetch_object's API properly regarding NOMEM behaviour
...
svn path=/trunk/netsurf/; revision=10181
2010-03-28 14:39:52 +00:00
Daniel Silverstone
270ef59a98
Merge jmb/new-cache; r=dsilvers,rs=vince
...
svn path=/trunk/netsurf/; revision=10180
2010-03-28 12:56:39 +00:00
John Mark Bell
fcf264d4cd
Remove apparently spurious status update.
...
svn path=/trunk/netsurf/; revision=9963
2010-02-10 00:57:23 +00:00
Vincent Sanders
8e1b4a0061
fix box_dump call
...
fix spurious newlines in log message
svn path=/trunk/netsurf/; revision=9919
2010-01-28 00:03:44 +00:00
John Mark Bell
aba82a97af
Yeah, so it helps if you get the conditional correct.
...
svn path=/trunk/netsurf/; revision=9859
2010-01-21 23:53:44 +00:00
John Mark Bell
5b0ad574b6
Fix compilation when BMP/PNG/GIF support is disabled.
...
svn path=/trunk/netsurf/; revision=9858
2010-01-21 23:48:34 +00:00
Michael Drake
b1e8c5fb09
Revert float ordering optimisation (r9846) due to effect on stacking order.
...
svn path=/trunk/netsurf/; revision=9853
2010-01-20 22:38:22 +00:00
Michael Drake
185465df3d
Order containing block's list of floats in descending order of the y-position of their base. Make find_sides() stop searching, after floats are above the range we're interested in. (351s --> 73s on ix for haveproblems/really-slow-float-table2.html)
...
svn path=/trunk/netsurf/; revision=9846
2010-01-17 09:57:25 +00:00
Michael Drake
ab74f4c990
When placing floats below, keep track of y-position, for future floats in current line.
...
svn path=/trunk/netsurf/; revision=9836
2010-01-16 17:41:50 +00:00
François Revel
18e27fb499
C89.
...
svn path=/trunk/netsurf/; revision=9779
2010-01-02 02:57:18 +00:00
John Mark Bell
9c160fe32d
Only attempt to fall back to /favicon.ico if the document's base URI points to
...
an http(s) location.
svn path=/trunk/netsurf/; revision=9760
2009-12-26 16:47:30 +00:00
John Mark Bell
b75b2ae8bb
Merge r9731:HEAD from branches/MarkieB/gtkmain to trunk.
...
svn path=/trunk/netsurf/; revision=9737
2009-12-18 20:15:50 +00:00
John Mark Bell
355799ce0b
Merge branches/MarkieB/gtkmain to trunk.
...
svn path=/trunk/netsurf/; revision=9729
2009-12-17 23:55:02 +00:00
John Mark Bell
fb0198094b
Squash memory leak
...
svn path=/trunk/netsurf/; revision=9691
2009-11-22 13:58:05 +00:00
John Mark Bell
0846b2ac95
Squash memory leak
...
svn path=/trunk/netsurf/; revision=9690
2009-11-22 13:55:32 +00:00
John Mark Bell
485e95c82e
Squash memory leak
...
svn path=/trunk/netsurf/; revision=9689
2009-11-22 13:53:44 +00:00
John Mark Bell
51d545772c
Squash warning
...
svn path=/trunk/netsurf/; revision=9686
2009-11-22 13:46:23 +00:00
John Mark Bell
d010712a9c
Avoid potential NULL pointer dereferences
...
svn path=/trunk/netsurf/; revision=9680
2009-11-22 13:28:30 +00:00
John Mark Bell
9e86512c4f
Fix quirks mode propagation for @style.
...
svn path=/trunk/netsurf/; revision=9675
2009-11-15 10:10:00 +00:00
Michael Drake
5a4897d722
Clearer wrapping.
...
svn path=/trunk/netsurf/; revision=9519
2009-08-31 10:44:40 +00:00
Michael Drake
31ccf7beed
Simplification of relative offset calculation. Thanks to Christopher Martin.
...
svn path=/trunk/netsurf/; revision=9518
2009-08-31 10:39:32 +00:00
John Mark Bell
5552f2b06c
Use new alignment scheme
...
svn path=/trunk/netsurf/; revision=9390
2009-08-22 09:56:41 +00:00
John Mark Bell
6836a74521
Ensure we've got a case for default html alignment.
...
svn path=/trunk/netsurf/; revision=9382
2009-08-21 17:17:47 +00:00
John Mark Bell
b0f127aa2c
Support HTML alignment hints.
...
svn path=/trunk/netsurf/; revision=9381
2009-08-21 17:05:22 +00:00
Michael Drake
c26611b32b
Merge from Paul Blokus' selectscroll branch. Fixes text input scrollbar behaviour.
...
svn path=/trunk/netsurf/; revision=9306
2009-08-14 23:10:53 +00:00
Michael Drake
13afa0ff4c
Merge Paul Blokus' selectscroll branch. Adds core select menu widget for forms and core scrollbar widget.
...
svn path=/trunk/netsurf/; revision=9289
2009-08-14 10:37:33 +00:00
Michael Drake
3cbbdeb91c
Ensure that inline end boxes get the correct height.
...
svn path=/trunk/netsurf/; revision=9104
2009-08-07 15:52:00 +00:00
Michael Drake
b0cc93800a
Slightly more useful vertical alignment.
...
svn path=/trunk/netsurf/; revision=9100
2009-08-07 13:00:28 +00:00
John Mark Bell
0665611cc2
Port to modified libcss API.
...
svn path=/trunk/netsurf/; revision=8997
2009-08-02 19:19:43 +00:00
John Mark Bell
ed16129b0c
Prevent negative calculated width of replaced inlines in layout_minmax_line().
...
svn path=/trunk/netsurf/; revision=8933
2009-08-01 00:26:02 +00:00
John Mark Bell
1b60cd63b7
Include size of lwc_context in content size.
...
svn path=/trunk/netsurf/; revision=8835
2009-07-28 00:21:36 +00:00
John Mark Bell
2c8a235a5d
Shrink allocated <style> source data block to minimum.
...
svn path=/trunk/netsurf/; revision=8828
2009-07-27 18:32:55 +00:00
John Mark Bell
b5d55eb295
Consider stylesheet media types
...
svn path=/trunk/netsurf/; revision=8820
2009-07-27 13:49:10 +00:00
John Mark Bell
e5f55a27ef
Fix potential crash when inline replaced elements have percentage width.
...
svn path=/trunk/netsurf/; revision=8814
2009-07-27 10:22:44 +00:00
John Mark Bell
4aaf13f9ed
Respect configured font size
...
svn path=/trunk/netsurf/; revision=8813
2009-07-27 10:00:31 +00:00
John Mark Bell
c51b14383c
Now that libwapcaplet guarantees NUL-termination of strings, stop copying them unnecessarily.
...
svn path=/trunk/netsurf/; revision=8785
2009-07-25 15:47:11 +00:00
John Mark Bell
2c00c55963
Simplify line-height calculation, deferring to nscss_len2px.
...
svn path=/trunk/netsurf/; revision=8783
2009-07-25 13:20:12 +00:00
John Mark Bell
12e49b11c2
Fix crash when a style element is not used because of mismatched media or type.
...
svn path=/trunk/netsurf/; revision=8768
2009-07-24 01:48:53 +00:00
John Mark Bell
cc662408b7
Fix text/plain lineheight calculation
...
svn path=/trunk/netsurf/; revision=8763
2009-07-24 00:17:43 +00:00
Michael Drake
48e3221458
Don't attempt to basline-align non text related inlines.
...
svn path=/trunk/netsurf/; revision=8762
2009-07-24 00:08:23 +00:00
James Bursa
b1c1d85f97
Better way of aligning text baselines. Move boxes down to align 0.75 point instead of changing height.
...
svn path=/trunk/netsurf/; revision=8758
2009-07-23 23:51:43 +00:00
John Mark Bell
ddeadd1c02
Merge LibCSS port to trunk.
...
svn path=/trunk/netsurf/; revision=8752
2009-07-23 23:05:34 +00:00
James Bursa
dffc8779ed
Set height of all text boxes in a line to the height of the highest one. This aligns the baseline of text which changes font size in a line. However, when the inline-block is reflowed, the heights do not shrink again where they could.
...
svn path=/trunk/netsurf/; revision=8716
2009-07-23 02:29:12 +00:00
John Mark Bell
6e13c2fb0a
Scale font sizes, for better accuracy.
...
svn path=/trunk/netsurf/; revision=8657
2009-07-21 16:55:35 +00:00
Michael Drake
4ff22c67df
Fix render colour of selected text.
...
svn path=/trunk/netsurf/; revision=8642
2009-07-21 11:33:55 +00:00
John Mark Bell
2565a37a52
Refactor text plotter and other font functions to remove dependency on CSS.
...
svn path=/trunk/netsurf/; revision=8641
2009-07-21 10:59:53 +00:00
Michael Drake
12cdd0f6dd
Fix comment.
...
svn path=/trunk/netsurf/; revision=8520
2009-07-14 13:13:47 +00:00
Michael Drake
2d95b8aa57
Rename debug outline plot styles and make them const.
...
svn path=/trunk/netsurf/; revision=8518
2009-07-14 12:42:02 +00:00
Michael Drake
336b21198d
Plot debug outlines after borders and backgrounds, so that they can be seen when things are coloured. Plot content edge before padding edge, so that the colour for the outermost edge is always shown when margin, border or padding are 0.
...
svn path=/trunk/netsurf/; revision=8515
2009-07-14 11:45:29 +00:00
Michael Drake
08fc83b189
Simplify debug outline calculations and avoid fp maths when scale is 1.0. Comment some border stuff.
...
svn path=/trunk/netsurf/; revision=8514
2009-07-14 11:26:44 +00:00
Michael Drake
8365d46eb7
Rename TRANSPARENT to NS_TRANSPARENT to avoid clash on Windows. By MarkieB.
...
svn path=/trunk/netsurf/; revision=8513
2009-07-14 10:57:07 +00:00
Vincent Sanders
86232d72a6
next round of plotter refactor
...
svn path=/trunk/netsurf/; revision=8512
2009-07-14 10:03:58 +00:00
Michael Drake
ed2206316c
Positioned elements are taken out of normal flow, so don't let them affect min/max width calculations.
...
svn path=/trunk/netsurf/; revision=8502
2009-07-13 15:37:54 +00:00
Michael Drake
ebe0db1864
Delete html_redraw lighter/darker and use the colour tweakers in plot_style.
...
svn path=/trunk/netsurf/; revision=8452
2009-07-10 20:38:57 +00:00
Michael Drake
e0a4b50e87
Move colour blend routine from html_redraw to plot_style and make it a define.
...
svn path=/trunk/netsurf/; revision=8451
2009-07-10 19:53:30 +00:00
Michael Drake
96d8e9335c
Remove html_redraw_aa because it is the same as html_redraw_blend. Fix html_redraw_blend to be 50/50 instead of 75/25.
...
svn path=/trunk/netsurf/; revision=8448
2009-07-10 19:09:33 +00:00
Vincent Sanders
680298e61c
plotters line refactor
...
svn path=/trunk/netsurf/; revision=8446
2009-07-10 18:36:49 +00:00
John Mark Bell
5feb7018c5
Replace parent_url with a pointer to the parent content.
...
svn path=/trunk/netsurf/; revision=8428
2009-07-10 00:26:37 +00:00
Vincent Sanders
f9ecd56f62
ploter refactor of rectangle handling
...
svn path=/trunk/netsurf/; revision=8399
2009-07-08 22:04:40 +00:00
Michael Drake
21a2bfc53c
Style guide indentation.
...
svn path=/trunk/netsurf/; revision=8345
2009-07-06 10:38:13 +00:00
Michael Drake
7372218033
Fix indentation to use tabs instead of spaces.
...
svn path=/trunk/netsurf/; revision=8344
2009-07-06 10:33:19 +00:00
Vincent Sanders
0ade453958
Refactor fill plotter to take a style
...
svn path=/trunk/netsurf/; revision=8332
2009-07-05 20:10:17 +00:00
John Mark Bell
2dbf92761f
Fix stupid
...
svn path=/trunk/netsurf/; revision=8275
2009-07-02 23:05:10 +00:00
John Mark Bell
e6f70d9760
Make this more legible and squash leaks.
...
svn path=/trunk/netsurf/; revision=8273
2009-07-02 22:35:15 +00:00
Vincent Sanders
1165edf662
remove redundant clg call
...
svn path=/trunk/netsurf/; revision=8240
2009-07-01 13:53:06 +00:00
Michael Drake
f9b905be95
Fix assert when replaced element has display:table;.
...
svn path=/trunk/netsurf/; revision=7950
2009-06-24 15:43:24 +00:00
John Mark Bell
90c0fb6f3e
Fix frame targets.
...
svn path=/trunk/netsurf/; revision=7729
2009-06-08 09:34:58 +00:00
Michael Drake
1a0f62f529
Don't need height of css positioned boxes when laying out boxes in normal flow.
...
svn path=/trunk/netsurf/; revision=7656
2009-05-30 12:22:22 +00:00
Michael Drake
798f421a88
When computing relative offset values for floats, use block formatting context for containing block, rather than parent.
...
svn path=/trunk/netsurf/; revision=7614
2009-05-28 18:06:49 +00:00
Michael Drake
8f9b03578f
Remove redundant increment.
...
svn path=/trunk/netsurf/; revision=7596
2009-05-28 11:48:32 +00:00
Michael Drake
a7c3c7bf15
Remove redundant calculation.
...
svn path=/trunk/netsurf/; revision=7595
2009-05-28 11:46:14 +00:00
Michael Drake
b595970d82
Reorganise some conditions and only try to deal with min-height and max-height where it should be done.
...
svn path=/trunk/netsurf/; revision=7594
2009-05-28 11:14:32 +00:00
John Mark Bell
243c1ba03f
Limit scope of manually-defined NDEBUG. Purge a bunch of redundant #undef NDEBUG.
...
svn path=/trunk/netsurf/; revision=7593
2009-05-28 10:39:53 +00:00
Michael Drake
ee4beae9e2
Remove unused code.
...
svn path=/trunk/netsurf/; revision=7591
2009-05-27 20:14:36 +00:00
Michael Drake
223818b84c
Make layout_apply_minmax_height assert if it's called with a box that shouldn't exist.
...
svn path=/trunk/netsurf/; revision=7590
2009-05-27 19:43:03 +00:00
Michael Drake
50219b81e6
Pedantic wrap.
...
svn path=/trunk/netsurf/; revision=7589
2009-05-27 19:17:16 +00:00
Michael Drake
7bb2aa7cbb
Remove a couple of superfluous conditions.
...
svn path=/trunk/netsurf/; revision=7588
2009-05-27 19:11:07 +00:00
Michael Drake
5b33c1e723
Remove dead assignment
...
svn path=/trunk/netsurf/; revision=7587
2009-05-27 18:43:14 +00:00
Michael Drake
65a888dd87
Handle percentage table heights. Spare height is still not distributed over cells.
...
svn path=/trunk/netsurf/; revision=7439
2009-05-08 11:43:38 +00:00
Michael Drake
c2ecbebd3d
Fix viewport height handling not to obliterate calculation
...
of root element height from children's dimensions.
Improve handling of percentage heights on HTML and BODY.
svn path=/trunk/netsurf/; revision=7429
2009-05-07 16:22:38 +00:00
Michael Drake
129fb84ed5
Make layout_block_context() private.
...
svn path=/trunk/netsurf/; revision=7406
2009-05-06 14:20:46 +00:00
Michael Drake
a008d3486e
Move special casing of form element dimensions out into separate helper function.
...
svn path=/trunk/netsurf/; revision=7403
2009-05-06 11:16:06 +00:00
Michael Drake
5a35e5cd97
Make form elements with specified sizes include paddings and borders in their sizes in some cases.
...
svn path=/trunk/netsurf/; revision=7386
2009-05-01 18:00:01 +00:00
John Mark Bell
c18945f771
Fix numbering of floated list items
...
svn path=/trunk/netsurf/; revision=7361
2009-04-29 10:44:20 +00:00
Michael Drake
68a72d17ab
Allow box at point to search descendant space of boxes with no style.
...
svn path=/trunk/netsurf/; revision=7359
2009-04-28 21:24:11 +00:00
Michael Drake
a99a5bdd70
Move handling of TR height attribute from box construction to layout and add support for height property on TR.
...
svn path=/trunk/netsurf/; revision=7358
2009-04-28 20:13:10 +00:00
Michael Drake
044a953400
Make box_at_point() only return boxes if the point is physically contained within them, and not if the point is mearly in the descendant area. (Fixes sites like BBC F1 page where whole page became an iPlayer link.)
...
svn path=/trunk/netsurf/; revision=7335
2009-04-27 10:20:44 +00:00
John Mark Bell
f4afb83815
I deleted this, honest.
...
svn path=/trunk/netsurf/; revision=7144
2009-04-21 01:32:48 +00:00
John Mark Bell
56000c4736
If we calculate the height of the root box to be AUTO, set it to the viewport height before laying out the document (makes html, body { height: 100%; } behave correctly)
...
svn path=/trunk/netsurf/; revision=7127
2009-04-17 17:28:38 +00:00
John Mark Bell
daf7a52dd6
Hubbub is no longer optional.
...
Remove libxml2 parser binding.
svn path=/trunk/netsurf/; revision=7115
2009-04-17 00:54:27 +00:00
John Mark Bell
6a7b1a73a7
Fix compilation with GCC 2.95.
...
It astounds me how some of this lot compiled at all.
svn path=/trunk/netsurf/; revision=7104
2009-04-16 12:49:49 +00:00
Michael Drake
3a12ed0fac
Update some comments.
...
svn path=/trunk/netsurf/; revision=7092
2009-04-15 13:22:28 +00:00
John Mark Bell
23cb08ad01
It probably helps to reflect API changes
...
svn path=/trunk/netsurf/; revision=7090
2009-04-15 12:26:25 +00:00
John Mark Bell
33619d7003
Handle hubbub errors.
...
Handle parser binding errors.
svn path=/trunk/netsurf/; revision=7087
2009-04-15 11:28:07 +00:00
Michael Drake
dbeeea572c
Draw CSS overflow scrollbars differently. Front ends can override the colours used.
...
svn path=/trunk/netsurf/; revision=6943
2009-03-27 16:45:56 +00:00
John Mark Bell
b9e22451c2
Sync hubbub binding with spec.
...
svn path=/trunk/netsurf/; revision=6769
2009-03-10 23:13:08 +00:00
John Mark Bell
7840542e65
Squash warnings
...
svn path=/trunk/netsurf/; revision=6674
2009-03-02 19:47:27 +00:00
John Mark Bell
b98f105b24
Purge WITH_AUTH
...
svn path=/trunk/netsurf/; revision=6600
2009-02-22 15:13:10 +00:00
John Mark Bell
847b776285
Purge NETSURF_USE_SSL and WITH_SSL
...
svn path=/trunk/netsurf/; revision=6599
2009-02-22 15:07:50 +00:00
John Mark Bell
1ccc3182e3
Fix handling of buttons in successful control search
...
svn path=/trunk/netsurf/; revision=6576
2009-02-20 12:55:50 +00:00
John Mark Bell
1f859400d9
If we have no document charset on completion of parse, retrieve it from the binding.
...
Make the binding return Windows-1252 if it has no idea (as this is what the parser will have defaulted to).
Fix form_new to not require a document charset to be present -- it may not be known at this point.
Fixup form document charsets post-parse, so that form submission works correctly.
svn path=/trunk/netsurf/; revision=6575
2009-02-20 12:50:34 +00:00
John Mark Bell
cc1094f0ac
Utilise hubbub's form association callback.
...
Please can we dispense with the libxml binding? It's causing much #ifdef mess.
Fix encoding of <input type=image> names -- previously were output as raw utf-8, rather than in the submission charset.
Actually bother to destroy forms in a document, and the controls associated with them. We still leak non form-associated controls, but that's too much effort to fix right now.
svn path=/trunk/netsurf/; revision=6573
2009-02-20 11:39:25 +00:00
John Mark Bell
ee986e1d0a
Divorce PDF export and printing.
...
At some point, the RISC OS printing code should be ported to the core page-based output engine.
svn path=/trunk/netsurf/; revision=6544
2009-02-17 16:37:51 +00:00
John Mark Bell
72b8a67660
Ensure URLs are normalized prior to fetching.
...
Squash memory leaks.
svn path=/trunk/netsurf/; revision=6411
2009-02-10 18:35:56 +00:00
Michael Drake
f1c7c7f072
Remove unused line_height stuff for now.
...
svn path=/trunk/netsurf/; revision=6354
2009-02-02 13:54:48 +00:00
Michael Drake
b2182b8c50
Fix clear:both; when there's nothing to clear.
...
svn path=/trunk/netsurf/; revision=6352
2009-02-02 12:56:15 +00:00
Michael Drake
400ed91129
Hubbub allows FONT tags to span blocks and the way that
...
the box tree is generated, this makes the BOX_INLINE's
BOX_INLINE_END appears in a different BOX_BLOCK. That
seems wrong, but fix layout not to crash for now.
svn path=/trunk/netsurf/; revision=6325
2009-01-31 22:49:41 +00:00
Michael Drake
414f42faac
Make inline boxes store the height of their line box and include in box tree dump.
...
svn path=/trunk/netsurf/; revision=6319
2009-01-31 13:26:28 +00:00
Michael Drake
887d7984cb
Fix scale of inline borders.
...
svn path=/trunk/netsurf/; revision=6309
2009-01-31 00:41:03 +00:00
Adrian Lees
03a1aac36a
Selection- and link-related functions now on menu; other menu changes as per t's plan
...
svn path=/trunk/netsurf/; revision=6296
2009-01-30 05:06:30 +00:00
Michael Drake
daf8c22d1b
Only get top margin if box has style.
...
svn path=/trunk/netsurf/; revision=6295
2009-01-29 22:57:32 +00:00
Michael Drake
56b48410be
Include top margin when finding sides for block formatting contexts.
...
svn path=/trunk/netsurf/; revision=6293
2009-01-29 21:23:48 +00:00
Michael Drake
619e5b9631
Once a float has been placed below current line,
...
ensure that subsequent floats are also placed below.
Make place_float_below() consider float height when
searching for available space.
svn path=/trunk/netsurf/; revision=6287
2009-01-27 13:21:50 +00:00
Michael Drake
aa787e9730
Fix specified table widths to include border. Tidy block formatting context and table position setup.
...
svn path=/trunk/netsurf/; revision=6281
2009-01-26 16:32:19 +00:00
Michael Drake
0a175d4020
Fix -ve margins.
...
svn path=/trunk/netsurf/; revision=6277
2009-01-26 09:11:54 +00:00
Michael Drake
0fefb7a605
More robust float avoidance for blocks set as block formatting contexts.
...
svn path=/trunk/netsurf/; revision=6275
2009-01-26 00:15:25 +00:00
Michael Drake
beff85fa73
Ignore clear:left; when the only floats are on the right and vice versa.
...
svn path=/trunk/netsurf/; revision=6176
2009-01-22 17:52:22 +00:00
Michael Drake
3594651a6b
Handle clear before working out available width for tables and blocks that cause a new block formatting context.
...
svn path=/trunk/netsurf/; revision=6174
2009-01-22 15:39:06 +00:00
Michael Drake
4c40bbc096
Fix placement of tables in normal flow next to floats. This stops big blank gaps appearing e.g. at the top of wikipedia articles, on some google search results and on amazon product pages.
...
svn path=/trunk/netsurf/; revision=6162
2009-01-21 23:01:59 +00:00
Michael Drake
9134956efe
Fix positioning of floats that come after floats with negative margins.
...
svn path=/trunk/netsurf/; revision=6156
2009-01-20 21:36:54 +00:00
Michael Drake
c5f72605b4
Block formatting context width is only reduced due to floats if width is auto.
...
svn path=/trunk/netsurf/; revision=6145
2009-01-19 10:17:44 +00:00
Michael Drake
20120a8acf
Make blocks which establish a new block formatting context use have the correct width and position to avoid overlapping floats. Fixes the main problem on the amazon.co.uk front page.
...
svn path=/trunk/netsurf/; revision=6142
2009-01-18 23:41:48 +00:00
Michael Drake
e5a5bbec3f
Move handling of background related print options to background specific functions.
...
svn path=/trunk/netsurf/; revision=6119
2009-01-17 19:39:38 +00:00
John Mark Bell
2d3b9e435b
Charset fallbacks. If we don't support the charset declared in the HTTP header, fall back to autodetect. If we don't support the charset declared in a meta charset, fall back to Windows-1252.
...
svn path=/trunk/netsurf/; revision=5974
2009-01-06 22:06:14 +00:00
John Mark Bell
ec868fdcdc
It's probably a good idea if we're consistent in which allocation routines we're using.
...
svn path=/trunk/netsurf/; revision=5972
2009-01-06 17:52:47 +00:00
John Mark Bell
7f099d6675
More lenient refresh delay parsing
...
svn path=/trunk/netsurf/; revision=5948
2008-12-30 15:46:06 +00:00
Michael Drake
d27a1c625f
Only increase the root element's redraw box to cover margin, if the redraw box isn't already bigger due to protruding descendants.
...
svn path=/trunk/netsurf/; revision=5934
2008-12-27 17:29:17 +00:00
Michael Drake
5a3b076869
Fix crash bug.
...
svn path=/trunk/netsurf/; revision=5932
2008-12-27 17:09:35 +00:00
Michael Drake
e5e68a3feb
Handle replaced inline borders and backgrounds like blocks.
...
svn path=/trunk/netsurf/; revision=5930
2008-12-27 15:03:54 +00:00
Michael Drake
8ecaccd8a4
Plot backgrounds on the root element over margin box, as per CSS 2.1 spec.
...
svn path=/trunk/netsurf/; revision=5927
2008-12-27 00:08:25 +00:00
Michael Drake
f26342940b
Fix display of inline borders when inline has no background.
...
svn path=/trunk/netsurf/; revision=5924
2008-12-26 15:10:28 +00:00
Michael Drake
0ba4a444cc
Fix some wrap to 80 chars and tabs for indentation.
...
svn path=/trunk/netsurf/; revision=5923
2008-12-26 11:34:23 +00:00
Michael Drake
a673ad21ee
Don't apply text decoration if the box isn't text.
...
svn path=/trunk/netsurf/; revision=5921
2008-12-22 21:57:56 +00:00
François Revel
fe355fc087
C89
...
svn path=/trunk/netsurf/; revision=5919
2008-12-21 21:28:12 +00:00
Michael Drake
6a4d4489f5
Rewrite inline rendering. Fixes issues with borders,
...
background colour and background image display when
inlines have margins and paddings. Support for
background position on inlines. Fix BOX_INLINE
descendant calculation to include BOX_INLINE_END.
svn path=/trunk/netsurf/; revision=5916
2008-12-21 15:51:23 +00:00
François Revel
53fe38504f
C89
...
svn path=/trunk/netsurf/; revision=5837
2008-11-29 22:53:58 +00:00
John Mark Bell
3a5d7d6b64
Process error page correctly.
...
TODO: Why don't *_process_data take a const pointer to the data?
svn path=/trunk/netsurf/; revision=5757
2008-11-20 14:47:36 +00:00
John Mark Bell
37278a0fa5
Don't care about chunk sizes.
...
svn path=/trunk/netsurf/; revision=5671
2008-11-09 19:18:18 +00:00
John Mark Bell
ee675539e0
Don't introduce an unnecessary error message
...
svn path=/trunk/netsurf/; revision=5670
2008-11-09 19:17:36 +00:00
John Mark Bell
8a16d5942b
Port to new hubbub parser API
...
svn path=/trunk/netsurf/; revision=5669
2008-11-09 19:04:30 +00:00
Michael Drake
f33fd2c604
Take into account variations in text line height due to styled inlines when laying out inline containers.
...
svn path=/trunk/netsurf/; revision=5587
2008-10-16 20:50:48 +00:00
John Mark Bell
a55c1f6e41
Fixup hubbub binding
...
svn path=/trunk/netsurf/; revision=5576
2008-10-14 15:48:14 +00:00
John Mark Bell
76976d7db6
Fix warnings on OS X
...
svn path=/trunk/netsurf/; revision=5573
2008-10-14 14:54:49 +00:00
Rob Kendrick
34a1b46411
add bitmap.h include to silence some warnings on Fedora.
...
svn path=/trunk/netsurf/; revision=5571
2008-10-14 00:12:31 +00:00
Michael Drake
b3f32dece4
Implement percentage min/max-height.
...
svn path=/trunk/netsurf/; revision=5566
2008-10-13 19:22:16 +00:00
Michael Drake
38619e2d29
Finish 80 char widthing.
...
svn path=/trunk/netsurf/; revision=5560
2008-10-13 15:06:19 +00:00
Michael Drake
7293b6f4bb
Tidy up where spaces were used for indentation.
...
svn path=/trunk/netsurf/; revision=5555
2008-10-13 12:30:23 +00:00
Michael Drake
a5ac56655c
Fix float percentage heights to match other browsers: for floated elements the containing block is the nearest ancestor box at block level, rather than the block formatting context block that the float is in.
...
svn path=/trunk/netsurf/; revision=5553
2008-10-13 10:50:46 +00:00
Michael Drake
79978eafcd
Set float_container before float layout. Fixes percentage height on floated elements.
...
svn path=/trunk/netsurf/; revision=5552
2008-10-12 21:45:38 +00:00
Michael Drake
1a237535f7
Better commenting of percentage height stuff.
...
svn path=/trunk/netsurf/; revision=5551
2008-10-12 21:35:04 +00:00
Michael Drake
b7a1b3999e
Implement percentage heights for block level elements in normal flow, floats and positioned boxes. Percentage min/max-height not yet handled.
...
svn path=/trunk/netsurf/; revision=5550
2008-10-12 21:22:28 +00:00
Michael Drake
c1db0e90cc
Use style guide switch formatting all over.
...
svn path=/trunk/netsurf/; revision=5549
2008-10-12 15:34:43 +00:00
Daniel Silverstone
c4cf8b14cd
Add #if support for controlling debug dumps of box tree and framesets
...
svn path=/trunk/netsurf/; revision=5530
2008-10-10 10:56:34 +00:00
Rob Kendrick
9343a94193
Warning squashes
...
svn path=/trunk/netsurf/; revision=5527
2008-10-10 09:47:52 +00:00
Michael Drake
8a6e803029
Load SVGs in IMG elements.
...
svn path=/trunk/netsurf/; revision=5463
2008-09-30 12:17:16 +00:00
John Tytgat
2d1481fafc
'unsigned long' -> 'colour' where it made sense.
...
svn path=/trunk/netsurf/; revision=5459
2008-09-28 22:37:13 +00:00
Michael Drake
b2486edc5a
Fix block level replaced element height regression.
...
svn path=/trunk/netsurf/; revision=5450
2008-09-28 10:00:32 +00:00
Michael Drake
324cc53e87
Also remember to apply min/max-width on floats without auto width.
...
svn path=/trunk/netsurf/; revision=5446
2008-09-27 20:43:45 +00:00
Michael Drake
1a00aa03a5
Implement min-width and max-width properties for non-replaced elements. Partially implemented for replaced elements.
...
svn path=/trunk/netsurf/; revision=5445
2008-09-27 20:19:46 +00:00
François Revel
bee268fac3
C89
...
svn path=/trunk/netsurf/; revision=5440
2008-09-25 23:33:13 +00:00
Michael Drake
804a11af5b
Fix for children of a containing block not being placed with respect to the containing block's top padding, if the containing block's first child is absolute positioned.
...
svn path=/trunk/netsurf/; revision=5424
2008-09-23 19:38:16 +00:00
Daniel Silverstone
3f5d902edd
Merged revisions 5309-5406,5409-5422 via svnmerge from
...
svn://svn.netsurf-browser.org/branches/vince/netsurf-fb
........
r5309 | vince | 2008-09-13 10:59:10 +0100 (Sat, 13 Sep 2008) | 2 lines
first stab at framebuffer frontend
........
r5313 | vince | 2008-09-14 15:08:52 +0100 (Sun, 14 Sep 2008) | 2 lines
add line plotters
........
r5314 | vince | 2008-09-14 15:28:12 +0100 (Sun, 14 Sep 2008) | 2 lines
add rectangle plot to 16bpp plotters
........
r5315 | vince | 2008-09-14 19:58:57 +0100 (Sun, 14 Sep 2008) | 2 lines
improve 16bpp image plot
........
r5316 | vince | 2008-09-15 00:35:32 +0100 (Mon, 15 Sep 2008) | 2 lines
abstract the os specific framebuffer init
........
r5317 | vince | 2008-09-15 11:18:51 +0100 (Mon, 15 Sep 2008) | 2 lines
first cut of linux frontend
........
r5318 | vince | 2008-09-15 12:01:00 +0100 (Mon, 15 Sep 2008) | 2 lines
remove junk includes
........
r5319 | vince | 2008-09-15 12:09:02 +0100 (Mon, 15 Sep 2008) | 2 lines
make plotters OS agnostic again
........
r5322 | vince | 2008-09-15 15:55:01 +0100 (Mon, 15 Sep 2008) | 2 lines
Linux frontend operates
........
r5323 | vince | 2008-09-15 16:32:47 +0100 (Mon, 15 Sep 2008) | 2 lines
abstract out OS specific input
........
r5326 | vince | 2008-09-15 19:21:01 +0100 (Mon, 15 Sep 2008) | 2 lines
Improve linux mode setting
........
r5329 | vince | 2008-09-15 21:13:33 +0100 (Mon, 15 Sep 2008) | 2 lines
improve text clipping
........
r5339 | vince | 2008-09-16 00:07:57 +0100 (Tue, 16 Sep 2008) | 2 lines
possibly fix text clipping issue
........
r5342 | vince | 2008-09-16 00:39:36 +0100 (Tue, 16 Sep 2008) | 2 lines
consolidate polygon plotters
........
r5344 | dsilvers | 2008-09-16 10:21:06 +0100 (Tue, 16 Sep 2008) | 1 line
Fix up the framebuffer target makefile a bit more, add some config options for it
........
r5345 | dsilvers | 2008-09-16 10:22:19 +0100 (Tue, 16 Sep 2008) | 1 line
Ensure the appropriate frontend is selected when building framebuffer
........
r5346 | dsilvers | 2008-09-16 10:27:16 +0100 (Tue, 16 Sep 2008) | 1 line
Update build system to support targetting separate framebuffer frontends in different build trees, update executable to be nsfb-blah
........
r5350 | vince | 2008-09-16 17:15:04 +0100 (Tue, 16 Sep 2008) | 1 line
Add -g to provide symbols for framebuffer link
........
r5351 | vince | 2008-09-16 17:17:09 +0100 (Tue, 16 Sep 2008) | 1 line
framebuffer scheduler now works, plotters tweaked, gui tracks window redraw requirements better, keypresses not duplicated under linux fb
........
r5352 | dsilvers | 2008-09-16 17:38:53 +0100 (Tue, 16 Sep 2008) | 1 line
Ensure we only allow one fetcher at a time
........
r5361 | vince | 2008-09-17 11:48:44 +0100 (Wed, 17 Sep 2008) | 2 lines
initial cursor support
........
r5362 | vince | 2008-09-17 13:56:47 +0100 (Wed, 17 Sep 2008) | 2 lines
add mouse handling
........
r5363 | vince | 2008-09-17 14:14:44 +0100 (Wed, 17 Sep 2008) | 2 lines
add framebuffer resources
........
r5364 | vince | 2008-09-17 17:12:21 +0100 (Wed, 17 Sep 2008) | 2 lines
add reasonable pointer
........
r5366 | vince | 2008-09-17 17:17:25 +0100 (Wed, 17 Sep 2008) | 2 lines
fix pointer alpha
........
r5370 | vince | 2008-09-18 13:43:53 +0100 (Thu, 18 Sep 2008) | 2 lines
warning squash and cleanup ready for trunk merge
........
r5375 | vince | 2008-09-19 14:58:43 +0100 (Fri, 19 Sep 2008) | 2 lines
Working mouse navigation
........
r5377 | vince | 2008-09-20 14:06:22 +0100 (Sat, 20 Sep 2008) | 2 lines
Improve scrolling
........
r5378 | vince | 2008-09-20 14:46:46 +0100 (Sat, 20 Sep 2008) | 2 lines
fix redraw issues with scrolling
........
r5380 | vince | 2008-09-20 17:08:43 +0100 (Sat, 20 Sep 2008) | 3 lines
Alter panning to use its own flag so it doesnt cause invalid redraw
operations
........
r5381 | vince | 2008-09-20 21:52:45 +0100 (Sat, 20 Sep 2008) | 2 lines
add dummy framebuffer
........
r5383 | vince | 2008-09-21 00:00:15 +0100 (Sun, 21 Sep 2008) | 2 lines
fix segfault when cursor is off teh bottom of teh screen
........
r5384 | vince | 2008-09-21 00:06:08 +0100 (Sun, 21 Sep 2008) | 2 lines
fix off by one in pointer fix
........
r5385 | vince | 2008-09-21 00:25:09 +0100 (Sun, 21 Sep 2008) | 2 lines
when fixing bloody silly off by one errors remember to fix *both* references
........
r5387 | vince | 2008-09-21 00:38:13 +0100 (Sun, 21 Sep 2008) | 2 lines
last try at stopping the pointer segfault
........
r5388 | vince | 2008-09-21 16:24:18 +0100 (Sun, 21 Sep 2008) | 2 lines
improve vertical text clipping
........
r5392 | vince | 2008-09-21 23:11:51 +0100 (Sun, 21 Sep 2008) | 2 lines
Improve text plotters
........
r5393 | vince | 2008-09-21 23:34:38 +0100 (Sun, 21 Sep 2008) | 2 lines
fix 32bpp line plotting
........
r5394 | vince | 2008-09-22 00:00:03 +0100 (Mon, 22 Sep 2008) | 2 lines
Fix off by one error in line plotting clipping
........
r5397 | vince | 2008-09-22 13:46:22 +0100 (Mon, 22 Sep 2008) | 2 lines
Fix bitmap tileing
........
r5398 | vince | 2008-09-22 17:46:02 +0100 (Mon, 22 Sep 2008) | 2 lines
enable knockout renderer
........
r5399 | vince | 2008-09-22 18:43:48 +0100 (Mon, 22 Sep 2008) | 2 lines
ensure clipping region lies within window, caused by knockout renderer
........
r5400 | vince | 2008-09-22 19:20:25 +0100 (Mon, 22 Sep 2008) | 2 lines
update cursor to one swiped from X windows
........
r5405 | vince | 2008-09-23 09:09:05 +0100 (Tue, 23 Sep 2008) | 2 lines
fix vertical scroll limit
........
r5412 | dsilvers | 2008-09-23 10:53:14 +0100 (Tue, 23 Sep 2008) | 1 line
Revert noisy fetcher patch
........
r5413 | dsilvers | 2008-09-23 10:58:00 +0100 (Tue, 23 Sep 2008) | 1 line
Add header guards
........
r5414 | dsilvers | 2008-09-23 11:31:31 +0100 (Tue, 23 Sep 2008) | 1 line
Tidy the region clipping slightly
........
r5416 | dsilvers | 2008-09-23 12:05:00 +0100 (Tue, 23 Sep 2008) | 1 line
Rationalise how the framebuffer frontend finds resources and options
........
r5418 | dsilvers | 2008-09-23 13:59:00 +0100 (Tue, 23 Sep 2008) | 1 line
Ensure options are overridden after load, and squash an fb_gui.c warning
........
r5419 | dsilvers | 2008-09-23 14:20:07 +0100 (Tue, 23 Sep 2008) | 1 line
Support fb_mode and fb_device options
........
r5420 | dsilvers | 2008-09-23 14:21:48 +0100 (Tue, 23 Sep 2008) | 1 line
Support option_fb_device in the able frontend
........
r5421 | dsilvers | 2008-09-23 14:25:17 +0100 (Tue, 23 Sep 2008) | 1 line
Ensure target_blank is disabled
........
r5422 | dsilvers | 2008-09-23 14:39:00 +0100 (Tue, 23 Sep 2008) | 1 line
Rework linux fb frontend to support scanning and opening all event devices for input
........
svn path=/trunk/netsurf/; revision=5423
2008-09-23 14:00:40 +00:00
Michael Drake
9de2adbdf1
Use stylesheets from LINK elements outside HEAD. (We already supported STYLE elements outside HEAD.) Fixes amazon.co.uk problem.
...
svn path=/trunk/netsurf/; revision=5415
2008-09-23 10:44:10 +00:00
John Mark Bell
163ad56fce
Rework html parser bindings to have a common API and reside in separate files for ease of reading.
...
Add error handling to hubbub binding.
svn path=/trunk/netsurf/; revision=5404
2008-09-23 02:19:50 +00:00
Michael Drake
4fad8726a4
Ignore clear property on floats when there are no floats to clear.
...
svn path=/trunk/netsurf/; revision=5402
2008-09-22 23:45:51 +00:00
Michael Drake
4c058dd92c
Fix for positioning of inlines when a float is forced below them.
...
svn path=/trunk/netsurf/; revision=5395
2008-09-22 11:29:39 +00:00
Michael Drake
1850a494e7
Fix relative positioning to affect position of descendant floats which are in a block formatting context which is an ancestor of the relatively positioned box.
...
svn path=/trunk/netsurf/; revision=5390
2008-09-21 19:18:27 +00:00