mirror of
				https://github.com/MatMoul/quickdial-webext.git
				synced 2025-11-04 07:04:23 +00:00 
			
		
		
		
	Merge branch 'develop'
This commit is contained in:
		
						commit
						a6771a03bd
					
				
							
								
								
									
										9
									
								
								TODO
									
									
									
									
									
								
							
							
						
						
									
										9
									
								
								TODO
									
									
									
									
									
								
							@ -1,4 +1,7 @@
 | 
				
			|||||||
Config Page
 | 
					Add node settings popup
 | 
				
			||||||
 | 
					Add custom image (thumbnails)
 | 
				
			||||||
 | 
					Create style for popup
 | 
				
			||||||
 | 
					Preserve ratio on capture in a new tab
 | 
				
			||||||
 | 
					Need a best solution to update folder and bookmark when it are updated from Firefox
 | 
				
			||||||
Improve screenshot result
 | 
					Improve screenshot result
 | 
				
			||||||
Add favicon support
 | 
					Add favicon support
 | 
				
			||||||
Need a solution to update folder and bookmark when it are updated from Firefox
 | 
					 | 
				
			||||||
@ -61,6 +61,26 @@
 | 
				
			|||||||
							<td><span>Margins :</span></td>
 | 
												<td><span>Margins :</span></td>
 | 
				
			||||||
							<td><input id="GridMargins" type="number"></td>
 | 
												<td><input id="GridMargins" type="number"></td>
 | 
				
			||||||
						</tr>
 | 
											</tr>
 | 
				
			||||||
 | 
											<tr>
 | 
				
			||||||
 | 
												<td><span>Back Button :</span></td>
 | 
				
			||||||
 | 
												<td><input id="GridBackNode" type="checkbox"></td>
 | 
				
			||||||
 | 
											</tr>
 | 
				
			||||||
 | 
										</table>
 | 
				
			||||||
 | 
										<table>
 | 
				
			||||||
 | 
											<tr>
 | 
				
			||||||
 | 
												<td>
 | 
				
			||||||
 | 
													<div>Back :</div>
 | 
				
			||||||
 | 
													<button id="GridBackImageReset">Reset</button>
 | 
				
			||||||
 | 
													<input id="GridBackImageFile" type="file" style="width:220px;">
 | 
				
			||||||
 | 
													<div id="GridBackPreview" style="width: 220px; height: 150px; border: 1px solid #000000"></div>
 | 
				
			||||||
 | 
												</td>
 | 
				
			||||||
 | 
												<td>
 | 
				
			||||||
 | 
													<div>Folder :</div>
 | 
				
			||||||
 | 
													<button id="GridFolderImageReset">Reset</button>
 | 
				
			||||||
 | 
													<input id="GridFolderImageFile" type="file" style="width:220px;">
 | 
				
			||||||
 | 
													<div id="GridFolderPreview" style="width: 220px; height: 150px; border: 1px solid #000000"></div>
 | 
				
			||||||
 | 
												</td>
 | 
				
			||||||
 | 
											</tr>
 | 
				
			||||||
					</table>
 | 
										</table>
 | 
				
			||||||
				</div>
 | 
									</div>
 | 
				
			||||||
				<div class="hidden">
 | 
									<div class="hidden">
 | 
				
			||||||
