Giter VIP home page Giter VIP logo

Comments (13)

makew0rld avatar makew0rld commented on August 20, 2024

Hopefully a status code for a stream will be added.

Edit: This will not be happening.

from amfora.

makew0rld avatar makew0rld commented on August 20, 2024

The rendering functions should already work well with partial content, maybe only passing parts of content can be the default mode, updating the Page each time? The only state that would need to be passed each call would be whether it's in a preformatted mode or not, which could be added to Page or something.

from amfora.

makew0rld avatar makew0rld commented on August 20, 2024

Stream support will require the ability to load URLs and setpages even when another tab is selected. This means the tab number should be passed to funcs like handleURL and setPage, so they don't just use curTab. There will also have to be a way to stop the loading when the tab is closed.

Edit: The first part of this is completed.

from amfora.

makew0rld avatar makew0rld commented on August 20, 2024

As of 7fe78f4 there is now a configurable download timeout on pages. This would need to be disabled for streams.

from amfora.

makew0rld avatar makew0rld commented on August 20, 2024

There could be a render and page display pipeline that implements io.Writer, so network input can be written directly and displayed live.

from amfora.

makew0rld avatar makew0rld commented on August 20, 2024

Using the protocol gemini+stream:// has been proposed. It is no longer encouraged or "required", see here.

from amfora.

makew0rld avatar makew0rld commented on August 20, 2024

The default 2 MiB page limit can be upped or page limits can be removed entirely once this is implemented.

Edit: Maybe just upped instead of removed, so that infinite or gigantic pages don't take up too much memory

from amfora.

makew0rld avatar makew0rld commented on August 20, 2024

Once this feature is added the info bar (#142) code will have to be modified so that the total page lines and page percentage changes on the fly.

from amfora.

makew0rld avatar makew0rld commented on August 20, 2024

What is described in #182 is closely related to this.

from amfora.

makew0rld avatar makew0rld commented on August 20, 2024

There should be a line-based parser that implements io.ReadWriter. Each tab will have a parser and also be refactored to hold the network connection. Page can be changed so that Raw and Content are bytes.Buffer. To load a page, the tab will copy the incoming network bytes to Raw and to the parser, and then copy the parser output to Content and the TextView of the tab. When loading a new page, the parser will be scrapped and recreated, and the old network connection closed.

The parser will also have a links channel (buffered), which the tab can pull from to fill the Links slice of the Page. Page will probably need a mutex, in case the user is tabbing around the links while the page is loading.

from amfora.

makew0rld avatar makew0rld commented on August 20, 2024

This happening on the stream branch.

from amfora.

makew0rld avatar makew0rld commented on August 20, 2024

Look into #57 once this is done and see if it can be closed too.

from amfora.

makew0rld avatar makew0rld commented on August 20, 2024

Moving this to v1.10.0. It has been slowing down the release of v1.9.0 for much too long. There are more important updates that are already in master but are unreleased, or still need to be added. This would be great to have but is not really important from a user's point of view.

from amfora.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.