Commit Graph

1126 Commits

Author SHA1 Message Date
Chris Young 835d033e7b Amiga icon loader. Treeviews will now use the user's icons for content types.
svn path=/trunk/netsurf/; revision=10925
2010-10-30 14:23:38 +00:00
John Mark Bell b734c12fd6 Slightly less braindead textplain handling
svn path=/trunk/netsurf/; revision=10900
2010-10-23 18:43:48 +00:00
Chris Young c052d534e7 Add some missing CONTENT_WEBPs. WebP images in HTML docs now display correctly.
svn path=/trunk/netsurf/; revision=10890
2010-10-16 15:26:28 +00:00
John Mark Bell d4d866c43f Fix crash when top-level content is not HTML and there is a fragment identifier in the URL.
Constify.

svn path=/trunk/netsurf/; revision=10881
2010-10-11 06:54:37 +00:00
John Mark Bell 6e161d822c Restrict permissible content types for list marker images
svn path=/trunk/netsurf/; revision=10798
2010-09-19 11:27:43 +00:00
John Mark Bell 9ad74ad786 Remove bogus assertion
svn path=/trunk/netsurf/; revision=10793
2010-09-17 19:11:53 +00:00
James Bursa b6418a9048 Change back to using tree directly because element navigation functions require libxml2 2.7.3 which is not available everywhere.
svn path=/trunk/netsurf/; revision=10790
2010-09-16 21:03:16 +00:00
James Bursa bce1f4c231 Use libxml functions to loop through elements in html_head() instead of checking all nodes. Remove logging.
svn path=/trunk/netsurf/; revision=10788
2010-09-16 20:46:29 +00:00
John Mark Bell 805d6586d6 Replace all instances of NUL with U+FFFD
svn path=/trunk/netsurf/; revision=10771
2010-09-13 22:32:52 +00:00
John Mark Bell 73f4399418 Replace use of iconv with a parserutils inputstream
svn path=/trunk/netsurf/; revision=10770
2010-09-13 22:18:51 +00:00
John Mark Bell 2077918805 Merge branches/vince/netsurf-file-fetcher to trunk
r=jmb

svn path=/trunk/netsurf/; revision=10750
2010-09-09 21:45:59 +00:00
Michael Drake b9773d34bb Root element can't be absolute positioned. Fixes #3062055.
svn path=/trunk/netsurf/; revision=10743
2010-09-08 17:22:35 +00:00
Michael Drake e0477fa668 Redraw object scrollbars if required.
svn path=/trunk/netsurf/; revision=10731
2010-08-30 22:43:01 +00:00
Michael Drake 0de9f41db7 Fix object descendants and make space for scrollbars if required.
svn path=/trunk/netsurf/; revision=10730
2010-08-30 22:30:43 +00:00
Michael Drake ece31d1358 Don't special case height to content height when object's content is HTML.
svn path=/trunk/netsurf/; revision=10729
2010-08-30 22:09:49 +00:00
Michael Drake 93873344dd Fix clipping to exclude border for objects.
svn path=/trunk/netsurf/; revision=10728
2010-08-30 21:47:54 +00:00
Michael Drake 175bb0344c Move directory listing HTML generation functions into separate module.
svn path=/trunk/netsurf/; revision=10715
2010-08-26 17:29:02 +00:00
Michael Drake bbbbdd4d80 + Don't even consider top and bottom borders when they
fall outside the clip rect.  Should make scrolling up
  and down slightly faster.
+ Clip borders plotted as rectangles to the current clip
  rectangle.  Fixes redraw issue with very tall borders.

svn path=/trunk/netsurf/; revision=10713
2010-08-26 12:30:22 +00:00
Michael Drake 8c767656e2 + Pass clip rectangle around html_redraw_* as a struct rect.
+ Reduce fp maths at 1:1 scale for boxes with overflow:visisble.
+ Simplfy border plots.

svn path=/trunk/netsurf/; revision=10712
2010-08-26 10:01:26 +00:00
Michael Drake 607dca3e63 Simplication due to known border geometry characteristics. Fix double border style.
svn path=/trunk/netsurf/; revision=10709
2010-08-14 21:35:16 +00:00
Michael Drake 561cb543ca Fix colour comparison to compare the right things. Plot left and right borders before top and bottom.
svn path=/trunk/netsurf/; revision=10703
2010-08-14 15:27:45 +00:00
Michael Drake db0640e32c Slightly quicker border part length finding.
svn path=/trunk/netsurf/; revision=10702
2010-08-14 13:38:53 +00:00
Michael Drake dbe7069171 Render 1px wide border parts with rectangle plotter, rather than polygon.
svn path=/trunk/netsurf/; revision=10701
2010-08-14 13:03:57 +00:00
Michael Drake b65fa05375 + Optimise border handling at 1:1 scale.
+ Reduce computation for elements with no borders.
+ Simplfy border vertex calculation.
+ Add comments.