@ -76,12 +96,22 @@
 | 
				
			|||||||
							<td><input id="GridCellsMarginsHover" type="number" style="display: none;"></td>
 | 
												<td><input id="GridCellsMarginsHover" type="number" style="display: none;"></td>
 | 
				
			||||||
						</tr>
 | 
											</tr>
 | 
				
			||||||
						<tr>
 | 
											<tr>
 | 
				
			||||||
							<td><span>Border Radius:</span></td>
 | 
												<td><span>Border Radius :</span></td>
 | 
				
			||||||
							<td><input id="GridCellsBorderRadius" type="number"></td>
 | 
												<td><input id="GridCellsBorderRadius" type="number"></td>
 | 
				
			||||||
							<td><input id="GridCellsBorderRadiusHover" type="number"></td>
 | 
												<td><input id="GridCellsBorderRadiusHover" type="number"></td>
 | 
				
			||||||
						</tr>
 | 
											</tr>
 | 
				
			||||||
						<tr>
 | 
											<tr>
 | 
				
			||||||
							<td><span>Border Color:</span></td>
 | 
												<td><span>Background Transparent :</span></td>
 | 
				
			||||||
 | 
												<td><input id="GridCellsBackgroundTransparent" type="checkbox"></td>
 | 
				
			||||||
 | 
												<td><input id="GridCellsBackgroundTransparentHover" type="checkbox"></td>
 | 
				
			||||||
 | 
											</tr>
 | 
				
			||||||
 | 
											<tr>
 | 
				
			||||||
 | 
												<td><span>Background Color :</span></td>
 | 
				
			||||||
 | 
												<td><input id="GridCellsBackgroundColor" type="color"></td>
 | 
				
			||||||
 | 
												<td><input id="GridCellsBackgroundColorHover" type="color"></td>
 | 
				
			||||||
 | 
											</tr>
 | 
				
			||||||
 | 
											<tr>
 | 
				
			||||||
 | 
												<td><span>Border Color :</span></td>
 | 
				
			||||||
							<td><input id="GridCellsBorderColor" type="color"></td>
 | 
												<td><input id="GridCellsBorderColor" type="color"></td>
 | 
				
			||||||
							<td><input id="GridCellsBorderColorHover" type="color"></td>
 | 
												<td><input id="GridCellsBorderColorHover" type="color"></td>
 | 
				
			||||||
						</tr>
 | 
											</tr>
 | 
				
			||||||
@ -101,10 +131,20 @@
 | 
				
			|||||||
							<td></td>
 | 
												<td></td>
 | 
				
			||||||
						</tr>
 | 
											</tr>
 | 
				
			||||||
						<tr>
 | 
											<tr>
 | 
				
			||||||
							<td><span>Title Color:</span></td>
 | 
												<td><span>Title Text Color :</span></td>
 | 
				
			||||||
							<td><input id="GridCellsTitleColor" type="color"></td>
 | 
												<td><input id="GridCellsTitleColor" type="color"></td>
 | 
				
			||||||
							<td><input id="GridCellsTitleColorHover" type="color"></td>
 | 
												<td><input id="GridCellsTitleColorHover" type="color"></td>
 | 
				
			||||||
						</tr>
 | 
											</tr>
 | 
				
			||||||
 | 
											<tr>
 | 
				
			||||||
 | 
												<td><span>Title Background Transparent :</span></td>
 | 
				
			||||||
 | 
												<td><input id="GridCellsTitleBackgroundTransparent" type="checkbox"></td>
 | 
				
			||||||
 | 
												<td><input id="GridCellsTitleBackgroundTransparentHover" type="checkbox"></td>
 | 
				
			||||||
 | 
											</tr>
 | 
				
			||||||
 | 
											<tr>
 | 
				
			||||||
 | 
												<td><span>Title Background Color :</span></td>
 | 
				
			||||||
 | 
												<td><input id="GridCellsTitleBackgroundColor" type="color"></td>
 | 
				
			||||||
 | 
												<td><input id="GridCellsTitleBackgroundColorHover" type="color"></td>
 | 
				
			||||||
 | 
											</tr>
 | 
				
			||||||
					</table>
 | 
										</table>
 | 
				
			||||||
				</div>
 | 
									</div>
 | 
				
			||||||
			</div>
 | 
								</div>
 | 
				
			||||||
 | 
				
			|||||||
