Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(189)

Unified Diff: docs/mojo_in_chromium.md

Issue 1483943004: Fix code blocks in mojo_in_chromium.md. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: docs/mojo_in_chromium.md
diff --git a/docs/mojo_in_chromium.md b/docs/mojo_in_chromium.md
index b9919e22414936149e81fb477ef67bf7ee6843aa..0823e699e92f1f1b7117c58ac81b3b263a9d87a1 100644
--- a/docs/mojo_in_chromium.md
+++ b/docs/mojo_in_chromium.md
@@ -154,7 +154,7 @@ to any Mojo service.
For illustrative purposes only, we can create a message pipe and bind an
`InterfacePtr` to one end as follows:
-```
+```cpp
mojo::MessagePipe pipe;
mojo::InterfacePtr<frob::Frobinator> frobinator;
frobinator.Bind(
@@ -184,7 +184,7 @@ see later, a first-class concept in Mojom interface definitions.
As with `InterfacePtr<T>`, we can manually bind an `InterfaceRequest<T>` to a
pipe endpoint:
-```
+```cpp
mojo::MessagePipe pipe;
mojo::InterfacePtr<frob::Frobinator> frobinator;
@@ -208,7 +208,7 @@ Defined in
`mojo::GetProxy<T>` is the function you will most commonly use to create a new
message pipe. Its signature is as follows:
-```
+```cpp
template <typename T>
mojo::InterfaceRequest<T> GetProxy(mojo::InterfacePtr<T>* ptr);
```
@@ -218,7 +218,7 @@ This function creates a new message pipe, binds one end to the given
which it then returns. Equivalent to the sample code just above is the following
snippet:
-```
+```cpp
mojo::InterfacePtr<frob::Frobinator> frobinator;
mojo::InterfaceRequest<frob::Frobinator> frobinator_request =
mojo::GetProxy(&frobinator);
@@ -237,7 +237,7 @@ taken from a passed `InterfaceRequest<T>`.
A common usage pattern looks something like this:
-```
+```cpp
#include "components/frob/public/interfaces/frobinator.mojom.h"
#include "third_party/mojo/src/mojo/public/cpp/bindings/binding.h"
#include "third_party/mojo/src/mojo/public/cpp/bindings/interface_request.h"
@@ -258,7 +258,7 @@ class FrobinatorImpl : public frob::Frobinator {
And then we could write some code to test this:
-```
+```cpp
// Fun fact: The bindings generator emits a type alias like this for every
// interface type. frob::FrobinatorPtr is an InterfacePtr<frob::Frobinator>.
frob::FrobinatorPtr frobinator;
@@ -425,7 +425,8 @@ First create a new `//components/hello` directory. Inside this directory we're
going to add the following files:
**components/hello/main.cc**
-```
+
+```cpp
#include "base/logging.h"
#include "third_party/mojo/src/mojo/public/c/system/main.h"
@@ -436,6 +437,7 @@ MojoResult MojoMain(MojoHandle shell_handle) {
```
**components/hello/BUILD.gn**
+
```
import("//mojo/public/mojo_application.gni")
@@ -484,7 +486,8 @@ least one service to connecting applications.
Let's update `main.cc` with the following contents:
**components/hello/main.cc**
-```
+
+```cpp
#include "components/hello/hello_app.h"
#include "mojo/application/public/cpp/application_runner.h"
#include "third_party/mojo/src/mojo/public/c/system/main.h"
@@ -501,6 +504,7 @@ want -- a `mojo::ApplicationRunner` constructed over a
the shell. We'll add some new files to the app as well:
**components/hello/public/interfaces/greeter.mojom**
+
```
module hello;
interface Greeter {
@@ -512,6 +516,7 @@ Note the new arrow syntax on the `Greet` method. This indicates that the caller
expects a response from the service.
**components/hello/public/interfaces/BUILD.gn**
+
```
import("//third_party/mojo/src/mojo/public/tools/bindings/mojom.gni")
@@ -523,7 +528,8 @@ mojom("interfaces") {
```
**components/hello/hello_app.h**
-```
+
+```cpp
#ifndef COMPONENTS_HELLO_HELLO_APP_H_
#define COMPONENTS_HELLO_HELLO_APP_H_
@@ -559,7 +565,8 @@ class HelloApp : public mojo::ApplicationDelegate,
**components/hello/hello_app.cc**
-```
+
+```cpp
#include "base/macros.h"
#include "components/hello/hello_app.h"
#include "mojo/application/public/cpp/application_connection.h"
@@ -616,6 +623,7 @@ And finally we need to update our app's `BUILD.gn` to add some new sources and
dependencies:
**components/hello/BUILD.gn**
+
```
import("//mojo/public/mojo_application.gni")
@@ -664,7 +672,8 @@ which can connect to one or more applications-under-test.
First let's introduce some test code:
**components/hello/hello_apptest.cc**
-```
+
+```cpp
#include "base/bind.h"
#include "base/callback.h"
#include "base/logging.h"
@@ -780,7 +789,7 @@ for additional clarity.
We could have instead written this code as:
-```
+```cpp
mojo::URLRequestPtr app_url = mojo::URLRequest::New();
app_url->url = "mojo::hello";
@@ -835,15 +844,19 @@ Let's modify `ChromeContentBrowserClient::RegisterInProcessMojoApplications`
(in `//chrome/browser/chrome_content_browser_client.cc`) by adding the following
code:
- apps->insert(std::make_pair(GURL("mojo:hello"),
- base::Bind(&HelloApp::CreateApp)));
+```cpp
+apps->insert(std::make_pair(GURL("mojo:hello"),
+ base::Bind(&HelloApp::CreateApp)));
+```
you'll also want to add the following convenience method to your `HelloApp`
definition in `//components/hello/hello_app.h`:
- static scoped_ptr<mojo::ApplicationDelegate> HelloApp::CreateApp() {
- return scoped_ptr<mojo::ApplicationDelegate>(new HelloApp);
- }
+```cpp
+static scoped_ptr<mojo::ApplicationDelegate> HelloApp::CreateApp() {
+ return scoped_ptr<mojo::ApplicationDelegate>(new HelloApp);
+}
+```
This introduces a dependency from `//chrome/browser` on to
`//components/hello:lib`, which you can add to the `"browser"` target's deps in
@@ -862,7 +875,7 @@ shell proxy, but the vast majority of Chromium code doesn't yet belong to a Mojo
application. So how do we use an app's services from arbitrary browser code? We
use `content::MojoAppConnection`, like this:
-```
+```cpp
#include "base/bind.h"
#include "base/logging.h"
#include "components/hello/public/interfaces/greeter.mojom.h"
@@ -930,7 +943,7 @@ We can also connect to Mojo apps from a `RenderFrame`. This is made possible by
`RenderFrame`'s `GetServiceRegistry()` interface. The `ServiceRegistry` can be
used to acquire a shell proxy and in turn connect to an app like so:
-```
+```cpp
void GreetWorld(content::RenderFrame* frame) {
mojo::ShellPtr shell;
frame->GetServiceRegistry()->ConnectToRemoteService(
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698