• Andrew Hodgkinson's avatar
    Now working on source merged with Kevin Bracey's internationalisation support.... · f61afadd
    Andrew Hodgkinson authored
    Now working on source merged with Kevin Bracey's internationalisation support. UNIFONT is undefined in the Make File for now. All Res and
    
    Choices files updated appropriately.
    
    Having sorted out the old Choices and Messages to form Choices, Controls
    and Messages, this build has had the same cleaning up done internally.
    This includes greater consistency in naming schemes and the removal of
    the inconsitent choices items - e.g. Choices file entries saying 'delay
    images' and 'plain backgrounds' where internally all the flags say 'show
    images' and 'show backgrounds'. ChoiceDefs.h and CtrlDefs.h added to
    clarify the meaning of some fields, though usage of these is not 100%
    in the source (there are cases where parameters are passed through to
    functions as ints, and those functions still check these against hard
    coded values rather than the #define stuff).
    
    Fetcher status return bits (connected, sent request, etc.) now reflected
    in status bar. Progress during fetchs to files are reported by %, where
    the size of the object is known. Exceeding 100% drops back to a byte
    counter, in case the estimated size was wrong. The progress counter
    may be updated after specific delays, rather than 'as often as possible',
    to reduce flicker (as requested by D.Brown some time ago).
    
    I've done a small rewrite of the fetch prioritisation scheme in FetchPage.c;
    how well this performs in general use across different processor speeds
    remains to be tested, but certainly it has some advantages. For each small
    fetch window before the rewrite, a 4cs tight loop was entered - this gave a
    noticable and substantial drain to the Desktop performance if more than one
    was opened. Now, several can be up at once with little hit. The actual file
    fetch is on half the priority it was before, with all others taken back
    just a bit - e.g. from 20cs per poll to 15cs per poll for flat out
    reformatting. You don't seem to lose much time on the format in practice,
    and the Desktop feels quite a bit lighter at the same time. There's the
    potential for smoother frameset loading in this scheme, too.
    
    When Shift+Clicking on a link meant you still fetched inside the main
    browser window, several fetches could occur in a frameset - one per frame.
    However, now that you can only do this by clicking on a link that leads to
    non-displayable data - or by turning off the small fetch windows by
    setting UseSmall to 'no' in Choices - a bug where fetchpage_preprocessed
    would stop such fetches as new ones were started was revealed.
    The API to frames_abort_fetching has now been extended to include a
    'stop file spooling too' flag, allowing a fix to be made by having
    fetchpage_preprocess's calls not set this (and it doesn't check the
    savelink flag is unset before proceeding, since frames_abort_fetching
    does that implicitly now).
    
    Had left the RAM transfer buffer at 16 bytes (from testing) accidentally...
    Oops. Upped it to 4K. In addition, when loading data by RAM transfer,
    the browser didn't notice if a RAMFetch bounced during the transfer. It
    would be treated as a 'first' RAMFetch bounce, basically, and try to go to
    file transfer - oops. Fixed.
    f61afadd
CtrlDefs 1.46 KB