 7cc9e331d1
			
		
	
	7cc9e331d1
	
	
	
		
			
			- Fixed some unreadable colors in the dark theme - - Left side differences that stem from a rebase. - Shell command style boxes. - Extracted shell command boxes into a new component with tests - gr-shell-command. - Removed support for the label attribute of gr-copy-clipboard and its test, as it was only used for shell commands. - Changed some places that showed bare shell commands in a gr-copy-clipboard to use gr-shell-command instead. - Removed redundant references to gr-download-commands and gr-rest-api-interface (and a test that used it). Change-Id: Ia61a562ba780dd6b7388d848109c590faaa6d4ee
		
			
				
	
	
		
			85 lines
		
	
	
		
			2.1 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			85 lines
		
	
	
		
			2.1 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| /**
 | |
|  * @license
 | |
|  * Copyright (C) 2017 The Android Open Source Project
 | |
|  *
 | |
|  * Licensed under the Apache License, Version 2.0 (the "License");
 | |
|  * you may not use this file except in compliance with the License.
 | |
|  * You may obtain a copy of the License at
 | |
|  *
 | |
|  * http://www.apache.org/licenses/LICENSE-2.0
 | |
|  *
 | |
|  * Unless required by applicable law or agreed to in writing, software
 | |
|  * distributed under the License is distributed on an "AS IS" BASIS,
 | |
|  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | |
|  * See the License for the specific language governing permissions and
 | |
|  * limitations under the License.
 | |
|  */
 | |
| (function() {
 | |
|   'use strict';
 | |
| 
 | |
|   Polymer({
 | |
|     is: 'gr-download-commands',
 | |
|     properties: {
 | |
|       commands: Array,
 | |
|       _loggedIn: {
 | |
|         type: Boolean,
 | |
|         value: false,
 | |
|         observer: '_loggedInChanged',
 | |
|       },
 | |
|       schemes: Array,
 | |
|       selectedScheme: {
 | |
|         type: String,
 | |
|         notify: true,
 | |
|       },
 | |
|     },
 | |
| 
 | |
|     behaviors: [
 | |
|       Gerrit.RESTClientBehavior,
 | |
|     ],
 | |
| 
 | |
|     attached() {
 | |
|       this._getLoggedIn().then(loggedIn => {
 | |
|         this._loggedIn = loggedIn;
 | |
|       });
 | |
|     },
 | |
| 
 | |
|     focusOnCopy() {
 | |
|       this.$$('gr-shell-command').focusOnCopy();
 | |
|     },
 | |
| 
 | |
|     _getLoggedIn() {
 | |
|       return this.$.restAPI.getLoggedIn();
 | |
|     },
 | |
| 
 | |
|     _loggedInChanged(loggedIn) {
 | |
|       if (!loggedIn) { return; }
 | |
|       return this.$.restAPI.getPreferences().then(prefs => {
 | |
|         if (prefs.download_scheme) {
 | |
|           // Note (issue 5180): normalize the download scheme with lower-case.
 | |
|           this.selectedScheme = prefs.download_scheme.toLowerCase();
 | |
|         }
 | |
|       });
 | |
|     },
 | |
| 
 | |
|     _handleTabChange(e) {
 | |
|       const scheme = this.schemes[e.detail.value];
 | |
|       if (scheme && scheme !== this.selectedScheme) {
 | |
|         this.set('selectedScheme', scheme);
 | |
|         if (this._loggedIn) {
 | |
|           this.$.restAPI.savePreferences(
 | |
|               {download_scheme: this.selectedScheme});
 | |
|         }
 | |
|       }
 | |
|     },
 | |
| 
 | |
|     _computeSelected(schemes, selectedScheme) {
 | |
|       return (schemes.findIndex(scheme => scheme === selectedScheme) || 0)
 | |
|           + '';
 | |
|     },
 | |
| 
 | |
|     _computeShowTabs(schemes) {
 | |
|       return schemes.length > 1 ? '' : 'hidden';
 | |
|     },
 | |
|   });
 | |
| })();
 |