Now that we have a Second Life™ viewer with CEF, what can we do with it? For now I am not sure what limitations we will have from the viewer. But, we can look at CEF and see what is possible in general. Here I’ll try to give you the basic information about CEF and links to some tutorials.
CEF is an open source project built on the Google Chromium project, which is another open source project to build a better web browser (Chromium) and the project is the parent of the Google Chrome browser. If you research these projects you will see a number of other projects tied together with these.
… Unlike the Chromium project itself, which focuses mainly on Google Chrome application development, CEF focuses on facilitating embedded browser use cases in third-party applications. CEF insulates the user from the underlying Chromium and Blink code complexity by offering production-quality stable APIs, release branches tracking specific Chromium releases, and binary distributions. Most features in CEF have default implementations that provide rich functionality while requiring little or no integration work from the user. As of this article’s publication there are over 100 million installed instances of CEF around the world embedded in products from a wide range of companies and industries. (reference)
Or, in another place:
The Chromium Embedded Framework (CEF) is a simple framework for embedding Chromium-based browsers in other applications.
The Webkit allowed us to have a browser inside the viewer. CEF does the same. That is handy, but not the complete story. For instance the viewer’s search panel opens the SL Search Page (https://search.secondlife.com/) that lives on the web. It is a custom ‘browser’ or app wityh an HTML interface. Profiles are similar.
The idea is instead of having to build a web page and a viewer panel that do the same thing, we have a way to open the web page as a panel in the viewer. The only thing we have to build is a simple panel that calls the right URL. To make another panel we just change the panel title and the URL it points to. Much easier and faster.
Many of the combat meters in SL use external servers. I think the idea of adding HTML dialogs to the viewer was to enable design of meters that use a web page for the controls. With CEF we have API’s that the viewer can use to talk to web based apps. I’m fuzzy on how much communication was possible between the older HTML dialogs and remote Webkit connected servers. CEF should improve that connection.
One of the basic ideas of CEF is to make user interfaces easier to design. One can essentially use HTML5 to build a user interface. This is much easier and more people know how to use HTML5 than they do the viewer’s XML based process.
CEF allows people to use.Net, Java, Delphi, and Python. That means we can likely use those tools to build things in the viewer.
The logic that is being developed for building apps in phones, tablets and laptops is taking over all of computing. Adding the same tech into the viewer opens up large possibilities.
You are going to find these are far more technical than most SL users want to deal with. Remember the viewer is just out as a project status viewer. This means the tech info on how to use the new feature is not yet ready. The Lindens will be adding information to the wiki as they finalize things.
The current tutorials show how to use CEF and build it into an application. My understanding is the Lab is building it into the viewer. Until they tell us how they have set that up, I doubt there is much we can do. But, Drax and Loki’s video suggests we can do more than I suspect.
Once the Linden provide the basic information for using the CEF API’s they have built inside the viewer we should be able to add CEF apps without having to do the heavy C programming part.