3 ms·
Nothing to do with DRM, the old model let extensions modify every part of the browser that could be touched via JavaScript (and since the browser UI itself is m
by amaranth 9y ago
Nothing to do with DRM, the old model let extensions modify every part of the browser that could be touched via JavaScript (and since the browser UI itself is made with XUL and JS that's quite a lot of it) and even allowed using C++ to access all of the compiled guts as well. That is impossible to support sanely (every change is a breaking change to something) and is a security nightmare as well (users have no idea what an extension can do unless they read the code, if it's even available). The new model is sandboxed JavaScript that gains all potentially unsafe functionality via somewhat fine-grained permissions which means you have a good idea what an extension is capable of and know it can't do anything unexpected like grabbing random files on your disk. The downside to this model is someone actually has to think about what an API should look like and what the security implications are and then do the work to implement it. Before if someone made an API great but if not you could just do it yourself.
- brudgers 9y agoXUL could have been replaced without implementing Chrome's restrictions on the user. They are orthogonal.
- pcwalton 9y agoThey aren't restrictions on users. They're restrictions on add-ons. And the Firefox extension model does not implement Chrome's restrictions. It has APIs that Chrome does not support: https://developer.mozilla.org/en-US/Add-ons/WebExtensions/Browser_support_for_JavaScript_APIs https://developer.mozilla.org/en-US/Add-ons/WebExtensions/Br...
- brudgers 9y agoWeb extensions express the architectural decision to remove power from the user. The extra API's are better for the user in the sense that a sharper knife is better for the user when their hands are cut off.