forked from mirrors/gecko-dev
		
	 b81a2922ac
			
		
	
	
		b81a2922ac
		
	
	
	
	
		
			
			This patch adds a createDefaultSettings() method to nsIPrinter to initialize a default print settings object specific to that printer. It implements the functionality for Linux and macOS but adds only stubs for Windows. Differential Revision: https://phabricator.services.mozilla.com/D87125
		
			
				
	
	
		
			33 lines
		
	
	
	
		
			1.3 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
			
		
		
	
	
			33 lines
		
	
	
	
		
			1.3 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
| /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
 | |
| /* This Source Code Form is subject to the terms of the Mozilla Public
 | |
|  * License, v. 2.0. If a copy of the MPL was not distributed with this
 | |
|  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
 | |
| #include "nsPrintSettingsServiceAndroid.h"
 | |
| 
 | |
| #include "nsPrintSettingsImpl.h"
 | |
| 
 | |
| class nsPrintSettingsAndroid : public nsPrintSettings {
 | |
|  public:
 | |
|   nsPrintSettingsAndroid() {
 | |
|     // The aim here is to set up the objects enough that silent printing works
 | |
|     SetOutputFormat(nsIPrintSettings::kOutputFormatPDF);
 | |
|     SetPrinterName(u"PDF printer"_ns);
 | |
|   }
 | |
| };
 | |
| 
 | |
| nsresult nsPrintSettingsServiceAndroid::_CreatePrintSettings(
 | |
|     nsIPrintSettings** _retval) {
 | |
|   nsPrintSettings* printSettings = new nsPrintSettingsAndroid();
 | |
|   NS_ENSURE_TRUE(printSettings, NS_ERROR_OUT_OF_MEMORY);
 | |
|   NS_ADDREF(*_retval = printSettings);
 | |
|   (void)InitPrintSettingsFromPrefs(*_retval, false,
 | |
|                                    nsIPrintSettings::kInitSaveAll);
 | |
|   return NS_OK;
 | |
| }
 | |
| 
 | |
| already_AddRefed<nsIPrintSettings> CreatePlatformPrintSettings(
 | |
|     const mozilla::PrintSettingsInitializer& aSettings) {
 | |
|   RefPtr<nsPrintSettings> settings = new nsPrintSettingsAndroid();
 | |
|   settings->InitWithInitializer(aSettings);
 | |
|   return settings.forget();
 | |
| }
 |