1eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch// Copyright 2013 The Chromium Authors. All rights reserved.
2eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch// Use of this source code is governed by a BSD-style license that can be
3eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch// found in the LICENSE file.
4eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch
5eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch#ifndef CHROME_BROWSER_WEB_APPLICATIONS_WEB_APP_WIN_H_
6eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch#define CHROME_BROWSER_WEB_APPLICATIONS_WEB_APP_WIN_H_
7eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch
8eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch#include "base/files/file_path.h"
9a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch#include "chrome/browser/web_applications/web_app.h"
10eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch
11cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)class Profile;
12cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)
13c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdochnamespace content {
14c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdochclass WebContents;
15c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch}
16c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch
17cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)namespace extensions {
18cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)class Extension;
19cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)}
20cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)
21eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdochnamespace gfx {
22eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdochclass ImageFamily;
23eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch}
24eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch
25eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdochnamespace web_app {
26eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch
27eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch// Create a shortcut in the given web app data dir, returning the name of the
28eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch// created shortcut.
29cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)base::FilePath CreateShortcutInWebAppDir(const base::FilePath& web_app_path,
30cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)                                         const ShortcutInfo& shortcut_info);
31cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)
32cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)// Update the relaunch details for the given app's window, making the taskbar
33cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)// group's "Pin to the taskbar" button function correctly.
34cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)void UpdateRelaunchDetailsForApp(Profile* profile,
35cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)                                 const extensions::Extension* extension,
36cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)                                 HWND hwnd);
37eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch
38eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdochnamespace internals {
39eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch
40eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdochbool CheckAndSaveIcon(const base::FilePath& icon_file,
41eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch                      const gfx::ImageFamily& image);
42eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch
43effb81e5f8246d0db0270817048dc992db66e9fbBen Murdochbase::FilePath GetIconFilePath(const base::FilePath& web_app_path,
44effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch                               const base::string16& title);
45effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch
46eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch}  // namespace internals
47eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch
48eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch}  // namespace web_app
49eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch
50eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch#endif  // CHROME_BROWSER_WEB_APPLICATIONS_WEB_APP_WIN_H_
51