11320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci// Copyright 2014 The Chromium Authors. All rights reserved. 21320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci// Use of this source code is governed by a BSD-style license that can be 31320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci// found in the LICENSE file. 41320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci 51320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci#include "extensions/shell/browser/shell_app_delegate.h" 61320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci 71320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci#include "extensions/common/constants.h" 81320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci#include "extensions/shell/browser/media_capture_util.h" 91320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci 101320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tuccinamespace extensions { 111320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci 121320f92c476a1ad9d19dba2a48c72b75566198e9Primiano TucciShellAppDelegate::ShellAppDelegate() { 131320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci} 141320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci 151320f92c476a1ad9d19dba2a48c72b75566198e9Primiano TucciShellAppDelegate::~ShellAppDelegate() { 161320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci} 171320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci 181320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tuccivoid ShellAppDelegate::InitWebContents(content::WebContents* web_contents) { 191320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci} 201320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci 211320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tuccivoid ShellAppDelegate::ResizeWebContents(content::WebContents* web_contents, 221320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci const gfx::Size& size) { 231320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci NOTIMPLEMENTED(); 241320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci} 251320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci 261320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tuccicontent::WebContents* ShellAppDelegate::OpenURLFromTab( 271320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci content::BrowserContext* context, 281320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci content::WebContents* source, 291320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci const content::OpenURLParams& params) { 301320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci NOTIMPLEMENTED(); 311320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci return NULL; 321320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci} 331320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci 341320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tuccivoid ShellAppDelegate::AddNewContents(content::BrowserContext* context, 351320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci content::WebContents* new_contents, 361320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci WindowOpenDisposition disposition, 371320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci const gfx::Rect& initial_pos, 381320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci bool user_gesture, 391320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci bool* was_blocked) { 401320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci NOTIMPLEMENTED(); 411320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci} 421320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci 431320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tuccicontent::ColorChooser* ShellAppDelegate::ShowColorChooser( 441320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci content::WebContents* web_contents, 451320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci SkColor initial_color) { 461320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci NOTIMPLEMENTED(); 471320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci return NULL; 481320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci} 491320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci 501320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tuccivoid ShellAppDelegate::RunFileChooser( 511320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci content::WebContents* tab, 521320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci const content::FileChooserParams& params) { 531320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci NOTIMPLEMENTED(); 541320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci} 551320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci 561320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tuccivoid ShellAppDelegate::RequestMediaAccessPermission( 571320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci content::WebContents* web_contents, 581320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci const content::MediaStreamRequest& request, 591320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci const content::MediaResponseCallback& callback, 601320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci const extensions::Extension* extension) { 611320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci media_capture_util::GrantMediaStreamRequest( 621320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci web_contents, request, callback, extension); 631320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci} 641320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci 651320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tuccibool ShellAppDelegate::CheckMediaAccessPermission( 661320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci content::WebContents* web_contents, 671320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci const GURL& security_origin, 681320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci content::MediaStreamType type, 691320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci const Extension* extension) { 701320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci media_capture_util::VerifyMediaAccessPermission(type, extension); 711320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci return true; 721320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci} 731320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci 741320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucciint ShellAppDelegate::PreferredIconSize() { 751320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci return extension_misc::EXTENSION_ICON_SMALL; 761320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci} 771320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci 781320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tuccivoid ShellAppDelegate::SetWebContentsBlocked( 791320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci content::WebContents* web_contents, 801320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci bool blocked) { 811320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci NOTIMPLEMENTED(); 821320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci} 831320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci 841320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tuccibool ShellAppDelegate::IsWebContentsVisible( 851320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci content::WebContents* web_contents) { 861320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci return true; 871320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci} 881320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci 891320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tuccivoid ShellAppDelegate::SetTerminatingCallback(const base::Closure& callback) { 901320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci // TODO(jamescook): Should app_shell continue to close the app window 911320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci // manually or should it use a browser termination callback like Chrome? 921320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci NOTIMPLEMENTED(); 931320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci} 941320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci 951320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci} // namespace extensions 96