1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #ifndef CHROME_RENDERER_WEB_APPS_H_
6 #define CHROME_RENDERER_WEB_APPS_H_
11 #include "base/strings/string16.h"
12 #include "ui/gfx/size.h"
18 struct WebApplicationInfo
;
22 // Parses the icon's size attribute as defined in the HTML 5 spec. Returns true
23 // on success, false on errors. On success either all the sizes specified in
24 // the attribute are added to sizes, or is_any is set to true.
26 // You shouldn't have a need to invoke this directly, it's public for testing.
27 bool ParseIconSizes(const base::string16
& text
, std::vector
<gfx::Size
>* sizes
,
30 // Parses |web_app| information out of the document in frame. Returns true on
31 // success, or false and |error| on failure. Note that the document may contain
32 // no web application information, in which case |web_app| is unchanged and the
33 // function returns true.
35 // Documents can also contain a link to a application 'definition'. In this case
36 // web_app will have manifest_url set and nothing else. The caller must fetch
37 // this URL and pass the result to ParseWebAppFromDefinitionFile() for further
39 bool ParseWebAppFromWebDocument(blink::WebFrame
* frame
,
40 WebApplicationInfo
* web_app
,
41 base::string16
* error
);
43 } // namespace web_apps
45 #endif // CHROME_RENDERER_WEB_APPS_H_