diff --git a/app/css/tl.css b/app/css/tl.css
index 8b6934b9..5a12900b 100644
--- a/app/css/tl.css
+++ b/app/css/tl.css
@@ -275,6 +275,7 @@ grid-area: toot;
.toot-img {
object-fit: cover;
width: 100%;
+ margin-right:1px;
}
.toot img:not(.emoji-img) {
max-width: 100%;
diff --git a/app/js/common/keyshortcut.js b/app/js/common/keyshortcut.js
index 01bd2047..cf505ab1 100644
--- a/app/js/common/keyshortcut.js
+++ b/app/js/common/keyshortcut.js
@@ -92,6 +92,7 @@ $(function($) {
if (e.keyCode === 88) {
if (!$("#post-box").hasClass("appear")) {
show();
+ $('textarea').focus();
} else {
hide();
}
diff --git a/app/js/common/version.js b/app/js/common/version.js
index 317b89f1..c25fc035 100644
--- a/app/js/common/version.js
+++ b/app/js/common/version.js
@@ -62,10 +62,29 @@ function verck(ver) {
}
});
}
+ }else if(platform=="darwin"){
+ if(localStorage.getItem("winstore")=="unix"){
+ localStorage.removeItem("winstore")
+ }
+ if(!localStorage.getItem("winstore")){
+ const options = {
+ type: 'info',
+ title: "Select your platform",
+ message: lang.lang_version_platform_mac,
+ buttons: [lang.lang_no,lang.lang_yesno]
+ }
+ dialog.showMessageBox(options, function(arg) {
+ if(arg==1){
+ localStorage.setItem("winstore","brewcask")
+ }else{
+ localStorage.setItem("winstore","localinstall")
+ }
+ });
+ }
}else{
localStorage.setItem("winstore","unix")
}
- if(localStorage.getItem("winstore")=="snapcraft" || localStorage.getItem("winstore")=="winstore"){
+ if(localStorage.getItem("winstore")=="brewcask" || localStorage.getItem("winstore")=="snapcraft" || localStorage.getItem("winstore")=="winstore"){
var winstore=true;
}else{
var winstore=false;
@@ -178,10 +197,14 @@ function verck(ver) {
}
}
});
+}
+var infostreaming=false;
+function infowebsocket(){
infows = new WebSocket("wss://thedesk.top/ws/");
infows.onopen = function(mess) {
console.log(tlid + ":Connect Streaming Info:");
console.log(mess);
+ infostreaming=true;
}
infows.onmessage = function(mess) {
console.log(":Receive Streaming:");
@@ -227,11 +250,19 @@ function verck(ver) {
}
}
infows.onerror = function(error) {
+ infostreaming=false;
console.error("Error closing:info");
console.error(error);
return false;
};
infows.onclose = function() {
+ infostreaming=false;
console.error("Closing:info");
};
-}
\ No newline at end of file
+}
+setInterval(function(){
+ if(!infostreaming){
+ console.log("try to connect")
+ infowebsocket();
+ }
+}, 10000);
\ No newline at end of file
diff --git a/app/js/lang/lang.en.js b/app/js/lang/lang.en.js
index a7fb96ce..56ec973a 100644
--- a/app/js/lang/lang.en.js
+++ b/app/js/lang/lang.en.js
@@ -23,6 +23,7 @@ var lang={
"lang_version_skipver":"Update was ignored.",
"lang_version_platform":"Was this software installed at Microsoft Store? When select 'yes', any update was ignored.",
"lang_version_platform_linux":"Was this software installed at Snapcraft(snapd)? When select 'yes', any update was ignored.",
+ "lang_version_platform_mac":"Was this software installed at Homebrew Cask? When select 'yes', any update was ignored.",
//login
//login/login.js
"lang_login_noauth":"Show TL of unlogined accounts",
diff --git a/app/js/lang/lang.ja.js b/app/js/lang/lang.ja.js
index 6b35ed78..8d12d44e 100644
--- a/app/js/lang/lang.ja.js
+++ b/app/js/lang/lang.ja.js
@@ -23,6 +23,7 @@ var lang={
"lang_version_skipver":"アップデートはスキップされました。",
"lang_version_platform":"このソフトウェアはMicrosoft Storeからダウンロードされましたか?(「はい」を選択すると次回からアップデート通知を無視します。)",
"lang_version_platform_linux":"このソフトウェアはSnapcraft(snapd)からインストールしましたか?(「はい」を選択すると次回からアップデート通知を無視します。)",
+ "lang_version_platform_mac":"このソフトウェアはHomebrew Caskからインストールしましたか?(「はい」を選択すると次回からアップデート通知を無視します。)",
//login
//login/login.js
"lang_login_noauth":"認証せずに見る",
diff --git a/app/js/post/img.js b/app/js/post/img.js
index e8ed2984..b0ad3421 100644
--- a/app/js/post/img.js
+++ b/app/js/post/img.js
@@ -156,7 +156,6 @@ function media(b64, type, no) {
Materialize.toast(lang.lang_postimg_aftupload, 1000);
$("#imgup").text("");
$("#imgsel").show();
- uploadnow=false;
localStorage.removeItem("image");
}
}
diff --git a/app/js/tl/mix.js b/app/js/tl/mix.js
index b58167dd..06e23787 100644
--- a/app/js/tl/mix.js
+++ b/app/js/tl/mix.js
@@ -239,6 +239,7 @@ function mixmore(tlid,type) {
var multi = localStorage.getItem("column");
var obj = JSON.parse(multi);
var acct_id = obj[tlid].domain;
+ moreloading=true;
todo("Integrated TL MoreLoading...(Local)");
var domain = localStorage.getItem("domain_" + acct_id);
var at = localStorage.getItem("acct_"+ acct_id + "_at");
@@ -302,9 +303,9 @@ function mixmore(tlid,type) {
});
$("#timeline_" + tlid).append(templete);
- mixre(acct_id, tlid);
additional(acct_id, tlid);
jQuery("time.timeago").timeago();
+ moreloading=false;
todc();
});
});
diff --git a/app/js/tl/parse.js b/app/js/tl/parse.js
index 0aff8314..b29c91f3 100644
--- a/app/js/tl/parse.js
+++ b/app/js/tl/parse.js
@@ -33,6 +33,11 @@ function parse(obj, mix, acct_id, tlid, popup, mutefilter, type) {
var ltr = localStorage.getItem("letters");
var gif = localStorage.getItem("gif");
var imh = localStorage.getItem("img-height");
+ if(imh=="full"){
+ imh="auto";
+ }else{
+ imh=imh+"px";
+ }
//独自ロケール
var locale = localStorage.getItem("locale");
if(locale=="yes"){
@@ -510,7 +515,7 @@ function parse(obj, mix, acct_id, tlid, popup, mutefilter, type) {
acct_id + '\')" id="' + id + '-image-' + key2 + '" data-url="' + url +
'" data-type="' + media.type + '" class="img-parsed">
';
+ ' toot-img pointer" style="width:calc(' + cwdt + '% - 1px); height:'+imh+';">';
});
media_ids = media_ids.slice(0, -1) ;
} else {
diff --git a/app/js/ui/spotify.js b/app/js/ui/spotify.js
index f54f80ac..259c6018 100644
--- a/app/js/ui/spotify.js
+++ b/app/js/ui/spotify.js
@@ -63,7 +63,6 @@ function spotifyFlagSave(){
Materialize.toast(lang.lang_spotify_imgno, 3000);
}
}
-var uploadnow=false;
function nowplaying(mode){
if(mode=="spotify"){
var start = "https://thedesk.top/now-playing?at="+localStorage.getItem("spotify")+"&rt="+localStorage.getItem("spotify-refresh");
@@ -124,6 +123,10 @@ function nowplaying(mode){
}else if(mode=="itunes"){
var electron = require("electron");
var ipc = electron.ipcRenderer;
+ if (ipc.listenerCount('itunes-np') > 0) {
+ return false;
+ }
+
ipc.send('itunes', "");
ipc.once('itunes-np', function (event, arg) {
console.log(arg);
@@ -135,13 +138,11 @@ function nowplaying(mode){
var remote=electron.remote;
var platform=remote.process.platform;
if(platform=="win32"){
- if(!uploadnow && flag && arg.path){
- uploadnow=true;
+ if(flag && arg.path){
media(arg.path,"image/png","new");
}
}else if(platform=="darwin"){
- if(!uploadnow && flag && arg.artworks[0]){
- uploadnow=true;
+ if(flag && arg.artworks[0]){
ipc.send('bmp-image', [arg.artworks[0].path,0]);
}
}
diff --git a/app/language.js b/app/language.js
index 4ed5df0d..92d547d4 100644
--- a/app/language.js
+++ b/app/language.js
@@ -1,5 +1,5 @@
// Create the Application's main menu
-function templete(lang,mainWindow){
+function templete(lang,mainWindow,packaged){
const electron = require("electron");
const app = electron.app;
const BrowserWindow = electron.BrowserWindow;
@@ -95,7 +95,7 @@ function templete(lang,mainWindow){
{
label: 'Toggle Developer Tools',
accelerator: 'Alt+Command+I',
- click: function() { mainWindow.toggleDevTools(); }
+ click: function() { if(!packaged){mainWindow.toggleDevTools();} }
},
{
label: dict.reload[lang],
diff --git a/app/main.js b/app/main.js
index dc169bbc..c555156d 100644
--- a/app/main.js
+++ b/app/main.js
@@ -138,7 +138,7 @@ function createWindow() {
var platform=process.platform;
var bit=process.arch;
if(platform=="darwin"){
- Menu.setApplicationMenu(Menu.buildFromTemplate(language.template(lang,mainWindow)));
+ Menu.setApplicationMenu(Menu.buildFromTemplate(language.template(lang,mainWindow,false)));
}
}
// Electronの初期化完了後に実行
diff --git a/app/view/en/index.html b/app/view/en/index.html
index 751f154b..c7344587 100644
--- a/app/view/en/index.html
+++ b/app/view/en/index.html
@@ -32,7 +32,7 @@