@ -13,17 +13,24 @@ core.init = function(){ // Init module
 | 
				
			|||||||
core.Settings = {}; // Settings helper object
 | 
					core.Settings = {}; // Settings helper object
 | 
				
			||||||
core.Settings.load = function(callback){ // Load settings
 | 
					core.Settings.load = function(callback){ // Load settings
 | 
				
			||||||
	browser.storage.local.get({
 | 
						browser.storage.local.get({
 | 
				
			||||||
 | 
							version: 2,
 | 
				
			||||||
		backgroundColor: '#3c4048',
 | 
							backgroundColor: '#3c4048',
 | 
				
			||||||
		backgroundImage: null,
 | 
							backgroundImage: null,
 | 
				
			||||||
		grid: {
 | 
							grid: {
 | 
				
			||||||
			margin: 10,
 | 
								margin: 10,
 | 
				
			||||||
			rows: 4,
 | 
								rows: 4,
 | 
				
			||||||
			columns: 5,
 | 
								columns: 5,
 | 
				
			||||||
 | 
								backNode: true,
 | 
				
			||||||
 | 
								backIcon: 'url(/img/back.png)',
 | 
				
			||||||
 | 
								folderIcon: 'url(/img/folder.png)',
 | 
				
			||||||
 | 
								loadingIcon: 'url(/img/throbber.gif)',
 | 
				
			||||||
			cells: {
 | 
								cells: {
 | 
				
			||||||
				margin: 4,
 | 
									margin: 4,
 | 
				
			||||||
				marginHover: 4,
 | 
									marginHover: 4,
 | 
				
			||||||
				ratioX: 4,
 | 
									ratioX: 4,
 | 
				
			||||||
				ratioY: 3,
 | 
									ratioY: 3,
 | 
				
			||||||
 | 
									backgroundColor: null,
 | 
				
			||||||
 | 
									backgroundColorHover: null,
 | 
				
			||||||
				borderColor: '#333333',
 | 
									borderColor: '#333333',
 | 
				
			||||||
				borderColorHover: '#a9a9a9',
 | 
									borderColorHover: '#a9a9a9',
 | 
				
			||||||
				borderRadius: 4,
 | 
									borderRadius: 4,
 | 
				
			||||||
@ -34,15 +41,28 @@ core.Settings.load = function(callback){ // Load settings
 | 
				
			|||||||
				titleFont: 'Arial, Verdana, Sans-serif',
 | 
									titleFont: 'Arial, Verdana, Sans-serif',
 | 
				
			||||||
				titleColor: '#ffffff',
 | 
									titleColor: '#ffffff',
 | 
				
			||||||
				titleColorHover: '#33ccff',
 | 
									titleColorHover: '#33ccff',
 | 
				
			||||||
				backPanel: true,
 | 
									titleBackgroundColor: null,
 | 
				
			||||||
				backIcon: 'img/back.png',
 | 
									titleBackgroundColorHover: null
 | 
				
			||||||
				folderIcon: 'img/folder.png',
 | 
					 | 
				
			||||||
				loadingIcon: 'img/throbber.gif'
 | 
					 | 
				
			||||||
			},
 | 
								},
 | 
				
			||||||
			root: 'Quick Dial',
 | 
								root: 'Quick Dial',
 | 
				
			||||||
			node: {}
 | 
								node: {}
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
	}).then(function(obj){
 | 
						}).then(function(obj){
 | 
				
			||||||
 | 
							if(obj.grid.cells.backIcon){ // Upgrade Data Version
 | 
				
			||||||
 | 
								obj.version = 2;
 | 
				
			||||||
 | 
								obj.grid.backNode = true;
 | 
				
			||||||
 | 
								obj.grid.backIcon = 'url(/img/back.png)';
 | 
				
			||||||
 | 
								obj.grid.folderIcon = 'url(/img/folder.png)';
 | 
				
			||||||
 | 
								obj.grid.loadingIcon = 'url(/img/throbber.gif)';
 | 
				
			||||||
 | 
								obj.grid.cells.backgroundColor = null;
 | 
				
			||||||
 | 
								obj.grid.cells.backgroundColorHover = null;
 | 
				
			||||||
 | 
								obj.grid.cells.titleBackgroundColor = null;
 | 
				
			||||||
 | 
								obj.grid.cells.titleBackgroundColorHover = null;
 | 
				
			||||||
 | 
								delete obj.grid.cells.backIcon;
 | 
				
			||||||
 | 
								delete obj.grid.cells.folderIcon;
 | 
				
			||||||
 | 
								delete obj.grid.cells.loadingIcon;
 | 
				
			||||||
 | 
								delete obj.grid.cells.backPanel;
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
		app.settings = obj;
 | 
							app.settings = obj;
 | 
				
			||||||
		if(callback) callback();
 | 
							if(callback) callback();
 | 
				
			||||||
	});
 | 
						});
 | 
				
			||||||
 | 
				
			|||||||
@ -98,11 +98,16 @@ dial.initStyles = function(){
 | 
				
			|||||||
	//dial.styles.grid.linkHover = dial.Style.sheet.cssRules[dial.Style.sheet.insertRule('.Grid td>a:hover { border-color: ' + app.settings.grid.cells.borderColorHover + '; border-radius: ' + app.settings.grid.cells.borderRadiusHover + 'px; }')].style;
 | 
						//dial.styles.grid.linkHover = dial.Style.sheet.cssRules[dial.Style.sheet.insertRule('.Grid td>a:hover { border-color: ' + app.settings.grid.cells.borderColorHover + '; border-radius: ' + app.settings.grid.cells.borderRadiusHover + 'px; }')].style;
 | 
				
			||||||
	dial.styles.grid.linkHover = dial.Style.sheet.cssRules[dial.Style.sheet.insertRule('.Grid td>a:hover { border-color: ' + app.settings.grid.cells.borderColorHover + '; margin: ' + app.settings.grid.cells.marginHover + 'px; border-radius: ' + app.settings.grid.cells.borderRadiusHover + 'px; }')].style;
 | 
						dial.styles.grid.linkHover = dial.Style.sheet.cssRules[dial.Style.sheet.insertRule('.Grid td>a:hover { border-color: ' + app.settings.grid.cells.borderColorHover + '; margin: ' + app.settings.grid.cells.marginHover + 'px; border-radius: ' + app.settings.grid.cells.borderRadiusHover + 'px; }')].style;
 | 
				
			||||||
	dial.styles.grid.linkPanel = dial.Style.sheet.cssRules[dial.Style.sheet.insertRule('.Grid td>a>div:first-child { background-repeat: no-repeat; }')].style;
 | 
						dial.styles.grid.linkPanel = dial.Style.sheet.cssRules[dial.Style.sheet.insertRule('.Grid td>a>div:first-child { background-repeat: no-repeat; }')].style;
 | 
				
			||||||
 | 
						if(app.settings.grid.cells.backgroundColor) dial.styles.grid.linkPanel.backgroundColor = app.settings.grid.cells.backgroundColor;
 | 
				
			||||||
 | 
						dial.styles.grid.linkPanelHover = dial.Style.sheet.cssRules[dial.Style.sheet.insertRule('.Grid td>a:hover>div:first-child { }')].style;
 | 
				
			||||||
 | 
						if(app.settings.grid.cells.backgroundColorHover) dial.styles.grid.linkPanelHover.backgroundColor = app.settings.grid.cells.backgroundColorHover;
 | 
				
			||||||
	dial.styles.grid.linkTitle = dial.Style.sheet.cssRules[dial.Style.sheet.insertRule('.Grid td>a>div:last-child { height: ' + app.settings.grid.cells.titleHeight + 'px; font-size: ' + app.settings.grid.cells.titleFontSize + 'pt; font-family: ' + app.settings.grid.cells.titleFont + 'pt; text-align: center; overflow: hidden; color: ' + app.settings.grid.cells.titleColor + '; border-top: 1px solid ' + app.settings.grid.cells.borderColor + '; }')].style;
 | 
						dial.styles.grid.linkTitle = dial.Style.sheet.cssRules[dial.Style.sheet.insertRule('.Grid td>a>div:last-child { height: ' + app.settings.grid.cells.titleHeight + 'px; font-size: ' + app.settings.grid.cells.titleFontSize + 'pt; font-family: ' + app.settings.grid.cells.titleFont + 'pt; text-align: center; overflow: hidden; color: ' + app.settings.grid.cells.titleColor + '; border-top: 1px solid ' + app.settings.grid.cells.borderColor + '; }')].style;
 | 
				
			||||||
 | 
						if(app.settings.grid.cells.titleBackgroundColor) dial.styles.grid.linkTitle.backgroundColor = app.settings.grid.cells.titleBackgroundColor;
 | 
				
			||||||
	dial.styles.grid.linkTitleHover = dial.Style.sheet.cssRules[dial.Style.sheet.insertRule('.Grid td>a:hover>div:last-child { color: ' + app.settings.grid.cells.titleColorHover + '; border-top-color: ' + app.settings.grid.cells.borderColorHover + ' }')].style;
 | 
						dial.styles.grid.linkTitleHover = dial.Style.sheet.cssRules[dial.Style.sheet.insertRule('.Grid td>a:hover>div:last-child { color: ' + app.settings.grid.cells.titleColorHover + '; border-top-color: ' + app.settings.grid.cells.borderColorHover + ' }')].style;
 | 
				
			||||||
 | 
						if(app.settings.grid.cells.titleBackgroundColorHover) dial.styles.grid.linkTitleHover.backgroundColor = app.settings.grid.cells.titleBackgroundColorHover;
 | 
				
			||||||
	dial.styles.grid.linkEmpty = dial.Style.sheet.cssRules[dial.Style.sheet.insertRule('.Grid td>a.Empty { display: none; }')].style;
 | 
						dial.styles.grid.linkEmpty = dial.Style.sheet.cssRules[dial.Style.sheet.insertRule('.Grid td>a.Empty { display: none; }')].style;
 | 
				
			||||||
	dial.styles.grid.linkBack = dial.Style.sheet.cssRules[dial.Style.sheet.insertRule('.Grid td>a.Back :first-child { background-image: url("' + app.settings.grid.cells.backIcon + '"); background-repeat: no-repeat; background-position: center center; }')].style;
 | 
						dial.styles.grid.linkBack = dial.Style.sheet.cssRules[dial.Style.sheet.insertRule('.Grid td>a.Back :first-child { background-image: ' + app.settings.grid.backIcon + '; background-repeat: no-repeat; background-position: center center; }')].style;
 | 
				
			||||||
	dial.styles.grid.linkFolder = dial.Style.sheet.cssRules[dial.Style.sheet.insertRule('.Grid td>a.Folder :first-child { background-image: url("' + app.settings.grid.cells.folderIcon + '"); background-repeat: no-repeat; background-size: 100% 100%; }')].style;
 | 
						dial.styles.grid.linkFolder = dial.Style.sheet.cssRules[dial.Style.sheet.insertRule('.Grid td>a.Folder :first-child { background-image: ' + app.settings.grid.folderIcon + '; background-repeat: no-repeat; background-size: 100% 100%; }')].style;
 | 
				
			||||||
	dial.styles.grid.linkBookmark = dial.Style.sheet.cssRules[dial.Style.sheet.insertRule('.Grid td>a.Bookmark :first-child { background-repeat: no-repeat; background-size: 100% 100%; }')].style;
 | 
						dial.styles.grid.linkBookmark = dial.Style.sheet.cssRules[dial.Style.sheet.insertRule('.Grid td>a.Bookmark :first-child { background-repeat: no-repeat; background-size: 100% 100%; }')].style;
 | 
				
			||||||
	dial.styles.grid.linkBookmarkLoading = dial.Style.sheet.cssRules[dial.Style.sheet.insertRule('.Grid td>a.BookmarkLoading :first-child { background-image: url("' + app.settings.grid.cells.loadingIcon + '"); background-repeat: no-repeat; background-position: center center; }')].style;
 | 
						dial.styles.grid.linkBookmarkLoading = dial.Style.sheet.cssRules[dial.Style.sheet.insertRule('.Grid td>a.BookmarkLoading :first-child { background-image: url("' + app.settings.grid.cells.loadingIcon + '"); background-repeat: no-repeat; background-position: center center; }')].style;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
@ -197,7 +202,7 @@ dial.initGrid = function(name, settings, container){
 | 
				
			|||||||
			
 | 
								
 | 
				
			||||||
			function dragstart_handler(ev) {
 | 
								function dragstart_handler(ev) {
 | 
				
			||||||
				var index = (dial.page - 1) * (app.settings.grid.rows * app.settings.grid.columns) + +(ev.target.parentElement.getAttribute('gridindex'));
 | 
									var index = (dial.page - 1) * (app.settings.grid.rows * app.settings.grid.columns) + +(ev.target.parentElement.getAttribute('gridindex'));
 | 
				
			||||||
				if(settings.cells.backPanel && dial.path) index -= dial.page;
 | 
									if(settings.backNode && dial.path) index -= dial.page;
 | 
				
			||||||
				console.log(index);
 | 
									console.log(index);
 | 
				
			||||||
				ev.dataTransfer.setData("text/plain", index);
 | 
									ev.dataTransfer.setData("text/plain", index);
 | 
				
			||||||
			 }
 | 
								 }
 | 
				
			||||||
@ -215,7 +220,7 @@ dial.initGrid = function(name, settings, container){
 | 
				
			|||||||
				} else{
 | 
									} else{
 | 
				
			||||||
					EndIndex =(dial.page - 1) * (app.settings.grid.rows * app.settings.grid.columns) + +(ev.target.getAttribute('gridindex'));
 | 
										EndIndex =(dial.page - 1) * (app.settings.grid.rows * app.settings.grid.columns) + +(ev.target.getAttribute('gridindex'));
 | 
				
			||||||
				}
 | 
									}
 | 
				
			||||||
				if(settings.cells.backPanel && dial.path) EndIndex -= dial.page;
 | 
									if(settings.backNode && dial.path) EndIndex -= dial.page;
 | 
				
			||||||
				app.setNodeIndex(dial.Node, StartIndex, EndIndex);
 | 
									app.setNodeIndex(dial.Node, StartIndex, EndIndex);
 | 
				
			||||||
			}
 | 
								}
 | 
				
			||||||
			link.draggable = true;
 | 
								link.draggable = true;
 | 
				
			||||||
@ -302,7 +307,7 @@ dial.populateGrid = function(grid, settings, node){
 | 
				
			|||||||
	var linkItem = 0;
 | 
						var linkItem = 0;
 | 
				
			||||||
	var allCells = settings.rows * settings.columns;
 | 
						var allCells = settings.rows * settings.columns;
 | 
				
			||||||
	var maxCells = allCells;
 | 
						var maxCells = allCells;
 | 
				
			||||||
	if(settings.cells.backPanel && dial.path){
 | 
						if(settings.backNode && dial.path){
 | 
				
			||||||
		populateBack(grid.getLink(linkItem));
 | 
							populateBack(grid.getLink(linkItem));
 | 
				
			||||||
		linkItem++;
 | 
							linkItem++;
 | 
				
			||||||
		maxCells -= 1;
 | 
							maxCells -= 1;
 | 
				
			||||||
 | 
				
			|||||||
@ -1,4 +1,6 @@
 | 
				
			|||||||
var BackgroundImage = null;
 | 
					var BackgroundImage = null;
 | 
				
			||||||
 | 
					var GridBackImage = null;
 | 
				
			||||||
 | 
					var GridFolderImage = null;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
window.onload = function(){
 | 
					window.onload = function(){
 | 
				
			||||||
	browser.runtime.getBackgroundPage().then(function(page){
 | 
						browser.runtime.getBackgroundPage().then(function(page){
 | 
				
			||||||
@ -12,8 +14,21 @@ window.onload = function(){
 | 
				
			|||||||
		GridRows.value = app.settings.grid.rows;
 | 
							GridRows.value = app.settings.grid.rows;
 | 
				
			||||||
		GridMargins.value = app.settings.grid.margin;
 | 
							GridMargins.value = app.settings.grid.margin;
 | 
				
			||||||
		GridColumns.value = app.settings.grid.columns;
 | 
							GridColumns.value = app.settings.grid.columns;
 | 
				
			||||||
 | 
							GridBackNode.checked = app.settings.grid.backNode;
 | 
				
			||||||
 | 
							GridBackImage = app.settings.grid.backIcon;
 | 
				
			||||||
 | 
							GridBackPreview.style.backgroundImage = app.settings.grid.backIcon;
 | 
				
			||||||
 | 
							GridBackPreview.style.backgroundRepeat = 'no-repeat';
 | 
				
			||||||
 | 
							GridBackPreview.style.backgroundPosition = '50% 50%';
 | 
				
			||||||
 | 
							GridFolderImage = app.settings.grid.folderIcon;
 | 
				
			||||||
 | 
							GridFolderPreview.style.backgroundImage = app.settings.grid.folderIcon;
 | 
				
			||||||
 | 
							GridFolderPreview.style.backgroundRepeat = 'no-repeat';
 | 
				
			||||||
 | 
							GridFolderPreview.style.backgroundSize = '100% 100%';
 | 
				
			||||||
		GridCellsMargins.value = app.settings.grid.cells.margin;
 | 
							GridCellsMargins.value = app.settings.grid.cells.margin;
 | 
				
			||||||
		GridCellsMarginsHover.value = app.settings.grid.cells.marginHover;
 | 
							GridCellsMarginsHover.value = app.settings.grid.cells.marginHover;
 | 
				
			||||||
 | 
							GridCellsBackgroundTransparent.checked = (app.settings.grid.cells.backgroundColor == null);
 | 
				
			||||||
 | 
							GridCellsBackgroundColor.value = app.settings.grid.cells.backgroundColor;
 | 
				
			||||||
 | 
							GridCellsBackgroundTransparentHover.checked = (app.settings.grid.cells.backgroundColorHover == null);
 | 
				
			||||||
 | 
							GridCellsBackgroundColorHover.value = app.settings.grid.cells.backgroundColorHover;
 | 
				
			||||||
		GridCellsBorderRadius.value = app.settings.grid.cells.borderRadius;
 | 
							GridCellsBorderRadius.value = app.settings.grid.cells.borderRadius;
 | 
				
			||||||
		GridCellsBorderRadiusHover.value = app.settings.grid.cells.borderRadiusHover;
 | 
							GridCellsBorderRadiusHover.value = app.settings.grid.cells.borderRadiusHover;
 | 
				
			||||||
		GridCellsBorderColor.value = app.settings.grid.cells.borderColor;
 | 
							GridCellsBorderColor.value = app.settings.grid.cells.borderColor;
 | 
				
			||||||
@ -23,6 +38,10 @@ window.onload = function(){
 | 
				
			|||||||
		GridCellsTitleFontSize.value = app.settings.grid.cells.titleFontSize;
 | 
							GridCellsTitleFontSize.value = app.settings.grid.cells.titleFontSize;
 | 
				
			||||||
		GridCellsTitleColor.value = app.settings.grid.cells.titleColor;
 | 
							GridCellsTitleColor.value = app.settings.grid.cells.titleColor;
 | 
				
			||||||
		GridCellsTitleColorHover.value = app.settings.grid.cells.titleColorHover;
 | 
							GridCellsTitleColorHover.value = app.settings.grid.cells.titleColorHover;
 | 
				
			||||||
 | 
							GridCellsTitleBackgroundTransparent.checked = (app.settings.grid.cells.titleBackgroundColor == null);
 | 
				
			||||||
 | 
							GridCellsTitleBackgroundColor.value = app.settings.grid.cells.titleBackgroundColor;
 | 
				
			||||||
 | 
							GridCellsTitleBackgroundColorHover.value = app.settings.grid.cells.titleBackgroundColorHover;
 | 
				
			||||||
 | 
							GridCellsTitleBackgroundTransparentHover.checked = (app.settings.grid.cells.titleBackgroundColorHover == null);
 | 
				
			||||||
	});
 | 
						});
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	BtnOk.onclick = function(){
 | 
						BtnOk.onclick = function(){
 | 
				
			||||||
@ -35,9 +54,16 @@ window.onload = function(){
 | 
				
			|||||||
		app.settings.grid.rows = +(GridRows.value);
 | 
							app.settings.grid.rows = +(GridRows.value);
 | 
				
			||||||
		app.settings.grid.margin = +(GridMargins.value);
 | 
							app.settings.grid.margin = +(GridMargins.value);
 | 
				
			||||||
		app.settings.grid.columns = +(GridColumns.value);
 | 
							app.settings.grid.columns = +(GridColumns.value);
 | 
				
			||||||
 | 
							app.settings.grid.backNode = GridBackNode.checked;
 | 
				
			||||||
 | 
							app.settings.grid.backIcon = GridBackImage;
 | 
				
			||||||
 | 
							app.settings.grid.folderIcon = GridFolderImage;
 | 
				
			||||||
		app.settings.grid.cells.margin = +(GridCellsMargins.value);
 | 
							app.settings.grid.cells.margin = +(GridCellsMargins.value);
 | 
				
			||||||
		//app.settings.grid.cells.marginHover = +(GridCellsMarginsHover.value);
 | 
							//app.settings.grid.cells.marginHover = +(GridCellsMarginsHover.value);
 | 
				
			||||||
		app.settings.grid.cells.marginHover = +(GridCellsMargins.value);
 | 
							app.settings.grid.cells.marginHover = +(GridCellsMargins.value);
 | 
				
			||||||
 | 
							if(GridCellsBackgroundTransparent.checked == true) app.settings.grid.cells.backgroundColor = null;
 | 
				
			||||||
 | 
							else app.settings.grid.cells.backgroundColor = GridCellsBackgroundColor.value;
 | 
				
			||||||
 | 
							if(GridCellsBackgroundTransparentHover.checked == true) app.settings.grid.cells.backgroundColorHover = null;
 | 
				
			||||||
 | 
							else app.settings.grid.cells.backgroundColorHover = GridCellsBackgroundColorHover.value;
 | 
				
			||||||
		app.settings.grid.cells.borderRadius = +(GridCellsBorderRadius.value);
 | 
							app.settings.grid.cells.borderRadius = +(GridCellsBorderRadius.value);
 | 
				
			||||||
		app.settings.grid.cells.borderRadiusHover = +(GridCellsBorderRadiusHover.value);
 | 
							app.settings.grid.cells.borderRadiusHover = +(GridCellsBorderRadiusHover.value);
 | 
				
			||||||
		app.settings.grid.cells.borderColor = GridCellsBorderColor.value;
 | 
							app.settings.grid.cells.borderColor = GridCellsBorderColor.value;
 | 
				
			||||||
@ -47,6 +73,10 @@ window.onload = function(){
 | 
				
			|||||||
		app.settings.grid.cells.titleFontSize = GridCellsTitleFontSize.value;
 | 
							app.settings.grid.cells.titleFontSize = GridCellsTitleFontSize.value;
 | 
				
			||||||
		app.settings.grid.cells.titleColor = GridCellsTitleColor.value;
 | 
							app.settings.grid.cells.titleColor = GridCellsTitleColor.value;
 | 
				
			||||||
		app.settings.grid.cells.titleColorHover = GridCellsTitleColorHover.value;
 | 
							app.settings.grid.cells.titleColorHover = GridCellsTitleColorHover.value;
 | 
				
			||||||
 | 
							if(GridCellsTitleBackgroundTransparent.checked == true) app.settings.grid.cells.titleBackgroundColor = null;
 | 
				
			||||||
 | 
							else app.settings.grid.cells.titleBackgroundColor = GridCellsTitleBackgroundColor.value;
 | 
				
			||||||
 | 
							if(GridCellsTitleBackgroundTransparentHover.checked == true) app.settings.grid.cells.titleBackgroundColorHover = null;
 | 
				
			||||||
 | 
							else app.settings.grid.cells.titleBackgroundColorHover = GridCellsTitleBackgroundColorHover.value;
 | 
				
			||||||
		app.saveSettings();
 | 
							app.saveSettings();
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	BtnCancel.onclick = function(){
 | 
						BtnCancel.onclick = function(){
 | 
				
			||||||
@ -89,4 +119,38 @@ window.onload = function(){
 | 
				
			|||||||
		fileReader.readAsDataURL(BackgroundImageFile.files[0]);
 | 
							fileReader.readAsDataURL(BackgroundImageFile.files[0]);
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						GridBackImageReset.onclick = function(){
 | 
				
			||||||
 | 
							GridBackImage = 'url(/img/back.png)';
 | 
				
			||||||
 | 
							GridBackPreview.style.backgroundImage = GridBackImage;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						GridBackImageFile.onclick = function(){
 | 
				
			||||||
 | 
							this.value = null;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						GridBackImageFile.onchange = function(){
 | 
				
			||||||
 | 
							var fileReader = new FileReader();
 | 
				
			||||||
 | 
							fileReader.onload = function(e){
 | 
				
			||||||
 | 
								GridBackImage = 'url(' + e.target.result + ')';
 | 
				
			||||||
 | 
								GridBackImageFile.value = null;
 | 
				
			||||||
 | 
								GridBackPreview.style.backgroundImage = GridBackImage;
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
							fileReader.readAsDataURL(GridBackImageFile.files[0]);
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						GridFolderImageReset.onclick = function(){
 | 
				
			||||||
 | 
							GridFolderImage = 'url(/img/folder.png)';
 | 
				
			||||||
 | 
							GridFolderPreview.style.backgroundImage = GridFolderImage;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						GridFolderImageFile.onclick = function(){
 | 
				
			||||||
 | 
							this.value = null;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						GridFolderImageFile.onchange = function(){
 | 
				
			||||||
 | 
							var fileReader = new FileReader();
 | 
				
			||||||
 | 
							fileReader.onload = function(e){
 | 
				
			||||||
 | 
								GridFolderImage = 'url(' + e.target.result + ')';
 | 
				
			||||||
 | 
								GridFolderImageFile.value = null;
 | 
				
			||||||
 | 
								GridFolderPreview.style.backgroundImage = GridFolderImage;
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
							fileReader.readAsDataURL(GridFolderImageFile.files[0]);
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
@ -2,7 +2,7 @@
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
  "manifest_version": 2,
 | 
					  "manifest_version": 2,
 | 
				
			||||||
  "name": "Quick Dial",
 | 
					  "name": "Quick Dial",
 | 
				
			||||||
  "version": "0.0.2",
 | 
					  "version": "0.0.3",
 | 
				
			||||||
  "author": "MatMoul",
 | 
					  "author": "MatMoul",
 | 
				
			||||||
  "homepage_url": "https://github.com/MatMoul/quickdial-webext",
 | 
					  "homepage_url": "https://github.com/MatMoul/quickdial-webext",
 | 
				
			||||||
  "developer": {
 | 
					  "developer": {
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user