From 3bb7fd1804d7335d5d35ab2629242698b11d0ed2 Mon Sep 17 00:00:00 2001 From: Patrick Nelson Date: Fri, 17 Feb 2017 21:05:54 -0800 Subject: [PATCH] Windows (#14): Migrated to Windows friendly keyboard shortcuts, corrected systray transparency (on Win it can be dark) and added ability to center window on when loading. --- app/Icon-Template.png | Bin 6027 -> 18730 bytes app/Icon-Template@2x.png | Bin 18478 -> 19253 bytes app/settings.js | 43 ++++++++++++++++++++++++++++++--------- app/style.css | 2 +- index.js | 15 +++++++++----- 5 files changed, 44 insertions(+), 16 deletions(-) diff --git a/app/Icon-Template.png b/app/Icon-Template.png index 260a91ab7581cb8339e445669e1b79b460c6ff2c..ebd7444d065d4d0cfe299910ebd90b45324c1463 100644 GIT binary patch literal 18730 zcmeI43p7+~`@lC!a;a4AmnM{4#$3#pi*XB~h}@}9&CQrFqnU9Ta_MwaDkYR|x}Z`j z6-79Rqe2d<6P+lEQ|`LBMc;Odv#a@^Z>{gY{_DTi?8VG}-sgRuXTQJq+0XlKYi;|S z*4xNPDoX+YAY*51B;2*8 zB_;|4-QS}pFZDWF#Vsm7abAp-h`I9SN0oEU4~f7|ld`SEWA=#@hh^LAixukvF*fh}uWD5Ag(Gr$&O;E^!jTx~AkZi;XbH+K;MB4jtiM9&V1 z#^4ZfmGjPKiN>Vl%}4bT z9SiSE0DfKxzbgV;L}4-nzUth#x;Crz*)a=|zKGv^7|Gb5PRKs>?liF5 z;7G+PG{g26xzMVl^^DeS7Y!fWY*~Hr)(RbTZ@t*grTMFTvJuHcdZhBwRpn9nNUL+} zK2YTt^aT9wGu1M2CqD0U-o8xY7tzBz=JcD-(U;gYXG>+B6b%4G_$@0ITlgj)c&jZh zRqqubTNARfvbL#238q8XjU9?;wg%zHuBo}bvK0s$ogeeb!C%KYW+xhOxX7$tEoC05 zV17@|(cod~lOQl#&c>jT7AhZ06!nY6RZHfQN) Noy=$kU$pcg-LNNMB~UxSNAMl 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 delta 3390 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 U2>TArg#Z8m07*qoM6N<$f^8CRPyhe` diff --git a/app/Icon-Template@2x.png b/app/Icon-Template@2x.png index 9c33b78feae3f498ab64e649ad451243babc9231..df0c58e51f1cb003630f88369368a23f516c6df1 100644 GIT binary patch delta 1317 zcmZ2CfpP0J#trYen5^GS{>U{^$E0gN=_1GLPpb6JkWQ8hU*yy? z$wS4CYwZK4CAu0*BQ=}8=f!a7aXH0uiRC!HXx%Lk^VQK@Z&UWtZZTJ#(!g6&ubWLs z2w2H=?}4(p)KnkSpSxbTT$(Y{XG{GLG2`cR{#Vwd@B7@#_;&-dJfl2=Z3BOS)+Ukq z58@x#KNx=yE;#qUh2ev40WZhg*HIfY>w6wYJy0zOZhd^IbaBBIJC)Zjlx3!`TXAS5 z_j`uptjV5}K3%mimg>#gl-wFE{4eQw0|#4kXzJ_FKes$N-qmj{;r;E8^@GffPQ}H> za{ccA@3As@Oj@E=$5j)5NBAgX4O_|ds4ZKzT&TZzaiKNC^2?pK-(CxP$z-R`tH9th z{W4$s;hvtJ7kmpgZWNqZ6ReUb`07ba27EB-`Mc&pvCjebpv+98F59tc?5~zG44<{cG2*eR*YX zu9;pPdFS4}O@s85_GcrHH#=QRp%U1%)+XtJ5@9J%u*cZ{EB};%7~qkH0^6 z^T7qF)kzE~4|KN*oJ}(}H#aXoUs_t~F{$P7!vn9sUb=q$_>(6pxw*NiZ<9AlO!R0u zd)BwFug^nm@{*vHOwaEx^D@;c<0~jEY`mFsEN}bc5-ZMDC!iZce>>STym|kA`rj@; zIqSDp*49Vgy<4Yo^wg=Yg8H2?v!WS3RGXfAQ?|RnLgxFu?c29^`=}K^ugT8#j?kIr zRkL4mYW9>o6BCmQSFV)2uT`3uP+0i!U1eS#U*t6Hi+?!{!hBiT*w~JI_)riz^Zt8r zCyv63iWQ~$8ga>P58NMk<+J|!{aaE-Mo0Vh&6^J&JZR|c<^A-tMs=0;(@$LW2d-Cb zl9!SadRY>6Vw29Xon4J3ct141<_Ss_>FA7edK0V7M z`ane@pNDF5VytFw=vk}z=O=qD1sZgD%JZU~MUR9ZI6o~~Wf$6bJ?m+)g^ZF2m+h0N zf4lC?4d%@~puIM3#it#0OAEqUr5!AV3xRCwB~m&N~+PCwAiFIZoa_fa%b+`qz8uN-ZOK~ zH#6sa=iC_XvI;l^><9XREx;P-ioj=J3>X0(0yBRsk!%NU0&_skam;B=S2K>=fFYn7 z!Lff-WuvW;T~9RO*gqy@(@Ay%1>Y{BI9oKlFUYo4w)vdbfHx5VOj>jW`7qx3Siqtu zKt2M1$H0O`Kkki*xCg*lpf3Q}7oCEu6oDTWeJ_v=3c88`@loJ(gcG<7jE2mq)Pu4` z0ET~nJ^H^W68QjJ0&W2>fO%jokkT;8J?VQbb6S9Q;C@^Tm+>iA0DlDnq5i46TOD!* zlfYYts~V7R211CW8#of-3N`@;9Oq^d;&ziHfD;1YBICeUU`m0wE@b|`xC)C+b^<+) z00#A20WLVq?*o_)Ii~kOIb_ZPaL#8uri_31XIVELQ*^glP*#DY=lPE^<(H0o6c`3R z8P@jz$ADeH24KC)coL{29F8gJd+rdZ8IjIw0WryxhnO}8WzqB!Rl9V6^Mi73yaF6p z%Rhc==l=KaL@ssd7nj&Y#8aK`hT1(t=SZCpKE6v-$c-lOQWl;fHr`L3^D z=oW}6ACN5Yz@Z#>2GM93>RAQbRuNLroIAkF5IciG0kIs&Ie@q#o;RkJvc#m%$(M6e z>L1V5_nGwHEctJ3O1%}z)`S*;R}EaW<#|KT87S$H>zIwmo;d?mTO|ctRJClhM$F4b zs+n)ZG;j?lMQ~gKuDk3y76C}RKF{|8J7l~=x)ShF>GxEh=Vce8{|5j~yc;H2!Gz%e O0000' - if (typeof preference[key] === 'boolean') { + if (typeof defaultPreference[key] === 'boolean') { html += '' + } else if (key == 'window-position') { + let positionOptions = { + 'topLeft': 'Top Left', + 'topRight': 'Top Right', + 'bottomLeft': 'Bottom Left', + 'bottomRight': 'Bottom Right', + 'topCenter': 'Top Center', + 'bottomCenter': 'Bottom Center', + 'center': 'Center' + }; + html += '' + html += '' } else { - html += preferenceNames[key] + html += prefTitle html += '' - html += '' + html += '' } html += '' }) diff --git a/app/style.css b/app/style.css index 4f7ed34..f38d410 100644 --- a/app/style.css +++ b/app/style.css @@ -112,7 +112,7 @@ button { margin-bottom: 8px; } -.preference-panel input { +.preference-panel input, .preference-panel select { padding: 10px 13px; font-size: 13px; border-radius: 3px; diff --git a/index.js b/index.js index ec4ed9f..9e4552e 100644 --- a/index.js +++ b/index.js @@ -31,8 +31,13 @@ ipcMain.on('update-preference', function (evt, pref, initialization) { openAsHidden: true }) } + + mb.setOption('windowPosition', pref['window-position']) }) +var isWin = /^win/.test(process.platform) +var superHotKey = isWin ? 'Control+Shift' : 'Command' + var template = [ { label: 'Mojibar', @@ -74,17 +79,17 @@ var template = [ }, { label: 'Preference', - accelerator: 'Command+,', + accelerator: superHotKey + '+,', click: function () { mb.window.webContents.send('open-preference') } }, { label: 'Quit App', - accelerator: 'Command+Q', - selector: 'terminate:' - }, + accelerator: superHotKey + '+Q', + click: function () { app.quit() } + }, { label: 'Toggle DevTools', - accelerator: 'Alt+Command+I', + accelerator: (isWin ? 'Control+Shift' : 'Alt+Command') + '+I', click: function () { mb.window.toggleDevTools() } } ]