Re: Codethink sponsored work on NetSurf

2017-05-02 Thread Vincent Sanders
On Tue, May 02, 2017 at 09:16:25AM +0100, Michael Drake wrote:
> 
> Over the past few weeks I've been able to spend time
> contributing to open-source projects at work.
> 
> Codethink [1] values open-source software, and so I
> was approved to work on NetSurf and related components
> while I was between projects.  I'd like to thank
> Codethink for this opportunity, which I very much
> value and appreciate.

I would like to publicly thank Codethink for allowing you this time
and acknowledge that it represents several thousand pounds worth of
developer time which has benefited NetSurf and by extension your
fellow developers.



> 
> 
> Cheers,
> 
> Michael
> 
> 
> 

-- 
Regards Vincent
http://www.kyllikki.org/



Re: Codethink sponsored work on NetSurf

2017-05-02 Thread Brian
Hi

In article <8f376c96-35c5-d12d-74d3-67a316253...@codethink.co.uk>,
   Michael Drake  wrote:

> Over the past few weeks I've been able to spend time
> contributing to open-source projects at work.

> Codethink [1] values open-source software, and so I
> was approved to work on NetSurf and related components
> while I was between projects.  I'd like to thank
> Codethink for this opportunity, which I very much
> value and appreciate.

> What follows is a summary of the development I've been
> able to accomplish during this time.

> [1] http://www.codethink.co.uk/

[big snip]


Personally, I'll never become a coder like until hell freezes over, but I
found this missive really heart warming to read. Just great. Well done,
one and all.

> Cheers,

> Michael

Cheers

Brian




Re: Codethink sponsored work on NetSurf

2017-05-02 Thread lists
Not quite sure what all of it means but it all sounds very good.

Thanks Michael

-- 
Stuart Winsor

Tools With A Mission
sending tools across the world
http://www.twam.co.uk/



Re: Codethink sponsored work on NetSurf

2017-05-02 Thread Tim Hill
In article <8f376c96-35c5-d12d-74d3-67a316253...@codethink.co.uk>,
   Michael Drake  wrote:

> Over the past few weeks I've been able to spend time
> contributing to open-source projects at work.

> Codethink [1] values open-source software, and so I
> was approved to work on NetSurf and related components
> while I was between projects.  I'd like to thank
> Codethink for this opportunity, which I very much
> value and appreciate.

> What follows is a summary of the development I've been
> able to accomplish during this time.

> [1] http://www.codethink.co.uk/


[Snip masses of changes]

Great job! 

Sometimes I have no choice but to write pages where some CSS/JS defeats
NetSurf and while I try to make them degrade gracefully, this isn't
always true where I have lifted code from others but this page has now
sprung into legibility thanks to your hard work.

http://www.youngtheatre.co.uk/archive/yt/timelines/

Text and objects are no longer rendered outside the DIVs. Hurrah!

Must buy that man several pints. 

T

-- 

Tim Hill

timil.com : tjrh.eu : butterwick.eu : blue-bike.uk : youngtheatre.co.uk



Codethink sponsored work on NetSurf

2017-05-02 Thread Michael Drake


Over the past few weeks I've been able to spend time
contributing to open-source projects at work.

Codethink [1] values open-source software, and so I
was approved to work on NetSurf and related components
while I was between projects.  I'd like to thank
Codethink for this opportunity, which I very much
value and appreciate.

What follows is a summary of the development I've been
able to accomplish during this time.

[1] http://www.codethink.co.uk/


LibCSS (CSS parsing and selection library)
==

* Added parsing and selection support for the CSS3
  box-sizing property.


NetSurf
===

Core: HTML layout engine


* Added support for the CSS3 box-sizing property.  This
  helps us assign element widths and heights as the web
  page author intended.
* Extended :after pseudo element handling to cover the
  table display type.  This improves layout of pages that
  use a variant of the clearfix CSS trick for clearing
  floats.
* Fixed the handling of the CSS min-width and max-width
  properties to correctly affect the auto-width left and
  right margins.
* Added support for width attribute on HR element.
* Fixed use of uninitialised value in CSS presentational
  hint handling, that had potential to reduce the
  likelihood of computed style sharing.
* Improved layout tree dump, to make debugging layout
  problems easier.

Core: Content handling
--

* Improved logging, making it easier to track HTML contents
  through a session, for debug purposes.
* Removed bogus assertion in the HTML object fetch handler,
  which would sometimes crash the browser.
* Fixed bug in content state machine, which made aborted
  fetches cause their contents to get stuck in the cache.
  This would happen on JavaScript location assignments.

Core: URL handling
--

* Improved file: URL handling.
* Removed redundant code.
* Improved hexadecimal handling.
* Improved test suite.

Core: Hotlist (bookmarks/favourites)


* Added support for saving the hotlist automatically after
  entries are added or removed.  This helps prevent loss
  of hotlist changes if NetSurf is unable to save the file
  on exit.
* Added support for read-only hotlist mode, which can be
  selected by frontend code.  In this mode, the hotlist
  file may be read, and the hotlist updated, but changes
  are never saved to disc.

GTK frontend


* Fixed bug where different pango layout contexts were used
  for measuring and painting text, which in some situations
  caused either lines with overlapping text, or large spaces
  between bits of text on a line.
* Slight optimisation to the text line break handling code.
* Rewrote bitmap rendering plotter.  The new implementation
  is many times faster for tiled rendering, such as for
  repeating background images, and simplifies the handling
  of scaled plots.

RISC OS frontend


* Improved handling of external hotlist managers, by setting
  the core hotlist to read-only mode, when configured to use
  an external manager.


NetSurf's JavaScript engine (Duktape)
=

NetSurf uses the excellent Duktape JavaScript engine.
URL: http://www.duktape.org/

* Updated NetSurf and nsgenbind (our JavaScript binding
  generator) from Duktape 1.6 to Duktape 2.0.  We had
  been stuck on the 1.X series due to API changes
  in Duktape 2, and lack of time to make the transition.
  Duktape 2.0 provides greater performance, amongst many
  other improvements.
* Added support for HTML style comments (ES6 spec) to
  Duktape and upstreamed it to the Duktape author, Sami
  Vaarala.  This feature had been requested by our users.
* Updated NetSurf from Duktape 2.0 to the recently
  released Duktape 2.1, which gives further performance
  gains, adds the HTML stlye comment handling, and other
  improvements.
* On the advice of the Duktape author, enabled Duktape's
  fastint build option, for faster integer arithmetic.


LibNSGIF (GIF decoding library)
===

* Complete rewrite of LZW decompression.  The new
  implementation is both 30% faster and cleaner code.
  It also now handles LZW codes that span three sub-blocks.
  (Although these are unlikely to actually appear in the
  real world.)


LibSVGTiny (SVG decoding library)
=

* Build system improvements to fix warnings about use of
  gperf-generated code.



Cheers,

Michael