svn path=/trunk/netsurf/; revision=10700
2010-08-14 10:52:25 +00:00
Michael Drake a2276dc6ba Fix BeOS build.
svn path=/trunk/netsurf/; revision=10698
2010-08-13 22:51:29 +00:00
Michael Drake 410a50496c Plot rectangular border parts with the rectangle plotter, rather than the polygon plotter.
svn path=/trunk/netsurf/; revision=10697
2010-08-13 22:29:49 +00:00
Michael Drake 1a08c89788 Make top and bottom borders flush with left and right of border box, when possible. Make left and right borders only render above/below padding box when they need to.
svn path=/trunk/netsurf/; revision=10696
2010-08-13 21:07:46 +00:00
Michael Drake 3d8a39e225 Skip transparent borders early and change border side plot order.
svn path=/trunk/netsurf/; revision=10695
2010-08-13 19:02:39 +00:00
Michael Drake ab24d46f76 Fix inline border ends where inline text wraps.
svn path=/trunk/netsurf/; revision=10694
2010-08-13 16:53:30 +00:00
Michael Drake c4da991b8d Simplify border vertex arrangement code slightly.
svn path=/trunk/netsurf/; revision=10693
2010-08-13 14:05:07 +00:00
François Revel f2cb00870b C89.
svn path=/trunk/netsurf/; revision=10675
2010-08-02 21:49:20 +00:00
Michael Drake 2a286962f7 Fix build when layout logging is enabled.
svn path=/trunk/netsurf/; revision=10649
2010-07-16 17:56:33 +00:00
Michael Drake 17aacbec02 Record left and right float boxes with negative widths. Fixes overlapping text on new BBC News site.
svn path=/trunk/netsurf/; revision=10648
2010-07-16 17:48:20 +00:00
Michael Drake a29e3702be Update dirlist_generate_title documentation to match reality. Remove unused error check stuff.
svn path=/trunk/netsurf/; revision=10647
2010-07-16 12:08:59 +00:00
Chris Young 37b0d01d32 memory leak
svn path=/trunk/netsurf/; revision=10646
2010-07-15 22:34:03 +00:00
Chris Young 8940cc18b1 Localise browser "Index of" text
svn path=/trunk/netsurf/; revision=10645
2010-07-15 22:19:01 +00:00
Chris Young 18ffa91361 fix crash
svn path=/trunk/netsurf/; revision=10644
2010-07-15 21:58:36 +00:00
Michael Drake a8f41ec8a9 Fix so column suppression choices actually end up in the output.
svn path=/trunk/netsurf/; revision=10642
2010-07-15 18:43:47 +00:00
Michael Drake 3354bd7425 Move HTML generating code into separate functions. Tidy up spacing when parent directory link is not shown.
svn path=/trunk/netsurf/; revision=10641
2010-07-15 18:01:59 +00:00
Chris Young a182a36067 More intelligent path concatenation
svn path=/trunk/netsurf/; revision=10639
2010-07-14 22:36:04 +00:00
Michael Drake a3c2b432b5 Squash mimetype may be used uninitialised warning.
svn path=/trunk/netsurf/; revision=10638
2010-07-14 16:08:55 +00:00
Michael Drake cfdae54bc3 Add comments and factor out common file size code.
svn path=/trunk/netsurf/; revision=10637
2010-07-14 13:36:15 +00:00
Michael Drake 760bc3380c Restyle directory listings.
svn path=/trunk/netsurf/; revision=10636
2010-07-14 12:26:14 +00:00
Michael Drake 786442f5b2 Use human friendly size, which fixes RISC OS directory listings.
svn path=/trunk/netsurf/; revision=10634
2010-07-14 09:30:40 +00:00
Chris Young 12df55d095 Move directory text into type column
svn path=/trunk/netsurf/; revision=10632
2010-07-13 22:32:03 +00:00
Chris Young 1b49494d6e Improved directory browser
svn path=/trunk/netsurf/; revision=10631
2010-07-13 19:44:51 +00:00
Chris Young d4c519cc05 Amiga file: URIs now translate the : in device names to / (and back), which conforms
better to the spec (: will still work for compatibility, but may have problems).  This
fixes a problem with directory browsing.
Directory parent link now uses the full parent path returned by url_parent instead of
one relative to the current directory.

svn path=/trunk/netsurf/; revision=10629
2010-07-11 20:42:06 +00:00
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