Commit Graph

960 Commits

Author SHA1 Message Date
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