- 18 Dec, 1997 1 commit
-
-
Andrew Hodgkinson authored
Not all resources are up to date in this check-in, and documentation both within source and stuff in 'Docs' is out of date or missing - I was very pushed for time on this one... Hopefully will do another 'tidy up' check-in before close on Friday; until then, beware of anything other than the Ursula (Desktop browser) build. Anyway... Export As Draw done. As part of this, FONT SIZE and SUP / SUB adjustment of font size is done in fm_token_font_info rather than fm_find_token_font. Bullets and switches are plotted as indirected sprite items, rather than indirected text + sprite items - this relied on being in a redraw loop to pick the sprites up from the local pool (failed during printing). URI files now have a LF line ending rather than CR... '*' recognised as an empty field when loading via. RAM transfer now (only worked for loading from disc before). Gave placeholder bounding boxes 4 OS units more minimum extra gap vertically and reduced horizontal addition to this value * 1.5, rather than * 2 (see reformat_get_placeholder_size). Background image tiling starts at ymax - h + 4, rather than ymax, so there isn't the bottom line of pixels from the top tile always present at the top of the window. The '+4' is for caution's sake. Can now save a frame's HTML source, that of its parent or its ancestor, and the same for the URI pointing to those documents - see Menus.h for the relevant component IDs that should lead to the SaveFile dialogue. Have hopefully fixed timeout = 0 values (i.e. 'forever') on things like LinkTo; before, image fetches could override the state (so you'd only ever see brief flickers of a given URL as the pointer went over a link). Save File dialogue will remember the state of option or radio buttons for a given parent component origin and restore that state when the dialogue is next opened from the same place (stops turning on saving as a URL file also turning on 'save background images' for Draw file export, etc.). Use of a META tag to reload the *same* page now sets the 'reloading' flag in the browser so that it doesn't go through a proxy - otherwise pages which are meant to update periodically through client pull don't work, as they keep coming out of the cache. Can now handle images specifying just a width or height in the HTML (other dimension is scaled accordingly, but note that the placeholder size must still be 'dumb' until the image data comes in). An image will now override an image history size entry for the same entry with a different size.
-
- 12 Dec, 1997 1 commit
-
-
Andrew Hodgkinson authored
There are a few known significant problems with this code but it's being checked in so the Choices can be worked on. Note that Res files etc. are not up to date across all builds. Progress is as follows... Bug report prompted me to do this - now ignore <p> tags straight after <li> tags, so '<ul><li><p>Some text' works as the author (or automatic generator, more commonly) intended. A <p> tag before a table will be acted upon now (it was ignored before). Something like <li><p><table...> will give a line break and paragraph space after the <li> despite the changes mentioned above, as in other browsers. Both browsers differ from Navigator, where the table appears alongside the <li> tag. Multiple BR tags work as in MSIE / Navigator (they don't collapse to zero height anymore). For the above, line height (and so, <br><br> or <p> spacing) is now calculated inside reformat_text_line_height, and is used with either a token to get the text height at a given size (e.g. for general line spacing or multiple BR tags) or NULL for normal size text (e.g. for P spacing, though this value is in practice later scaled by 7/8ths in reformat_check_height). Note this behaviour is exhibited by MSIE 4; v3 gave two BRs the same spacing as one P (i.e. not font size dependent). Save dialogues can have an option button or couple of radios to switch between various formats (e.g. URI or URL, sprite or original format). See 'Docs.Notes' for more. The back-end to this is now implemented (i.e. at the moment, save as URI or URL, save as original image format). Note that when saving background images, a leafname based on the original fetch URL is now offered rather than a generic 'Background'. Internal URL scheme changed to be all lower case, so relativisation through URL_Fetcher still makes sense... :-/ Holding down 'shift' when clicking on stop reverses the interpretation of the Controls file 'StopWebServe' entry. Fixed row / column count for exporting tables as text; fixed a few bits and pieces of internal URL scheme stuff which got broken when HTMLLib started using URL_Fetcher's relativisation.
-
- 02 Dec, 1997 1 commit
-
-
Andrew Hodgkinson authored
Message_PlugIn_Busy. Plug-in code more robust when given invalid browser instance handles by the plug-in. Line spacing is now calculated on the basis of the normal style base serif font, with all other fonts being forced into that line height. This does mean that an unusually tall (say) sans serif font may get clipped. It appears to be the only way to get around wildly different baseline depths returned from the font metrics - you can't work out line spacing based on each different font style; the line spacing will vary. Table heighting (as opposed to widthing...) improved considerably; rowspan can no longer cause very tall cells in odd places. Having trouble getting rid of the single pixel breaks between vertically adjacent cells, though I've not tried too hard. Widthing, though, seems fairly badly broken at present... :-/ Set/clear of page_is_text flag made more robust (it looked as though there was the potential for this to get stuck in a set state, though I've never see the front-end behave in a manner which indicates this is the case). The reformatter will now decrease leading if this flag is set (plain text pages look daft with a line spacing that is OK for 'rich' text pages). No reformatting is done if the page width changes by dragging on the resize icon, though toggle size / full screen will still reformat even if the contents are only text (browser needs to sort out various width flags at this point). Cut down on excessive redrawing when reformatting due to a change in window dimensions is not done. If display_width hasn't changed, then no redraw is needed. If this causes redraw problems, then whatever is changing display_width needs investigating. It shouldn't be kludged (basically) by forcing a redraw instead of a reformat. TT/PRE/etc. text can now have a non-100% aspect ratio. 80-90% looks best (ArcWeb, for example, uses 86%). New option 'TTAspect' in the Choices files. Debug builds link to a non-debug Unicode library now; stops stderr being dumped to the bottom left of the screen if you've not redirected it in the Run file. RISC OS 3.1 seems to need more initial WimpSlot than later OS versions. The 64 deep nested table set gives a 'No stack for trap handler' error (which it really means in this case!) without 800K, even though 3.71 is happy with just 640K. So, the !Run file checks if Boot$OSVersion is exactly 300, 310 or 311, and sets the WimpSlot accordingly. !Run[D] files now require latest fetcher module versions (URL 0.21, File 0.31, HTTP 0.58).
-
- 27 Nov, 1997 1 commit
-
-
Andrew Hodgkinson authored
Significant reduction in number of times reformatter is called during a table widthing session results in a dramatic speed increase for nested tables (e.g. 64 deep with a paragraph of text in the deepest table takes about two seconds to load with near-instantaneous subsequent reformats, as opposed to taking optimistically 28 days for a 32 deep table!). This code relies on a very big stack of assumptions... Save as plain text implemented. Choices, Messages and Res files brought up to date where necessary. Version number taken to 1.28, 04-Dec-97 (so I don't forget later, basically...).
-