Michael Drake
a0d7e79c8c
Allow box margins to collapse through zero-height boxes.
...
svn path=/trunk/netsurf/; revision=11981
2011-03-12 18:44:43 +00:00
Vincent Sanders
74f108ee4d
Saturated maths in css fixed point
...
svn path=/trunk/netsurf/; revision=11975
2011-03-12 17:46:11 +00:00
Daniel Silverstone
68e12d28f9
Remove pointless nasty skanky broken box tree duplication from hell
...
svn path=/trunk/netsurf/; revision=11970
2011-03-12 16:18:18 +00:00
Michael Drake
e406481623
Update left/right margins comment.
...
svn path=/trunk/netsurf/; revision=11967
2011-03-12 12:27:17 +00:00
John Mark Bell
a2d7cc9df1
Remove pointless search
...
svn path=/trunk/netsurf/; revision=11965
2011-03-11 10:33:42 +00:00
John Mark Bell
1edcef6141
Remove redundant parameter from content_open API
...
svn path=/trunk/netsurf/; revision=11964
2011-03-10 23:13:03 +00:00
John Mark Bell
8f3ed71cba
Keep child objects of a HTML content in a list, instead of an array
...
svn path=/trunk/netsurf/; revision=11963
2011-03-10 23:08:34 +00:00
Michael Drake
06ff431df7
Handle scaling of text plots in core.
...
svn path=/trunk/netsurf/; revision=11935
2011-03-08 18:47:15 +00:00
Chris Young
aa35550b86
plugins aren't images
...
svn path=/trunk/netsurf/; revision=11926
2011-03-06 15:34:48 +00:00
Chris Young
5ac45472c7
Fix broken CONTENT_PLUGIN API.
...
Add a default content handler for Amiga using the plugin interface, which passes
unknown files (currently images only) through DataTypes.
svn path=/trunk/netsurf/; revision=11924
2011-03-06 13:58:02 +00:00
Michael Drake
28dc80a3a5
Esimated width is fine for last box.
...
svn path=/trunk/netsurf/; revision=11922
2011-03-05 23:03:44 +00:00
Michael Drake
8c8ef2268d
Ensure box has appropriate space before cloning.
...
svn path=/trunk/netsurf/; revision=11921
2011-03-05 22:55:52 +00:00
Michael Drake
9be22ab590
Make sure the last clone box for a wrapped text is properly measuered.
...
svn path=/trunk/netsurf/; revision=11920
2011-03-05 22:18:06 +00:00
Sven Weidauer
208b98bb44
Created content handler CONTENT_APPLE_IMAGE for Mac OS X that can handle all image file formats supported by Apples ImageIO framework. Right now used only for JPEG to get rid of libjpeg dependency.
...
svn path=/trunk/netsurf/; revision=11911
2011-03-05 09:49:15 +00:00
Michael Drake
9e1916ad61
Fix comment.
...
svn path=/trunk/netsurf/; revision=11891
2011-03-02 19:36:13 +00:00
Michael Drake
3e7ea29e4b
Move clone to box flags.
...
svn path=/trunk/netsurf/; revision=11890
2011-03-02 19:30:08 +00:00
Michael Drake
be366b0e6b
Move strip_leading_newline to box flags.
...
svn path=/trunk/netsurf/; revision=11889
2011-03-02 19:16:03 +00:00
Michael Drake
3707be6292
Move printed to box flags.
...
svn path=/trunk/netsurf/; revision=11888
2011-03-02 18:41:17 +00:00
Michael Drake
77f67bccb6
Move style_owned to box flags.
...
svn path=/trunk/netsurf/; revision=11887
2011-03-02 18:27:41 +00:00
Michael Drake
f744c9dfa0
Make box flags and move new line indicator to it.
...
svn path=/trunk/netsurf/; revision=11886
2011-03-02 17:50:51 +00:00
Michael Drake
db69e8045b
When wrapping text, don't duplicate strings. Special case for text inside textareas, since they require it.
...
svn path=/trunk/netsurf/; revision=11881
2011-03-01 22:14:02 +00:00
Michael Drake
3b366c53f9
More useful assert and remove box_dump call.
...
svn path=/trunk/netsurf/; revision=11880
2011-03-01 21:48:38 +00:00
Michael Drake
e3f00b8546
Cache space widths.
...
svn path=/trunk/netsurf/; revision=11877
2011-03-01 20:00:41 +00:00
Michael Drake
f1343377ff
Split splitting out into layout_text_box_split().
...
svn path=/trunk/netsurf/; revision=11869
2011-03-01 13:42:27 +00:00
Michael Drake
e35aecb9aa
Optimise wrapped text layout.
...
svn path=/trunk/netsurf/; revision=11852
2011-02-28 13:18:27 +00:00
John Mark Bell
86a2e0076d
Fix bug #3194007 : stop emitting duplicate READY/DONE events.
...
* Make content handlers responsible for setting READY/DONE state & emitting events.
* Stop content_convert doing this when there is a registered convert function for the content type.
svn path=/trunk/netsurf/; revision=11850
2011-02-27 20:11:39 +00:00
John Mark Bell
daa8697651
Parallelise fetch and conversion of imported stylesheets
...
svn path=/trunk/netsurf/; revision=11817
2011-02-26 00:58:54 +00:00
John Mark Bell
b1a2212a95
Fix bug #3140968 : form submission with the GET method must replace the query segment of the action URL.
...
svn path=/trunk/netsurf/; revision=11800
2011-02-25 19:57:23 +00:00
John Mark Bell
ec39ae69d6
Correct handling of action="": should submit to the document URL, not the base URL.
...
svn path=/trunk/netsurf/; revision=11799
2011-02-25 19:56:28 +00:00
John Mark Bell
d9280e8d72
Fix bug #2076786 : do not apply fallback content to failed objects
...
svn path=/trunk/netsurf/; revision=11797
2011-02-25 19:14:38 +00:00
Michael Drake
38ec3a917d
Don't consider top/left of descendant box when applying box overflow scrollbars.
...
svn path=/trunk/netsurf/; revision=11792
2011-02-24 22:00:24 +00:00
Michael Drake
9125bd1fa4
Apply margin before clear.
...
svn path=/trunk/netsurf/; revision=11786
2011-02-24 15:45:10 +00:00
Michael Drake
b68dc734e1
Handle text-indent in layout_minmax_line(). ( Fixes #3187505 ; scattering of social networking icons on BBC News.)
...
svn path=/trunk/netsurf/; revision=11785
2011-02-24 13:46:12 +00:00
John Mark Bell
c74936c3e8
Castrate favicon fetching. I've lost count of how much pain this has caused.
...
svn path=/trunk/netsurf/; revision=11782
2011-02-24 00:03:19 +00:00
Michael Drake
2ef37af60c
When box has no style, handle descendant calc as for overflow: visible.
...
svn path=/trunk/netsurf/; revision=11770
2011-02-23 13:11:19 +00:00
Michael Drake
cbaada8305
Fix silly.
...
svn path=/trunk/netsurf/; revision=11764
2011-02-22 22:14:22 +00:00
Michael Drake
8a223ef1b2
Fix text clipping bug.
...
svn path=/trunk/netsurf/; revision=11763
2011-02-22 22:07:28 +00:00
Michael Drake
7eaa663d74
Child bbox is relative to current box.
...
svn path=/trunk/netsurf/; revision=11756
2011-02-22 15:34:36 +00:00
Michael Drake
7f1108df32
Child's descendant bbox only affects current box's bbox if the child has overflow:visible.
...
svn path=/trunk/netsurf/; revision=11755
2011-02-22 15:12:18 +00:00
Michael Drake
474cbe917e
Add function to get a box's border edge bbox, and use it to find initial descendant bbox.
...
svn path=/trunk/netsurf/; revision=11754
2011-02-22 14:57:04 +00:00
Michael Drake
9a8341cb39
Simplify descendant bbox calculations.
...
svn path=/trunk/netsurf/; revision=11753
2011-02-22 11:38:19 +00:00
Michael Drake
cd40c260b9
Remove knockout from html_redraw, and use it in browser_window_redraw and thumbnail_redraw.
...
svn path=/trunk/netsurf/; revision=11746
2011-02-21 14:48:55 +00:00
John Mark Bell
b76ef4333a
Don't crash if there's no box associated with a textarea
...
svn path=/trunk/netsurf/; revision=11711
2011-02-19 14:59:30 +00:00
Michael Drake
bbdb7cd440
Fix fixed point percentage macro not to overflow. Thanks to jmb and vince.
...
svn path=/trunk/netsurf/; revision=11702
2011-02-16 20:41:55 +00:00
Michael Drake
06e6ec4eb1
If percentage is negative, resort to floating point.
...
svn path=/trunk/netsurf/; revision=11700
2011-02-16 17:14:47 +00:00
Michael Drake
4f47cad962
Non block level :after boxes aren't supported yet, so don't generate them.
...
svn path=/trunk/netsurf/; revision=11691
2011-02-15 23:08:38 +00:00
John Mark Bell
ad2279811a
Fix bug #3182729 : meta refresh of embedded html pages resulted in mismatched API expectations
...
svn path=/trunk/netsurf/; revision=11688
2011-02-15 21:49:28 +00:00
Michael Drake
f793d17acd
Handle percentages from libcss without doing floating point maths.
...
svn path=/trunk/netsurf/; revision=11687
2011-02-15 14:31:18 +00:00
Michael Drake
e4035987a7
Pass clip rect through html redraw as pointer.
...
svn path=/trunk/netsurf/; revision=11685
2011-02-15 11:42:05 +00:00
Michael Drake
94e7b44ebc
Pass clip rect to clip plotters as struct. Simplify clip rect handling in debug window code. Pass clip rect to select menu as struct.
...
svn path=/trunk/netsurf/; revision=11683
2011-02-14 22:05:39 +00:00
John Mark Bell
f42ed976e5
Constify
...
svn path=/trunk/netsurf/; revision=11680
2011-02-14 19:17:08 +00:00
Michael Drake
c05333fa62
Pass clip rect to scroll_redraw as struct. Simplify test to see if scrollbar is within clip rect.
...
svn path=/trunk/netsurf/; revision=11679
2011-02-14 17:57:08 +00:00
Michael Drake
60c74c2e3c
More comments for object dimension calculation.
...
svn path=/trunk/netsurf/; revision=11678
2011-02-14 16:42:23 +00:00
Michael Drake
fc7efc6e4a
Don't use float maths for AUTO image sizing with one given dimension.
...
svn path=/trunk/netsurf/; revision=11677
2011-02-14 14:48:56 +00:00
Michael Drake
5b4228f5aa
Handle object sizing in one place.
...
svn path=/trunk/netsurf/; revision=11676
2011-02-14 14:39:42 +00:00
Michael Drake
3d69933e45
Avoid potential divide by 0.
...
svn path=/trunk/netsurf/; revision=11675
2011-02-14 12:56:52 +00:00
Michael Drake
9336ea3ac8
Increase computed time before scheduled redraws.
...
svn path=/trunk/netsurf/; revision=11674
2011-02-14 11:14:40 +00:00
Michael Drake
fe7921a387
Pass clip rect as struct through content_redraw api. Update the front ends to use this. Note only RO build tested.
...
svn path=/trunk/netsurf/; revision=11670
2011-02-13 22:25:11 +00:00
Michael Drake
27b6096dcd
Move stuct rect out of box.h and tree.c.
...
svn path=/trunk/netsurf/; revision=11647
2011-02-11 19:35:16 +00:00
John Mark Bell
5d27aa256f
Port to latest libcss
...
svn path=/trunk/netsurf/; revision=11526
2011-01-29 19:22:12 +00:00
Michael Drake
44e8897a48
Make layout of block formatting contexts take account of the bottom margin of the last contained block.
...
svn path=/trunk/netsurf/; revision=11498
2011-01-26 15:14:38 +00:00
Daniel Silverstone
cd72933201
Ensure we free more of the css stuff for the box model.
...
svn path=/trunk/netsurf/; revision=11399
2011-01-19 21:15:23 +00:00
Sven Weidauer
23770014c0
Check for animating GIF favicon only if compiled with GIF support.
...
svn path=/trunk/netsurf/; revision=11298
2011-01-12 22:07:40 +00:00
Michael Drake
40a034b08f
Don't clear floats if there aren't floats to clear.
...
svn path=/trunk/netsurf/; revision=11270
2011-01-09 19:09:30 +00:00
Michael Drake
fe291f87d9
Ensure top margin is affects static position in particular case.
...
svn path=/trunk/netsurf/; revision=11262
2011-01-09 00:09:57 +00:00
John Mark Bell
3368407d9e
Document font APIs -- specifically, string lengths are specified in bytes, not characters
...
svn path=/trunk/netsurf/; revision=11261
2011-01-09 00:02:47 +00:00
Michael Drake
b85fcf590f
Table top/bottom margin is 0px when computed value is 'auto'.
...
svn path=/trunk/netsurf/; revision=11257
2011-01-08 17:34:45 +00:00
Daniel Silverstone
234301ad23
Fix silliness
...
svn path=/trunk/netsurf/; revision=11243
2011-01-07 13:14:06 +00:00
Daniel Silverstone
d00c5b0cd5
Add CONTENT_MSG_FAVICON_REFRESH and emit and handle it appropriately. Animated favicons now work
...
svn path=/trunk/netsurf/; revision=11242
2011-01-07 13:10:20 +00:00
Daniel Silverstone
4b4db144f0
Ensure that we only set done once, but that we do reformat if we're updated. (First stage to animated favicon)
...
svn path=/trunk/netsurf/; revision=11240
2011-01-07 12:40:57 +00:00
Daniel Silverstone
72683554b4
Only consider a favicon for redraw/done if an event *caused* it to become ready
...
svn path=/trunk/netsurf/; revision=11239
2011-01-07 12:12:47 +00:00
Michael Drake
749dfa52ba
Completion of first-letter and first-line pseudo element computed styles is not handled yet.
...
svn path=/trunk/netsurf/; revision=11228
2011-01-06 11:11:47 +00:00
John Mark Bell
77ea8a8d63
Always want inline style now (also prevents use of an uninitialised variable)
...
svn path=/trunk/netsurf/; revision=11220
2011-01-05 22:38:37 +00:00
John Mark Bell
9422e6dad0
Remove redundant validation -- if you successfully obtain a css_select_results object, then its base style is guaranteed to exist
...
svn path=/trunk/netsurf/; revision=11217
2011-01-05 20:14:34 +00:00
Michael Drake
08ed4c207f
Update to new libcss API for simultanious selection for base element and its pseudo elements.
...
svn path=/trunk/netsurf/; revision=11215
2011-01-05 19:36:05 +00:00
Michael Drake
027726c432
Don't create iframes for hidden or non-displayed boxes.
...
svn path=/trunk/netsurf/; revision=11213
2011-01-05 01:26:29 +00:00
Michael Drake
61b7c722be
Implement enough support for the :after pseudo element for the widely-used clearfix CSS layout hack to work.
...
svn path=/trunk/netsurf/; revision=11206
2011-01-04 21:52:43 +00:00
Michael Drake
adeb661582
Fix comment.
...
svn path=/trunk/netsurf/; revision=10935
2010-11-03 15:44:01 +00:00
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