Print enhancement: add webContents.printerList And a print option to select printer

This commit is contained in:
renaesop 2017-02-06 17:18:04 +08:00
parent 093b844859
commit 023a3fd547
15 changed files with 290 additions and 27 deletions

View file

@ -82,7 +82,31 @@ void PrinterQuery::GetSettings(
is_print_dialog_box_shown_,
expected_page_count,
has_selection,
margin_type));
margin_type,
base::string16()));
}
void PrinterQuery::GetSettings(
GetSettingsAskParam ask_user_for_settings,
int expected_page_count,
bool has_selection,
MarginType margin_type,
const base::string16& device_name,
const base::Closure& callback) {
DCHECK(RunsTasksOnCurrentThread());
DCHECK(!is_print_dialog_box_shown_);
StartWorker(callback);
// Real work is done in PrintJobWorker::GetSettings().
is_print_dialog_box_shown_ = ask_user_for_settings == ASK_USER;
worker_->PostTask(FROM_HERE,
base::Bind(&PrintJobWorker::GetSettings,
base::Unretained(worker_.get()),
is_print_dialog_box_shown_,
expected_page_count,
has_selection,
margin_type,
device_name));
}
void PrinterQuery::SetSettings(std::unique_ptr<base::DictionaryValue> new_settings,