Is WebRTC included in Chromium-Content module? - google-chrome

According to
http://www.chromium.org/developers/content-module
The "content" module is located in src\content, and is the core code
needed to render a page using a multi-process sandboxed browser. It
includes all the web platform features (i.e. HTML5) and GPU
acceleration. It does not include Chrome features, i.e.
extensions/autofill/spelling etc. The goal is that any embedder should
be able to build a browser by starting with content, and then pick and
choose Chrome features.
content vs chrome As discussed above, content should only have the
core code needed to render a page. Chrome features use APIs that are
provided by content to filter IPCs and get notified of events that
they require. How to Add New Features (without bloating
RenderView/RenderViewHost/WebContents) describes how to do this.
As an example, here's a (non-exhaustive) list of features that are
Chrome only, and so are not in content. This means that content code
shouldn't have to know anything about them, only providing generic
APIs that they can be built upon.
Extensions
NaCl
ChromeFrame
SpellCheck
Autofill
Sync
Prerendering
Safe Browsing
Translate
Is WebRTC included in Chromium-Content module?
I am not sure, especially, finding jingle directory is outside of content.
Thanks

The webrtc project is included in the <chromium>/src/third_party/webrtc directory.
If you are asking if the components are used in the content_shell target, yes they are. You have access to all the same features with regards to webrtc that you would have in Chromium proper.

Related

Acessing the Render Tree

Is there any way to access the render tree (or the DOM and CSSOM trees) of a page -- programmatically -- before being processed by the rendering engine, in Chrome?
And, ideally, could this be achieved through a Chrome extension, (with any combination of Javascript and/or C++ interfacing with the browser itself)?
Also, this may not be particularly the same but you can see the sequence of the page construction via Chrome dev tools. This is possible by recording the page in the timeline which provides a detailed list of the steps taken to render the page. It is a very extensive list and useful if you would like to take a deeper look. Hope this helps :)

Google Chrome Inspect Element in .NET

Is it possible for one to hook onto / access and edit a webpage's contents (like in the inspect element feature) live in chrome using .NET? Can this be done discreetly in the background as well. I don't have any malicious intentions, just creating a simple hack for a game online that relies on its HTML sourcing.
You can use a headless browser like Selenium to do this, they provide an easy .NET library that allows you to interact with a browser programmatically. Also, points for being aware that the question sounds suspicious.

iFrames in html5 more specifically in Epub3.0

This is more a theoretical question than a coding question. I am trying to create a epub, with some interactive components. Now to separate the code, I put each interactive component in a separate html file. Typical interactive components will be a questionnaire.
What will be the best way to link this to my epub, two options I am considering are:
Iframe - the interactive component will display as a part of the book, and users will seamlessly complete the activity.
External link - an Icon will be displayed in the book, which will serve as a link to a new page, this page will contain the interactive component.
I would like to keep the epub according to epub 3.0 standard.
Any suggestions or alternative solutions I can research?
Either approach is compatible with the standard since external links are allowed and scripting within an iFrame is also allowed (known as scripting in a container).
The broader question is what are you trying to achieve? If the user is sent to an external page in a browser then the browser will have to post the results back to some server since the browser can't write the results back to disk or the EPUB.
It also depends on whether the EPUB Reading System is browser-based itself or an app. It is an app then in theory the app might know how to log info locally (though that would require jumping through some hoops that could have security implications.
So what is the goal here?

What are Chrome apps vs plugins vs extensions and how to develop them

I am trying to understand about Chrome (browser) development. I am very new to this and trying to figure out where to start in order to develop for Chrome Browser.
Just have a couple of questions:
What is the difference between Chrome Browser apps vs. plugins vs. extensions (not sure, if this question make sense. But, hope you got what I am asking for)
What kind of applications can I develop for Chrome Browser
What technologies do I need to learn in order to develop for Chrome Browser.
To answer your first question this explains the differences between apps and extensions (I think there's no better way to explain their nature):
https://developers.google.com/chrome/web-store/articles/apps_vs_extensions
What do you mean with "what kind of apps"?
You can develop both hosted and packaged apps if is that what you intended, give a look at this:
https://developers.google.com/chrome/apps/docs/index
Anyway the easiest way to start would be by building an extension, how-tos and
good documentation makes it good to start with:
http://developer.chrome.com/extensions/getstarted.html
Just to add to the above answer which was missing difference between Plugin and Extension is:
Plugin is a third-party library that is plugged-in to the browser and allows for being embedded on a webpage. It affects only the web page that is using the plugin.
Extensions change the browser UI, add menus or change overall look of the browser and can process each page that gets loaded.
So to sum it up - plugins add functionality and extra features to a particular webpage while extensions add functionality and features to the whole browser and change the behavior of the browser.
Just to add on new information since people may continue to hit this question: Chrome has basically deprecated plugins as of March 2017 (Chrome 57). If you go to chrome://plugins now, you won't see anything (you used to see a list of installed plugins with enable-disable links like for extensions).
It seems the reasoning is that the only plugins they actually wanted to allow you to enable/disable are Flash and PDF Viewer, both of which were moved to the Settings menus (if they weren't already there, not sure). The rest are considered to be integral parts of the browser. https://www.ghacks.net/2017/01/29/google-removes-plugin-controls-from-chrome/
Makes things a bit simpler to think about now.

What is the effect on SEO with a Meteor application?

Looking at the rendered HTML source code for the todos list example, there is zero code in the body tag. How does this affect SEO?
EDIT: Meteor now supports serving static HTML to spiders.
From: http://docs.meteor.com/#spiderable
Can Meteor serve static HTML? Can Meteor sites be indexed by Google?
Yes. Add the "spiderable" smart package to include support for emitting static HTML to search engines, complete with valid links. The spiderable package implements Google's AJAX Crawling Specification. See the spiderable documentation for details.
This version of spiderable is specifically for search engines. A future version of Meteor will also send HTML to web browsers on inital page load. The Meteor templating system was designed specifically to support this use case.
Old and now wrong answer:
From: http://meteor.com/faq/can-meteor-serve-static-html
Can Meteor serve static HTML? Does Meteor work with JavaScript disabled on the client? Can Meteor sites be indexed by Google?
Meteor has been carefully designed to support this important use case, but it's not in the current Meteor builds. It will be part of our upcoming Routing release, which will make it easy to build Meteor sites that are aware of the current URL.
Briefly, the way server-side rendering works is that the Meteor app is started on the server and allowed to render the page. Then the session state is serialized (using the same migration technology behind Hot Code Push) and the app is frozen and pushed down to the browser, where it can optionally be restarted if the browser supports JavaScript. Since Meteor templating is based on HTML strings, not DOM manipulation, it's not necessary to run a DOM emulation package on the server.
since spiders have no js execution that would mean they would only get any info in the head about the page which wouldn't really be good, however it looks like looking at their site that you can still have static content as well as streaming in other content which would be fine for SEO if your static content was talking about key phrases, had links to other site etc that are relevant to your desired keywords