John Mark Bell
ffd2e6095d
Fix matching of universal element selectors
...
svn path=/trunk/netsurf/; revision=11979
2011-03-12 18:29:40 +00:00
John Mark Bell
1bfb8c9f89
Sync API with modern libcss
...
svn path=/trunk/netsurf/; revision=11977
2011-03-12 17:51:59 +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
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
ceadbafcbc
Clean up blank_import on exit
...
svn path=/trunk/netsurf/; revision=11818
2011-02-26 01:19:11 +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
28d1817bdd
Fix bug #3171370 : initialise font resolution callback pointers
...
svn path=/trunk/netsurf/; revision=11608
2011-02-03 09:31:11 +00:00
John Mark Bell
a8bc5d3916
Fix :root detection
...
svn path=/trunk/netsurf/; revision=11571
2011-01-31 23:14:13 +00:00
John Mark Bell
7661829e60
Various fixes for selection callbacks
...
svn path=/trunk/netsurf/; revision=11570
2011-01-31 22:31:47 +00:00
John Mark Bell
cf561c8a6e
Sync selection engine binding with latest libcss
...
svn path=/trunk/netsurf/; revision=11561
2011-01-31 08:49:39 +00:00
Vincent Sanders
fbb1139214
add default system colour handlers to each frontend
...
svn path=/trunk/netsurf/; revision=11530
2011-01-30 13:40:47 +00:00
John Mark Bell
cd5950936a
Add ability to dump opacity property, too
...
svn path=/trunk/netsurf/; revision=11528
2011-01-29 21:54:35 +00:00
John Mark Bell
5d27aa256f
Port to latest libcss
...
svn path=/trunk/netsurf/; revision=11526
2011-01-29 19:22:12 +00:00
John Mark Bell
850160c40f
Reflect new css_stylesheet_create API
...
svn path=/trunk/netsurf/; revision=11523
2011-01-29 14:53:18 +00:00
Michael Drake
12a9c138e6
Fix attempt to destroy selection resutls that don't exist.
...
svn path=/trunk/netsurf/; revision=11216
2011-01-05 19:53:35 +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
3c698793a0
Make function only used in the selection code private.
...
svn path=/trunk/netsurf/; revision=11193
2011-01-04 18:02:55 +00:00
John Mark Bell
08ca689172
Reflect changes to libcss API
...
svn path=/trunk/netsurf/; revision=11001
2010-12-05 14:24:29 +00:00
John Mark Bell
73ace49c5a
Fix colours
...
svn path=/trunk/netsurf/; revision=10989
2010-12-04 21:52:26 +00:00
John Mark Bell
89683af529
Only invoke callback when we successfully converted CSS data.
...
svn path=/trunk/netsurf/; revision=10592
2010-07-01 19:42:02 +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
c1c25e479a
Unref uri after sending it to hlcache when requesting a css pending import, so that we don't leak the uris
...
svn path=/trunk/netsurf/; revision=10503
2010-04-27 22:25:41 +00:00
Daniel Silverstone
3d31372b9d
Fix it so that empty charset strings fall back properly. Fixes http://www.arm.com/community/partners/all_partners.php
...
svn path=/trunk/netsurf/; revision=10452
2010-04-22 12:19:17 +00:00
John Mark Bell
69d0119a48
Check correct variable for error.
...
svn path=/trunk/netsurf/; revision=10428
2010-04-18 16:07:34 +00:00
John Mark Bell
7dcc15cbd4
Now that we own imported stylesheets, we can get away with allocating a single blank import and registering that.
...
svn path=/trunk/netsurf/; revision=10370
2010-04-11 19:59:59 +00:00
John Mark Bell
88449e3328
Pedantic line break
...
svn path=/trunk/netsurf/; revision=10368
2010-04-11 19:51:38 +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
Daniel Silverstone
291b4480f1
Cover our backs in the charset == NULL case
...
svn path=/trunk/netsurf/; revision=10319
2010-04-08 15:41:36 +00:00
Daniel Silverstone
832ecb9ce3
Allow nscss to retain charset and nscss_clone to use it
...
svn path=/trunk/netsurf/; revision=10318
2010-04-08 15:40:17 +00:00
John Mark Bell
1c6d8c7e47
Prevent assertion when imported stylesheet fails to load.
...
svn path=/trunk/netsurf/; revision=10256
2010-04-06 19:31:23 +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
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
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
Rob Kendrick
974f42f8cf
Only obey size property on input elements that are either text or password. Fixes submit buttons with size properties being too small/large.
...
svn path=/trunk/netsurf/; revision=10191
2010-03-28 18:33:10 +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
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
aaa14e7672
Fix erroneous switch fallthrough
...
svn path=/trunk/netsurf/; revision=9694
2009-11-22 14:12:49 +00:00
John Mark Bell
9e742f13da
Log failures
...
svn path=/trunk/netsurf/; revision=9629
2009-10-12 17:38:22 +00:00
John Mark Bell
d442d4ff9f
Yet more case insensitivity
...
svn path=/trunk/netsurf/; revision=9549
2009-09-06 22:49:32 +00:00
Michael Drake
cd07aa9d31
Fix for percentage values.
...
svn path=/trunk/netsurf/; revision=9546
2009-09-05 16:36:44 +00:00
Michael Drake
3dd906c813
Remove redundant line.
...
svn path=/trunk/netsurf/; revision=9545
2009-09-05 16:24:17 +00:00
Michael Drake
d8f4c0d029
Fix table border=0.
...
svn path=/trunk/netsurf/; revision=9544
2009-09-05 16:23:00 +00:00
Michael Drake
ca8a2b5af0
Fix defualt table cell border width and move border style from default css to code.
...
svn path=/trunk/netsurf/; revision=9543
2009-09-05 15:49:09 +00:00
John Mark Bell
d82b27ff58
Attribute value comparisons should be case insensitive
...
svn path=/trunk/netsurf/; revision=9537
2009-09-05 08:13:34 +00:00
John Mark Bell
0d412f5604
Sync with libcss.
...
svn path=/trunk/netsurf/; revision=9406
2009-08-23 07:58:33 +00:00
John Mark Bell
196f268ae5
Fix build
...
svn path=/trunk/netsurf/; revision=9392
2009-08-22 10:21:43 +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
b0f127aa2c
Support HTML alignment hints.
...
svn path=/trunk/netsurf/; revision=9381
2009-08-21 17:05:22 +00:00
John Mark Bell
efc284836b
Sync with new libcss API. There's huge amounts of room for improvement in this implementation.
...
svn path=/trunk/netsurf/; revision=8883
2009-07-29 09:59:29 +00:00
John Mark Bell
c75a613546
Add stylesheet size + size of imported sheets onto CSS content size.
...
Remove imported contents once we've fetched them and imported them into their parent (once this has happened, the content object is just an empty shell, so not worth keeping around).
svn path=/trunk/netsurf/; revision=8831
2009-07-27 19:40:55 +00:00
John Mark Bell
1916193813
Slight optimisation
...
svn path=/trunk/netsurf/; revision=8824
2009-07-27 14:57:40 +00:00
John Mark Bell
3f62ae40d4
Retrieve charset specified on the HTTP layer.
...
svn path=/trunk/netsurf/; revision=8821
2009-07-27 13:56:05 +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
24881dfb98
Something approximating error reporting. This really needs addressing properly.
...
svn path=/trunk/netsurf/; revision=8791
2009-07-25 21:42:27 +00:00
John Mark Bell
f734aaace5
Make round-to-nearest clearer.
...
svn path=/trunk/netsurf/; revision=8786
2009-07-25 17:21:35 +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
2939ec04de
More consistent conversion of lengths to pixels.
...
We now calculate the nearest whole number of pixels required for 1 unit, then multiply that by the requested length.
This means that 2 * len2px(1, cm) == len2px(2, cm), for example.
svn path=/trunk/netsurf/; revision=8782
2009-07-25 13:19:11 +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
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
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
John Mark Bell
8e545756f0
Tidy up background-position parsing
...
svn path=/trunk/netsurf/; revision=7601
2009-05-28 14:05:47 +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
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
15d7987723
Squash leaks
...
svn path=/trunk/netsurf/; revision=6559
2009-02-18 13:11:32 +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
John Mark Bell
0ccdff104f
Blah.
...
svn path=/trunk/netsurf/; revision=6366
2009-02-05 15:07:19 +00:00
Michael Drake
61489da940
Handle no units in CSS as px. This is a temporary measure until the new CSS parser is used, which will handle this properly.
...
svn path=/trunk/netsurf/; revision=6173
2009-01-22 10:53:14 +00:00
Michael Drake
e34ed32685
Fix css_len2pt conversion from px and use it in the RO front end code.
...
svn path=/trunk/netsurf/; revision=5914
2008-12-16 12:26:52 +00:00
John Mark Bell
d7bc286801
Rename library to avoid confusion.
...
Require make test to actually do anything. Will error out by default.
svn path=/trunk/netsurf/; revision=5814
2008-11-28 17:29:35 +00:00
John Mark Bell
baf8100d9b
Extract test code from css.c into a separate source file.
...
Modify test driver to take stylesheet filename on the command line.
Makefile to build a library from the css parser sources and link the test driver against it.
svn path=/trunk/netsurf/; revision=5812
2008-11-28 17:17:45 +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
76444db118
Fix pt and pc size calculations when screen dpi is not 90.
...
svn path=/trunk/netsurf/; revision=5536
2008-10-11 15:59:49 +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
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
0187cbc40f
Comment css_len2{pt|px} functions and wrap to 80 chars.
...
svn path=/trunk/netsurf/; revision=5263
2008-09-06 20:01:27 +00:00
Michael Drake
668dd06dc3
Add comments and change height attribute handling on TR to only alter the height if attribute height is greater than current height.
...
svn path=/trunk/netsurf/; revision=5259
2008-09-05 13:04:30 +00:00
François Revel
af7be03db3
more obvious C89
...
svn path=/trunk/netsurf/; revision=4792
2008-07-29 09:25:17 +00:00
François Revel
971c93fece
gcc2 doesn't find CSS_FONT_SIZE_LENGTH, moved css_font_size_type to its own type.
...
svn path=/trunk/netsurf/; revision=4791
2008-07-29 09:18:53 +00:00
Rob Kendrick
052f99d379
Include headers we need, rather than depending on (optional) features doing so.
...
svn path=/trunk/netsurf/; revision=4774
2008-07-28 20:32:51 +00:00
Michael Drake
9fb65c7096
Remove if that was always true.
...
svn path=/trunk/netsurf/; revision=4740
2008-07-26 15:43:41 +00:00
John Mark Bell
5452d31d37
Make css_dump_style dump to a specified stream rather than assuming stderr. Makes box_dump on <>RISC OS behave sensibly.
...
svn path=/trunk/netsurf/; revision=4538
2008-07-09 11:49:27 +00:00
John Mark Bell
23fb72ea6b
The core code has always assumed a locale of "C".
...
Do not change the locale globally, else things will break in weird and
wonderful ways.
Introduce utils/locale.[ch], which provide locale-specific wrappers for various
functions (currently just the <ctype.h> ones).
Fix up the few places I can see that actually require that the underlying
locale is paid attention to.
Some notes:
1) The GTK frontend code has not been touched. It is possible that reading of
numeric values (e.g. from the preferences dialogue) may break with this
change, particularly in locales that use something other than '.' as their
decimal separator.
2) The search code is left unchanged (i.e. assuming a locale of "C").
This may break case insensitive matching of non-ASCII characters.
I doubt that ever actually worked, anyway. In future, it should use
Unicode case conversion to achieve the same effect.
3) The text input handling in the core makes use of isspace() to detect
word boundaries. This is fine for western languages (even in the C locale,
which it's currently assuming). It will, however, break for CJK et. al.
(this has always been the case, rather than being a new issue)
4) text-transform uses locale-specific variants of to{lower,upper}. In future
this should probably be performing Unicode case conversion. This is the
only part of the core code that makes use of locale information.
In future, if you require locale-specific behaviour, do the following:
setlocale(LC_<whatever>, "");
<your operation(s) here>
setlocale(LC_<whatever>, "C");
The first setlocale will change the current locale to the native environment.
The second setlocale will reset the current locale to "C".
Any value other than "" or "C" is probably a bug, unless there's a really
good reason for it.
In the long term, it is expected that all locale-dependent code will reside in
platform frontends -- the core being wholly locale agnostic (though assuming
"C" for things like decimal separators).
svn path=/trunk/netsurf/; revision=4153
2008-05-13 14:37:44 +00:00
John Mark Bell
dc85ddb0a8
Launch redirects to unsupported URLs in other applications.
...
svn path=/trunk/netsurf/; revision=4098
2008-04-19 11:07:42 +00:00
John Mark Bell
5c1be65e31
Squash warning
...
svn path=/trunk/netsurf/; revision=3984
2008-03-19 17:40:17 +00:00
John Mark Bell
8f999376d5
Bring definition of {escape} in line with CSS 2.1 spec.
...
Require units when parsing css lengths.
Correctly ignore background: meta-properties which have multiple instances of sub-properties (e.g. foo { background: red pink; })
svn path=/trunk/netsurf/; revision=3893
2008-03-06 23:20:32 +00:00
John Mark Bell
674591f63d
s/FALSE/false/g
...
s/TRUE/true/g
svn path=/trunk/netsurf/; revision=3867
2008-02-25 17:08:09 +00:00
Michael Drake
a4e1ffda1a
Improve handling of HTML attributes / markup:
...
* Only apply presentational HTML attributes if no more
important CSS has been set for the property. (NetSurf used
to be a bit hit-and-miss when presentational markup and
CSS were mixed.)
* Change table cellpadding and border handling to happen as
soon the boxes styles are available, rather than after the
whole table has been constructed. Also fix default table
border colour.
* Improve handling of CENTER tag and ALIGN attribute. These
could not be correctly supported in the default CSS file,
so block level element alignment is now done during box
construction. (Fixes #1891379 , #1824492 , #1723853 )
Form improvements:
* Small MAXLENGTH values on text inputs now reduce element
width. (Fixes #1894854 )
* Prevent select option text from wrapping.
svn path=/trunk/netsurf/; revision=3866
2008-02-25 16:37:48 +00:00
Michael Drake
1d849805b4
Include string.h. Thanks to joty.
...
svn path=/trunk/netsurf/; revision=3829
2008-02-03 16:43:16 +00:00
John Mark Bell
04c38876b3
Remove unnecessary #ifdef riscos
...
svn path=/trunk/netsurf/; revision=3815
2008-02-02 00:25:21 +00:00
Michael Drake
2e6d221a42
Fix GTK build.
...
svn path=/trunk/netsurf/; revision=3814
2008-02-02 00:22:08 +00:00
Michael Drake
120ca506c1
Make text input boxes with height:auto; and no initial value get a sensible height. Make all form elements have their dimensions based on the configured minimum font size, if the current text size is smaller. Remove redundant code for setting radio icon and checkbox sizes. All em/ex based sizes now respect the min font size, when it's in effect. Updated default styles for form elements.
...
svn path=/trunk/netsurf/; revision=3813
2008-02-02 00:13:19 +00:00
John Mark Bell
83941da263
Add function to dump working stylesheets
...
svn path=/trunk/netsurf/; revision=3811
2008-01-31 01:47:57 +00:00
John Mark Bell
78d194cb77
Rework handling of HTTP redirects -- we now count the number of redirects followed for a given item and abort if a fixed limit is reached. This fixes sites which have pages that redirect to themselves.
...
Redirect handling is now transparent to clients of fetchcache.
The new scheme works as follows:
1) Request content for URL (fetchcache()
2) Start fetch of content (fetchcache_go()
3) If no redirect, continue through LOADING, READY, DONE etc. states as before
If redirect, receive NEWPTR for each redirect that occurs, then continue
through LOADING, READY, DONE etc. states as before.
The upshot of this is that redirects result in extra contents being created. It also means that, until LOADING has been received, the content (and thus the URL being fetched) may change. Therefore, fetchcache clients should expect to have to deal with transient data prior to LOADING occurring.
As a necessary side-effect of this, the HTML object URLs and CSS @import URLs are no longer stored alongside the relevant contents. These URLs can be accessed by interrogating the url member of struct content anyway, so it was a rather redundant scheme before.
svn path=/trunk/netsurf/; revision=3787
2008-01-28 01:35:00 +00:00
John Mark Bell
ae3555ccdd
Fixes for targetting NetBSD (Thanks to Adam Hoka)
...
svn path=/trunk/netsurf/; revision=3775
2008-01-26 16:44:17 +00:00
Michael Drake
d13ac3b066
Increase default font size and line spacing.
...
svn path=/trunk/netsurf/; revision=3660
2007-12-09 11:13:25 +00:00
James Bursa
aa24cdff0d
Bug fixes in parse_length, parse_clip, css_dump_style, css_dump_length by Franz Korntner.
...
svn path=/trunk/netsurf/; revision=3635
2007-10-28 17:01:53 +00:00
Richard Wilson
8df0a5ad40
No longer assert on invalid input to hex_colour.
...
svn path=/trunk/netsurf/; revision=3626
2007-10-09 16:41:57 +00:00
Richard Wilson
7163f5aadd
Fix parsing of invalid colour values becoming CSS_COLOR_NONE. Make all colour parsing code common.
...
svn path=/trunk/netsurf/; revision=3625
2007-10-09 16:25:25 +00:00
Michael Drake
686c98fafd
Allow hex CSS colour values with omitted hash. Fix #rgb and #rrggbb handling to only accept hex characters.
...
svn path=/trunk/netsurf/; revision=3620
2007-10-03 06:47:45 +00:00
James Bursa
09b1dcb23d
Remove restriction of @import coming at the start, because multiple inline stylesheets are parsed as one stylesheet, so may contain @import in the middle.
...
svn path=/trunk/netsurf/; revision=3616
2007-10-02 04:50:25 +00:00
Daniel Silverstone
d1382c6d0e
Provide the facility to set the DPI of the display by removing the assumptions of 90.0 dpi from the CSS and layout engines.
...
svn path=/trunk/netsurf/; revision=3528
2007-08-19 10:08:49 +00:00
Vincent Sanders
2f864eeecc
Update all source code file headers to reflect GPL version 2 only and contain appropriate licence text
...
svn path=/trunk/netsurf/; revision=3486
2007-08-08 16:16:03 +00:00
Daniel Silverstone
6807b4208a
Remove the netsurf/ from the include paths and rationalise use of <> vs "" in includes
...
NetSurf includes are now done with ""s and other system includes with <>s as C intended.
The scandeps tool has been updated to only look for ""ed includes, and to verify that the
files exist in the tree before adding them to the dependency lines. The depend rule has
therefore been augmented to make sure the autogenerated files are built before it is run.
This is untested under self-hosted RISC OS builds. All else tested and works.
svn path=/trunk/netsurf/; revision=3307
2007-05-30 22:39:54 +00:00
James Bursa
828bac39e4
Fix various warnings.
...
svn path=/trunk/netsurf/; revision=3263
2007-05-02 03:17:19 +00:00
John Mark Bell
9c048ad076
Fix invalidation of unwanted contents.
...
svn path=/trunk/netsurf/; revision=3214
2007-03-19 00:04:09 +00:00
John Mark Bell
f261e4426a
Lose noisy logging
...
svn path=/trunk/netsurf/; revision=3213
2007-03-18 23:48:12 +00:00
John Mark Bell
947ab0dcd2
Ensure content structures are zero initialised.
...
Make css_destroy check that the stylesheet pointer exists (content
destructors may be called whilst the content is still loading - e.g. if
the content type isn't permissable in the context it was loaded from).
Fixes 1627413, 1580980.
svn path=/trunk/netsurf/; revision=3212
2007-03-18 20:19:13 +00:00
John Mark Bell
703b5fea73
Ensure content owners check that they are still interested in a content
...
when receiving notification that the content's in error. This prevents
content pointers being corrupted when redirects occur. Fixes 1522002,
1551475.
svn path=/trunk/netsurf/; revision=3211
2007-03-18 17:09:55 +00:00
John Mark Bell
9cf5122797
Content handlers should not call warn_user - they should broadcast the
...
error using content_broadcast and leave it to the content owner(s) to
decide what to do about it.
Only use warn_user for top-level contents.
svn path=/trunk/netsurf/; revision=3204
2007-03-11 22:08:57 +00:00
Rob Kendrick
b6cc8cc6eb
Remove .cvsignore files, and replicate functionality with svn:ignore attributes
...
svn path=/trunk/netsurf/; revision=3166
2007-02-04 13:00:06 +00:00
John Mark Bell
25213dca24
Fix handling of cookies in unverifiable transactions caused by a redirect from a fetch into a browser window which was varifiable.
...
svn path=/trunk/netsurf/; revision=3165
2007-02-02 23:08:13 +00:00
James Bursa
a0b6661eb6
Make GTK build compile on FreeBSD.
...
svn path=/trunk/netsurf/; revision=3154
2007-01-29 22:27:15 +00:00
Michael Drake
ba23e4b693
Update project URL.
...
svn path=/trunk/netsurf/; revision=3073
2006-11-27 15:35:18 +00:00
Richard Wilson
fdbb855a9c
Fix accidental press of delete :-s
...
svn path=/trunk/netsurf/; revision=2852
2006-08-15 19:33:42 +00:00
Richard Wilson
8852cdd109
Treat unitless CSS values as pixels (fix 1527056)
...
svn path=/trunk/netsurf/; revision=2851
2006-08-15 19:20:36 +00:00
Richard Wilson
307ae1c40c
Fix the small NetSurf build.
...
svn path=/trunk/netsurf/; revision=2714
2006-07-04 23:43:49 +00:00
Richard Wilson
59b7ce9194
Don't assert() for AUTH or SSL codes (fix 1498477)
...
svn path=/trunk/netsurf/; revision=2713
2006-07-04 22:03:39 +00:00
John Mark Bell
4e6974b523
Fix background: parsing & lose potential memory leak
...
svn path=/trunk/netsurf/; revision=2660
2006-06-28 15:38:46 +00:00
Daniel Silverstone
35bb5f96d5
[project @ 2006-03-19 17:49:32 by dsilvers]
...
Add support for a few more CSS cursors and tidy the GUI_POINTER_* stuff to support what we already had
svn path=/import/netsurf/; revision=2135
2006-03-19 17:49:32 +00:00
John Mark Bell
c4260ee25e
[project @ 2006-03-17 02:08:42 by jmb]
...
Fix behaviour of clip property parser when presented with invalid data
svn path=/import/netsurf/; revision=2133
2006-03-17 02:08:42 +00:00
Daniel Silverstone
05b214a5d5
[project @ 2006-03-09 19:04:13 by dsilvers]
...
css.[ch]: Add css_len2pt to convert a CSS length to points for use on systems
which actually recognise that DPI might not be 90 all the time.
svn path=/import/netsurf/; revision=2114
2006-03-09 19:04:13 +00:00
John Mark Bell
e4e01d338f
[project @ 2006-02-11 21:58:56 by jmb]
...
Permit negative text indent
svn path=/import/netsurf/; revision=2075
2006-02-11 21:58:56 +00:00
John Mark Bell
9a35230e88
[project @ 2006-02-05 22:22:35 by jmb]
...
Fix bad read
svn path=/import/netsurf/; revision=2057
2006-02-05 22:22:35 +00:00
John Mark Bell
611ec68e46
[project @ 2006-01-02 23:31:28 by jmb]
...
Implement font default option properly
svn path=/import/netsurf/; revision=1969
2006-01-02 23:31:29 +00:00
James Bursa
08e8ee3ed1
[project @ 2005-08-21 12:04:17 by bursa]
...
Change void * parameters to intptr_t to make them correct for storing integers or pointers.
svn path=/import/netsurf/; revision=1852
2005-08-21 12:04:18 +00:00
James Bursa
3b4baa8008
[project @ 2005-08-04 22:51:42 by bursa]
...
Fix strndup() compiler warnings.
svn path=/import/netsurf/; revision=1840
2005-08-04 22:51:42 +00:00
John Mark Bell
94433308d1
[project @ 2005-07-31 22:06:03 by jmb]
...
Ignore @import rules which occur after a valid rule.
svn path=/import/netsurf/; revision=1835
2005-07-31 22:06:03 +00:00
John Mark Bell
0686a76649
[project @ 2005-07-31 15:55:36 by jmb]
...
Make length -> pixel conversion more accurate.
Fix handling of CSS <numbers>
Fix border widths.
svn path=/import/netsurf/; revision=1832
2005-07-31 15:55:36 +00:00
James Bursa
22640f85e0
[project @ 2005-05-22 21:50:14 by bursa]
...
Add BOX_TEXT type to distinguish boxes which came from an inline element to boxes which came from a text node. Add inline_parent pointer to box structure. Rewrite text-decoration support to take advantage of the new data (line colours are now correct). Note: there is a clipping issue in redraw.
svn path=/import/netsurf/; revision=1732
2005-05-22 21:50:14 +00:00
James Bursa
ff74a126f7
[project @ 2005-05-21 23:30:19 by bursa]
...
Improve selector specificity support by adding "working stylesheets" with pre-sorted lists of rules. This also simplifies css_get_style(). The stylesheet origin is now encoded in the specificity. Improve output of css_dump_style().
svn path=/import/netsurf/; revision=1729
2005-05-21 23:30:19 +00:00
Richard Wilson
a01210941b
[project @ 2005-04-20 03:58:40 by rjw]
...
Fix parsing of 0 values without a unit for background-position and font-size.
svn path=/import/netsurf/; revision=1672
2005-04-20 03:58:40 +00:00
Richard Wilson
487cad486d
[project @ 2005-04-14 19:54:24 by rjw]
...
Implement HTML table border setting. Improve support for the collapsing border model.
svn path=/import/netsurf/; revision=1632
2005-04-14 19:54:24 +00:00
James Bursa
2920bca14a
[project @ 2005-04-09 09:47:36 by bursa]
...
Move HTML contents almost fully over to talloc(), simplifying code. Improvements to title attributes, broken forms, cellpadding. Reorder functions in box_construct.c.
svn path=/import/netsurf/; revision=1608
2005-04-09 09:47:37 +00:00
James Bursa
640c6833cf
[project @ 2005-04-03 14:17:05 by bursa]
...
Use talloc_realloc() instead of realloc() for c->source_data, since that is now managed by talloc.
svn path=/import/netsurf/; revision=1593
2005-04-03 14:17:05 +00:00
Richard Wilson
511891d27c
[project @ 2005-03-23 18:14:38 by rjw]
...
Fix incorrect background position calculations. Modify CSS parser to pass all background-position testcases.
svn path=/import/netsurf/; revision=1574
2005-03-23 18:14:38 +00:00
Richard Wilson
b832e05f03
[project @ 2005-03-22 00:10:42 by rjw]
...
Experimental cellpadding support
svn path=/import/netsurf/; revision=1569
2005-03-22 00:10:42 +00:00
James Bursa
d249f20d1e
[project @ 2005-02-19 23:40:15 by bursa]
...
Add const qualifiers to css_len2px arguments.
svn path=/import/netsurf/; revision=1516
2005-02-19 23:40:15 +00:00
James Bursa
04f0525fbf
[project @ 2005-01-24 23:02:37 by bursa]
...
Reformat pages loaded from memory cache to window width.
svn path=/import/netsurf/; revision=1467
2005-01-24 23:02:37 +00:00
Richard Wilson
ee6d869916
[project @ 2005-01-17 23:06:33 by rjw]
...
Fix URI memory leakage
svn path=/import/netsurf/; revision=1458
2005-01-17 23:06:33 +00:00
Richard Wilson
71ad0bdf69
[project @ 2005-01-16 21:39:21 by rjw]
...
Read content, counter-reset and counter-increment properties.
svn path=/import/netsurf/; revision=1456
2005-01-16 21:39:21 +00:00
John Mark Bell
9905ab9818
[project @ 2005-01-16 00:48:47 by jmb]
...
Fixup my inability to remember how things should work
svn path=/import/netsurf/; revision=1453
2005-01-16 00:48:47 +00:00
John Mark Bell
01564e642d
[project @ 2005-01-16 00:08:47 by jmb]
...
Fixup missed css_style free
svn path=/import/netsurf/; revision=1451
2005-01-16 00:08:47 +00:00
John Mark Bell
1e592489b1
[project @ 2005-01-16 00:03:45 by jmb]
...
Create interface for duplication and destruction of css_style structs.
svn path=/import/netsurf/; revision=1450
2005-01-16 00:03:45 +00:00
Richard Wilson
1487697cb3
[project @ 2005-01-15 22:11:53 by rjw]
...
Background work for CSS counters (CSS 2.1/12.4)
svn path=/import/netsurf/; revision=1449
2005-01-15 22:11:53 +00:00
John Mark Bell
15e08b5252
[project @ 2005-01-11 19:39:49 by jmb]
...
Handle property: inherit; properly
svn path=/import/netsurf/; revision=1441
2005-01-11 19:39:49 +00:00
John Mark Bell
0890fd790d
[project @ 2005-01-08 01:42:08 by jmb]
...
Fix parsing of multiple occurrences of S
Fix parsing of blocks (missing ws after any)
svn path=/import/netsurf/; revision=1436
2005-01-08 01:42:08 +00:00
John Mark Bell
fbe6486e0b
[project @ 2005-01-05 20:22:57 by jmb]
...
Fix syntax error reporting
svn path=/import/netsurf/; revision=1435
2005-01-05 20:22:57 +00:00