Skip to content

Commit

Permalink
Merge branch 'develop'
Browse files Browse the repository at this point in the history
  • Loading branch information
akoya-tomo committed Jun 14, 2018
2 parents 632efbe + f882d04 commit de060a4
Show file tree
Hide file tree
Showing 2 changed files with 59 additions and 8 deletions.
12 changes: 11 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,12 @@
* 新着レスをポップアップで通知
スレを表示していない時に新着レスがあるとポップアップで表示されます。
* 板名をタブのタイトルに表示
* \(New\) スレ消滅をポップアップで通知(デフォルト:無効)
スレが落ちたときにポップアップで表示されます。
設定を有効にすると通知ボタンのオンオフと関係無くスレ消滅が通知されます。
* \(New\) タイトルのスレ消滅表示をリセット操作で消さない(デフォルト:無効)
ページ下端でのホイールダウンなどのリセット操作でスレ消滅表示が消えなくなります。
スレ消滅に気付かずに閲覧中にホイールダウンしてスレ消滅表示を消してしまうことを防ぎます。


## インストール
Expand Down Expand Up @@ -55,8 +61,12 @@

## 更新履歴

* v1.7.1rev6 2018-06-14
- スレ消滅時にポップアップで通知する設定を追加
- タイトルのスレ消滅表示をリセット操作で消さない設定を追加
- 新着レス数のカウント漏れを防ぐためカウント方法を変更
* v1.7.1rev5 2018-05-06
- 返信フォームの幅を狭くしたときにボタンが途中で折り返される不具合を修正
- 返信フォームの幅を狭くしたときにボタンが途中で折り返される不具合を修正
* v1.7.1rev4 2018-05-03
- KOSHIAN リロード拡張 改 v1.5.0で[F5]キーによる新着レスが取得できるようになったので、
オリジナル版futaba auto reloaderにあった[F5]キーで新着レス数をクリアする機能を復活
Expand Down
55 changes: 48 additions & 7 deletions futaba_auto_reloader.user.js
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
// @include http://*.2chan.net/*/res/*
// @include https://*.2chan.net/*/res/*
// @require http://ajax.googleapis.com/ajax/libs/jquery/2.0.3/jquery.min.js
// @version 1.7.1rev5
// @version 1.7.1rev6
// @grant GM_addStyle
// @license MIT
// @icon data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAAPUExURYv4i2PQYy2aLUe0R////zorx9oAAAAFdFJOU/////8A+7YOUwAAAElJREFUeNqUj1EOwDAIQoHn/c88bX+2fq0kRsAoUXVAfwzCttWsDWzw0kNVWd2tZ5K9gqmMZB8libt4pSg6YlO3RnTzyxePAAMAzqMDgTX8hYYAAAAASUVORK5CYII=
Expand All @@ -28,8 +28,10 @@ this.$ = this.jQuery = jQuery.noConflict(true);
var LIVE_TOGGLE_KEY = "76"; //実況モードON・OFF切り替えキーコード(With Alt)
var SHOW_NORMAL_BUTTON = true; //通常モードボタンを表示する
var USE_NOTIFICATION_DEFAULT = false; // 新着レスの通知をデフォルトで有効にする
var USE_SAVE_MHT = false; // スレ消滅時にMHTで保存する
//var USE_SAVE_MHT = false; // スレ消滅時にMHTで保存する(未実装)
var USE_BOARD_NAME = true; //板名をタブに表示する
var NOTIFY_THREAD_NOT_FOUND = false; //スレの消滅を通知する(通知ボタンとは独立して動作)
var KEEP_THREAD_NOT_FOUND_MARK = false; //タイトルのスレ消滅表示をリセット操作で消さない(true = 消さない : false = 消す)

var res = 0; //新着レス数
var timerNormal, timerLiveReload, timerLiveScroll;
Expand All @@ -55,6 +57,25 @@ this.$ = this.jQuery = jQuery.noConflict(true);
function setNormalReload() {
timerNormal = setInterval(rel, RELOAD_INTERVAL_NORMAL);
console.log(script_name + ": Start auto reloading @" + url);

document.addEventListener("KOSHIAN_reload", (e) => {
soudane();
changetitle();
if (!isWindowActive && isNotificationEnable) {
getNewResContent();
}
});

document.addEventListener("KOSHIAN_reload_notfound", (e) => {
clearNormalReload();
changetitle();
if (!isWindowActive && NOTIFY_THREAD_NOT_FOUND) {
var popupText = "スレは落ちています\r\n自動更新を停止しました";
showNotification(popupText);
}
console.log(script_name + ": Page not found, Stop auto reloading @" + url);
});

}
//通常リロード停止
function clearNormalReload() {
Expand Down Expand Up @@ -245,14 +266,14 @@ this.$ = this.jQuery = jQuery.noConflict(true);
var window_y = Math.ceil(window.scrollY); //Windowsで拡大率使用時に小数点以下でずれる対応
var window_ymax = window.scrollMaxY;
//console.log(script_name + ": window y,yamx: " + window_y +',' + window_ymax);
if (event.detail > 0 && window_y >= window_ymax ) {
if (event.detail > 0 && window_y >= window_ymax && (!KEEP_THREAD_NOT_FOUND_MARK || !isAkahukuNotFound())) {
reset_titlename();
}
return;
} ,false);
//F5キー押された時
window.addEventListener("keydown",function(e) {
if ( e.keyCode == "116" ) {
if ( e.keyCode == "116" && (!KEEP_THREAD_NOT_FOUND_MARK || !isAkahukuNotFound()) ) {
reset_titlename();
}
}, false);
Expand All @@ -265,14 +286,21 @@ this.$ = this.jQuery = jQuery.noConflict(true);
}

function rel() {
soudane();
setTimeout(changetitle, 1000);
//soudane();
setTimeout(changetitle2, 1000);
if(isAkahukuNotFound()){
//404時
clearNormalReload();
changetitle();
if (!isWindowActive && NOTIFY_THREAD_NOT_FOUND) {
var popupText = "スレは落ちています\r\n自動更新を停止しました";
showNotification(popupText);
}
/*
if (USE_SAVE_MHT) {
//saveMHT(); //未実装
}
*/
console.log(script_name + ": Page not found, Stop auto reloading @" + url);
}
else {
Expand All @@ -290,11 +318,13 @@ this.$ = this.jQuery = jQuery.noConflict(true);
e.initEvent("click", false, true);
relbutton.dispatchEvent(e);
}
/*
setTimeout(function(){
if (!isWindowActive && isNotificationEnable) {
getNewResContent();
}
}, 1000);
*/
}
/**
* MHTで保存
Expand Down Expand Up @@ -341,6 +371,17 @@ this.$ = this.jQuery = jQuery.noConflict(true);
}
}
}
/*
* タブタイトルにスレ消滅状態を表示
*/
function changetitle2() {
if (USE_TITLE_NAME) {
var title_char = title_name();
if (isAkahukuNotFound()) {
document.title = "#" + title_char;
}
}
}
// 新着レスの内容を取得
function getNewResContent() {
var $newrestable = $("#KOSHIAN_NOTIFY").nextAll('table'); //KOSHIAN新着レステーブル取得
Expand Down Expand Up @@ -432,7 +473,7 @@ this.$ = this.jQuery = jQuery.noConflict(true);
//ファビコンからアイコン取得
var icon = $("head > link[rel='shortcut icon']").attr("href");
if (icon == null) {
icon = "https://www.2chan.net/favicon.ico";
icon = "/favicon.ico";
}
var instance = new Notification(
document.title, {
Expand Down

0 comments on commit de060a4

Please sign in to comment.