summaryrefslogtreecommitdiffstats
path: root/win8/metro_driver/metro_driver.gyp
diff options
context:
space:
mode:
authorananta@chromium.org <ananta@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-01-31 19:16:42 +0000
committerananta@chromium.org <ananta@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-01-31 19:16:42 +0000
commitc8ca6e1d2950f75867cc82da0792a10a76d59d79 (patch)
tree510edb50d84f23d741bb22d8efeb818fb47ec59a /win8/metro_driver/metro_driver.gyp
parent294b8d9992ef598c164c116641e948ebd3ddad05 (diff)
downloadchromium_src-c8ca6e1d2950f75867cc82da0792a10a76d59d79.zip
chromium_src-c8ca6e1d2950f75867cc82da0792a10a76d59d79.tar.gz
chromium_src-c8ca6e1d2950f75867cc82da0792a10a76d59d79.tar.bz2
Add support for displaying the Windows 8 metro open/save file picker in Chrome ASH.
Added the following functions to the Aura namespace. 1. HandleOpenFile 2. HandleOpenMultipleFiles 3. HandleSaveFile These functions are invoked from the windows implementation of SelectFileDialogImpl::SelectFileImpl for AURA. Internally these functions forward off to the corresponding implementations in the singleton instance of the RemoteRootWindowHostWin class which is instantiated for Chrome ASH on Windows. These functions take in a callback object which is invoked when the file picker operations complete. The SelectFileDialogImpl::SelectFileImpl function uses the newly added ShellDialogsDelegate interface to determine if the owning native window is in Windows 8 metro. This interface is implemented by a global object ShellDialogsDelegateWin which lives in the chrome_browser_main_extra_parts_ash.cc file. It uses the IsNativeViewInAsh helper function to determine this. Added the following IPC's which are sent from the browser to the metro viewer process. 1. MetroViewerHostMsg_DisplayFileOpen 2. MetroViewerHostMsg_DisplayFileSaveAs The following IPC's are sent from the metro viewer to the browser process and inform the browser about the status of the file open/file save operations along with the file names. 1. MetroViewerHostMsg_FileOpenDone 2. MetroViewerHostMsg_MultiFileOpenDone 3. MetroViewerHostMsg_FileSaveAsDone The handlers for these IPCs live in the RemoteRootWindowHostWin class and invoke the callback objects which are passed in. In the metro driver the file_picker_ash.cc/.h files contain the code for displaying the metro style file pickers. These sources are copied from the file_picker.cc/.h files which perform this functionality for regular Chrome metro. BUG=170483 Review URL: https://codereview.chromium.org/12041089 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@179921 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'win8/metro_driver/metro_driver.gyp')
-rw-r--r--win8/metro_driver/metro_driver.gyp2
1 files changed, 2 insertions, 0 deletions
diff --git a/win8/metro_driver/metro_driver.gyp b/win8/metro_driver/metro_driver.gyp
index 0d0081b..f1f9892 100644
--- a/win8/metro_driver/metro_driver.gyp
+++ b/win8/metro_driver/metro_driver.gyp
@@ -77,6 +77,8 @@
'chrome_app_view_ash.h',
'direct3d_helper.cc',
'direct3d_helper.h',
+ 'file_picker_ash.h',
+ 'file_picker_ash.cc',
],
}, { # use_aura!=1
'sources': [