12a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// Copyright (c) 2013 The Chromium Authors. All rights reserved. 25821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be 35821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// found in the LICENSE file. 45821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 52a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#ifndef UI_SHELL_DIALOGS_SELECTED_FILE_INFO_H_ 62a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#define UI_SHELL_DIALOGS_SELECTED_FILE_INFO_H_ 75821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 85821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include <vector> 95821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 102a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#include "base/files/file_path.h" 117d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)#include "base/strings/string16.h" 122a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#include "ui/shell_dialogs/shell_dialogs_export.h" 135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)namespace ui { 155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Struct used for passing selected file info to WebKit. 172a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)struct SHELL_DIALOGS_EXPORT SelectedFileInfo { 185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) // Selected file's user friendly path as seen in the UI. 192a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) base::FilePath file_path; 205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) // The actual local path to the selected file. This can be a snapshot file 225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) // with a human unreadable name like /blah/.d41d8cd98f00b204e9800998ecf8427e. 235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) // |real_path| can differ from |file_path| for drive files (e.g. 245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) // /drive_cache/temporary/d41d8cd98f00b204e9800998ecf8427e vs. 255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) // /special/drive/foo.txt). 265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) // If not set, defaults to |file_path|. 272a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) base::FilePath local_path; 285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 295821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) // This field is optional. The display name contains only the base name 305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) // portion of a file name (ex. no path separators), and used for displaying 315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) // selected file names. If this field is empty, the base name portion of 325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) // |path| is used for displaying. 332a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) base::FilePath::StringType display_name; 345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 355821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) SelectedFileInfo(); 362a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) SelectedFileInfo(const base::FilePath& in_file_path, 372a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) const base::FilePath& in_local_path); 385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) ~SelectedFileInfo(); 395821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)}; 405821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 415821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)} // namespace ui 425821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 432a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#endif // UI_SHELL_DIALOGS_SELECTED_FILE_INFO_H_ 442a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 45