The hardest part of a browser is rendering. The rest of it is easy, relatively speaking
The big problem with browsers is state. Specifically, the web page has an internal state that the developer is tracking, and the browser UI has a state that the browser is tracking. How do you keep those two in sync?
The current model is based on the sort of hack that Netscape did way back when. There are probably other ways to do it.
Specifically, the problem is: how do you give something access to a representation of the visual state (the DOM) while hiding your implementation of it...in a secure manner?
And how do you allow that client (the website) write access to that DOM representation securely and safely?
The hardest part of a browser is rendering. The rest of it is easy, relatively speaking
The big problem with browsers is state. Specifically, the web page has an internal state that the developer is tracking, and the browser UI has a state that the browser is tracking. How do you keep those two in sync?
The current model is based on the sort of hack that Netscape did way back when. There are probably other ways to do it.
Specifically, the problem is: how do you give something access to a representation of the visual state (the DOM) while hiding your implementation of it...in a secure manner?
And how do you allow that client (the website) write access to that DOM representation securely and safely?