fixed invalid status due to cancel reload articles
@@ -37,6 +37,7 @@ | ||
37 | 37 | ~ArticleViewMain(); |
38 | 38 | |
39 | 39 | virtual void clock_in(); |
40 | + virtual void clock_in_always(); | |
40 | 41 | |
41 | 42 | virtual void goto_num( const int num_to, const int num_from ); |
42 | 43 |
@@ -38,7 +38,7 @@ | ||
38 | 38 | |
39 | 39 | enum |
40 | 40 | { |
41 | - CANCEL_RELOAD = 500, // msec 連続リロード防止用カウンタ | |
41 | + CANCEL_RELOAD = 800, // msec 連続リロード防止用カウンタ | |
42 | 42 | LIVE_SEC_PLUS = 5, // 実況で更新失敗/成功ごとに増減する更新間隔(秒) |
43 | 43 | LIVE_MAX_RELOAD = 5 // 実況でこの回数連続でリロードに失敗したら実況停止 |
44 | 44 | }; |
@@ -47,7 +47,13 @@ | ||
47 | 47 | // メインビュー |
48 | 48 | |
49 | 49 | ArticleViewMain::ArticleViewMain( const std::string& url ) |
50 | - : ArticleViewBase( url, url ), m_gotonum_reserve_to( 0 ), m_gotonum_reserve_from( 0 ), m_gotonum_seen( 0 ), m_playsound( false ), m_reload_reserve( false ), m_cancel_reload_counter( 0 ) | |
50 | + : ArticleViewBase( url, url ), | |
51 | + m_gotonum_reserve_to( 0 ), | |
52 | + m_gotonum_reserve_from( 0 ), | |
53 | + m_gotonum_seen( 0 ), | |
54 | + m_playsound( false ), | |
55 | + m_reload_reserve( false ), | |
56 | + m_cancel_reload_counter( 0 ) | |
51 | 57 | { |
52 | 58 | #ifdef _DEBUG |
53 | 59 | std::cout << "ArticleViewMain::ArticleViewMain " << get_url() << " url_article = " << url_article() << std::endl; |
@@ -100,6 +106,9 @@ | ||
100 | 106 | } |
101 | 107 | |
102 | 108 | |
109 | +// | |
110 | +// クロック入力 | |
111 | +// | |
103 | 112 | // virtual |
104 | 113 | void ArticleViewMain::clock_in() |
105 | 114 | { |
@@ -118,7 +127,18 @@ | ||
118 | 127 | show_view(); |
119 | 128 | } |
120 | 129 | } |
130 | +} | |
121 | 131 | |
132 | + | |
133 | +// | |
134 | +// クロック入力 | |
135 | +// clock_in_always()は常に呼び出されるので重い処理を含めてはいけない | |
136 | +// | |
137 | +// virtual | |
138 | +void ArticleViewMain::clock_in_always() | |
139 | +{ | |
140 | + ArticleViewBase::clock_in_always(); | |
141 | + | |
122 | 142 | if( m_cancel_reload_counter ) --m_cancel_reload_counter; |
123 | 143 | } |
124 | 144 |
@@ -236,6 +256,11 @@ | ||
236 | 256 | #ifdef _DEBUG |
237 | 257 | std::cout << "cancel reload\n"; |
238 | 258 | #endif |
259 | + // オートリロードのカウンタを0にする | |
260 | + reset_autoreload_counter(); | |
261 | + // タブのアイコン状態を更新 | |
262 | + ARTICLE::get_admin()->set_command( "toggle_icon", get_url() ); | |
263 | + | |
239 | 264 | return; |
240 | 265 | } |
241 | 266 |