diff -u -r Common-4.1.0.0/config/js/config.js Common/config/js/config.js
--- Common-4.1.0.0/config/js/config.js	2012-12-05 20:42:59.000000000 +0900
+++ Common/config/js/config.js	2012-12-05 21:19:32.000000000 +0900
@@ -33,6 +33,7 @@
 		param.token = $.query.get('token') || param.token;
 		param.page = $.query.get('page') || param.page;
 		jn.onInitialize && jn.onInitialize();
+		console.log('janet.onInitialize() is done.');
 		jn.websocket.connect('config_'+(new Date().getTime()), function(){
 			jn.temp.started = true;
 			jn.getConfig(function(){
@@ -50,6 +51,7 @@
 									cf.dispLoading(false);
 									_bootflg = true;
 									jn.onInitializeDone && jn.onInitializeDone();
+									console.log('janet.onInitializeDone() is done.');
 									jn.temp.initialized = true;
 								});
 								cf.buildDesign();
diff -u -r Common-4.1.0.0/js/janet/api.js Common/js/janet/api.js
--- Common-4.1.0.0/js/janet/api.js	2012-12-05 20:42:59.000000000 +0900
+++ Common/js/janet/api.js	2012-12-05 21:30:02.000000000 +0900
@@ -154,6 +154,7 @@
 					jn.error && jn.error("Configuration cannot get.");
 				}
 				jn.onGetConfig && jn.onGetConfig(success, data);
+				console.log('janet.onGetConfig() is done.');
 			},
 			timeout: 500
 		},10);
@@ -169,6 +170,7 @@
 			done: function(success, _data, status){
 				done && done(success, _data, status);
 				jn.onSetConfig && jn.onSetConfig(success, data);
+				console.log('janet.onSetConfig() is done.');
 			},
 			timeout: 30000,
 		});
@@ -211,8 +213,10 @@
 				// 2012/09/04 @ginlime
 				// jn.onGetMessages を done の前に移動し、jn.onGetMessagesDone を追加
 				jn.onGetMessages && jn.onGetMessages(success, data);
+				console.log('janet.onGetMessages() is done.');
 				done && done(jn.msg);
 				jn.onGetMessagesDone && jn.onGetMessagesDone(success, data);
+				console.log('janet.onGetMessagesDone() is done.');
 			}
 		});
 	};
@@ -246,6 +250,7 @@
 				}
 				done && done(jn.accounts);
 				jn.onGetAccounts && jn.onGetAccounts(success, data);
+				console.log('janet.onGetAccounts() is done.');
 			}
 		});
 	};
@@ -270,6 +275,7 @@
 				}
 				done && done(jn.timelines);
 				jn.onLoadTimelines && jn.onLoadTimelines(success, data);
+				console.log('janet.onLoadTimelines() is done.');
 			},
 			timeout: 10000,
 		},15);
@@ -304,6 +310,7 @@
 				}
 				done && done(jn.timelines);
 				jn.onGetTimelines && jn.onGetTimelines(success, data);
+				console.log('janet.onGetTimelines() is done.');
 			},
 			timeout: 3000
 		}, 1000);
@@ -374,6 +381,7 @@
 				}
 				done && done(jn.lists);
 				jn.onGetLists && jn.onGetLists(success, data);
+				console.log('janet.onGetLists() is done.');
 			}
 		});
 	};
diff -u -r Common-4.1.0.0/js/janet/contextmenu.js Common/js/janet/contextmenu.js
--- Common-4.1.0.0/js/janet/contextmenu.js	2012-12-05 20:42:59.000000000 +0900
+++ Common/js/janet/contextmenu.js	2012-12-05 21:34:19.000000000 +0900
@@ -150,6 +150,7 @@
 			options.children('li:not([action="trends"])').children('ul').remove();
 			// メニュー項目の追加を行うためのエントリポイント
 			jn.onContextMemuOptionsBuildStarted && jn.onContextMemuOptionsBuildStarted(accounts);
+			console.log('janet.onContextMemuOptionsBuildStarted() is done.');
 			if(jn.accounts.length>1){
 				options.children('li[action="profile"]')
 					.append(accountssubmenu.clone())
@@ -198,6 +199,7 @@
 			all.children('li').children('ul').remove();
 			// メニュー項目の追加を行うためのエントリポイント
 			jn.onContextMemuAllBuildStarted && jn.onContextMemuAllBuildStarted(accounts);
+			console.log('janet.onContextMemuAllBuildStarted() is done.');
 			if(jn.accounts.length>1){
 				all.children('li[action="favorite"]')
 					.append(accountssubmenu.clone())
@@ -253,6 +255,7 @@
 			tweet.children('li').children('ul').remove();
 			// メニュー項目の追加を行うためのエントリポイント
 			jn.onContextMemuGearBuildStarted && jn.onContextMemuGearBuildStarted(accounts);
+			console.log('janet.onContextMemuGearBuildStarted() is done.');
 			if(jn.accounts.length>1){
 				tweet.children('li[action="favorite"]')
 					.append(accountssubmenu.clone())
@@ -313,6 +316,7 @@
 			reply.children('li').children('ul').remove();
 			// メニュー項目の追加を行うためのエントリポイント
 			jn.onContextMemuReplyBuildStarted && jn.onContextMemuReplyBuildStarted(accounts);
+			console.log('janet.onContextMemuReplyBuildStarted() is done.');
 			$().jeegoocontext('contextmenu-reply', {
 				onShow: jn.contextMenu.onShowReply,
 				onSelect: jn.contextMenu.onSelectReply
@@ -361,6 +365,7 @@
 			fav.children('li').children('ul').remove();
 			// メニュー項目の追加を行うためのエントリポイント
 			jn.onContextMemuFavBuildStarted && jn.onContextMemuFavBuildStarted(accounts);
+			console.log('janet.onContextMemuFavBuildStarted() is done.');
 			if(jn.accounts.length>1){
 				fav.children('li[action="favorite"]')
 					.append(accountssubmenu.clone())
@@ -426,6 +431,7 @@
 			rt.children('li').children('ul').remove();
 			// メニュー項目の追加を行うためのエントリポイント
 			jn.onContextMemuRTBuildStarted && jn.onContextMemuRTBuildStarted(accounts);
+			console.log('janet.onContextMemuRTBuildStarted() is done.');
 			if(jn.accounts.length>1){
 				rt.children('li[action="retweet"]')
 					.append(accountssubmenu.clone())
@@ -465,6 +471,7 @@
 			atUser.children('li').children('ul').remove();
 			// メニュー項目の追加を行うためのエントリポイント
 			jn.onContextMemuAtUserBuildStarted && jn.onContextMemuAtUserBuildStarted(accounts);
+			console.log('janet.onContextMemuAtUserBuildStarted() is done.');
 			atUser.children('li[action="mute"]')
 				.append(mutesubmenu.clone());
 			$().jeegoocontext('contextmenu-user', {
@@ -509,6 +516,7 @@
 			.append(accountssubmenu.children('li').clone());
 			// メニュー項目の追加を行うためのエントリポイント
 			jn.onContextMemuSelectAccountBuildStarted && jn.onContextMemuSelectAccountBuildStarted(accounts);
+			console.log('janet.onContextMemuSelectAccountBuildStarted() is done.');
 			$().jeegoocontext('contextmenu-account', {
 				onShow: jn.contextMenu.onShowSelectAccount,
 				onSelect: jn.contextMenu.onSelectSelectAccount
@@ -546,6 +554,7 @@
 			tl.children('li').children('ul').remove();
 			// メニュー項目の追加を行うためのエントリポイント
 			jn.onContextMemuTimeLineBuildStarted && jn.onContextMemuTimeLineBuildStarted(accounts);
+			console.log('janet.onContextMemuTimeLineBuildStarted() is done.');
 			if(jn.accounts.length>1){
 				tl.children('li[action="savesearch"]')
 				.append(accountssubmenu.clone())
@@ -657,6 +666,7 @@
 			linkItem.children('li').children('ul').remove();
 			// メニュー項目の追加を行うためのエントリポイント
 			jn.onContextMemuLinkBuildStarted && jn.onContextMemuLinkBuildStarted(accounts);
+			console.log('janet.onContextMemuLinkBuildStarted() is done.');
 			$().jeegoocontext('contextmenu-link', {
 				onShow: jn.contextMenu.onShowLink,
 				onSelect: jn.contextMenu.onSelectLink
@@ -690,6 +700,7 @@
 			selectText.children('li').children('ul').remove();
 			// メニュー項目の追加を行うためのエントリポイント
 			jn.onContextMemuSelectTextBuildStarted && jn.onContextMemuSelectTextBuildStarted(accounts);
+			console.log('janet.onContextMemuSelectTextBuildStarted() is done.');
 			$().jeegoocontext('contextmenu-selecttext', {
 				onShow: jn.contextMenu.onShowSelectText,
 				onSelect: jn.contextMenu.onSelectSelectText,
@@ -736,6 +747,7 @@
 			hashItem.children('li').children('ul').remove();
 			// メニュー項目の追加を行うためのエントリポイント
 			jn.onContextMemuHashBuildStarted && jn.onContextMemuHashBuildStarted(accounts);
+			console.log('janet.onContextMemuHashBuildStarted() is done.');
 			$().jeegoocontext('contextmenu-hash', {
 				onShow: jn.contextMenu.onShowHash,
 				onSelect: jn.contextMenu.onSelectHash
@@ -771,6 +783,7 @@
 			viaItem.children('li').children('ul').remove();
 			// メニュー項目の追加を行うためのエントリポイント
 			jn.onContextMemuViaBuildStarted && jn.onContextMemuViaBuildStarted(accounts);
+			console.log('janet.onContextMemuViaBuildStarted() is done.');
 			$().jeegoocontext('contextmenu-app', {
 				onShow: jn.contextMenu.onShowVia,
 				onSelect: jn.contextMenu.onSelectVia
@@ -807,6 +820,7 @@
 			draftItem.children('li').children('ul').remove();
 			// メニュー項目の追加を行うためのエントリポイント
 			jn.onContextMemuDraftBuildStarted && jn.onContextMemuDraftBuildStarted(accounts);
+			console.log('janet.onContextMemuDraftBuildStarted() is done.');
 			$().jeegoocontext('contextmenu-draft', {
 				onShow: jn.contextMenu.onShowDraft,
 				onSelect: jn.contextMenu.onSelectDraft
@@ -881,6 +895,7 @@
 		'buildTrendsMenu' : function(){
 			// メニュー項目の追加を行うためのエントリポイント
 			jn.onContextMemuTrendsBuildStarted && jn.onContextMemuTrendsBuildStarted();
+			console.log('janet.onContextMemuTrendsBuildStarted() is done.');
 			if(jn.accounts.length){
 				jn.getTrends(jn.accounts[0].juid, jn.temp.woeid, function(success, data){
 					if(success && data[0] && data[0].trends && data[0].trends.length){
@@ -1021,4 +1036,4 @@
 	jn.buildTrendsMenu = function(){
 		jn.contextMenu.buildTrendsMenu();
 	};
-})(jQuery, janet);
\ No newline at end of file
+})(jQuery, janet);
diff -u -r Common-4.1.0.0/js/janet/main.js Common/js/janet/main.js
--- Common-4.1.0.0/js/janet/main.js	2012-11-06 21:35:19.000000000 +0900
+++ Common/js/janet/main.js	2012-12-05 21:35:15.000000000 +0900
@@ -8,6 +8,7 @@
 		// スタート
 		//================================================
 		jn.onInitialize && jn.onInitialize();
+		console.log('janet.onInitialize() is done.');
 		jn.temp.started = true;
 		//各オブジェクト作成
 		jn.newlistdlg = new jn.newlistdialog();
@@ -96,6 +97,7 @@
 									jn.timelines = timelines;
 									jn.unreaderMgr.display();
 									jn.onInitializeDone && jn.onInitializeDone();
+									console.log('janet.onInitializeDone() is done.');
 									jn.temp.initialized = true;
 								});
 							}, true);
@@ -158,6 +160,7 @@
 					dummyImg.src = "../../Common/images/main_sprite.png";
 					//テーマ用
 					jn.onLoadEnd && jn.onLoadEnd();
+					console.log('janet.onLoadEnd() is done.');
 				}
 			});
 			jn.getTwConfig();
diff -u -r Common-4.1.0.0/js/janet/message.js Common/js/janet/message.js
--- Common-4.1.0.0/js/janet/message.js	2012-12-05 20:42:59.000000000 +0900
+++ Common/js/janet/message.js	2012-12-05 21:36:18.000000000 +0900
@@ -159,6 +159,7 @@
 	jn.messageTimelineController.prototype.updateFromWebSocket = function(tweets){
 		var self = this;
 		if(this.firstGapUpdated && !this.update_lock){
+			console.log('janet.onReceiveNewStatusesBefore() is doing now.');
 			if(jn.onReceiveNewStatusesBefore && jn.onReceiveNewStatusesBefore(tweets, self))
 				return;
 			
@@ -195,6 +196,7 @@
 								self.restoreScrollPos(true, true);
 							}
 							jn.onReceiveNewStatusesAfter && jn.onReceiveNewStatusesAfter(self);
+							console.log('janet.onReceiveNewStatusesAfter() is done.');
 						};
 					}
 				}
@@ -1050,4 +1052,4 @@
 			});
 	};
 	
-})(jQuery, janet);
\ No newline at end of file
+})(jQuery, janet);
diff -u -r Common-4.1.0.0/js/janet/timeline.js Common/js/janet/timeline.js
--- Common-4.1.0.0/js/janet/timeline.js	2012-12-05 20:42:59.000000000 +0900
+++ Common/js/janet/timeline.js	2012-12-05 21:39:34.000000000 +0900
@@ -301,6 +301,7 @@
 		updateFromWebSocket: function(tweets){
 			var self = this;
 			if(this.firstGapUpdated && !this.update_lock){
+				console.log('janet.onReceiveNewStatusesBefore() is doing now.');
 				if(jn.onReceiveNewStatusesBefore && jn.onReceiveNewStatusesBefore(tweets, self))
 					return;
 				
@@ -362,6 +363,7 @@
 										self.restoreScrollPos(true, true);
 									}
 									jn.onReceiveNewStatusesAfter && jn.onReceiveNewStatusesAfter(self);
+									console.log('janet.onReceiveNewStatusesAfter() is done.');
 								};
 							}
 						}
@@ -2140,6 +2142,7 @@
 			if(this.scroll)
 				this.restoreScrollPos();
 			this.onChangeFontSize && this.onChangeFontSize();
+			console.log('janet.timelineController.onChangeFontSize() is done.');
 		},
 		
 		//------------------------------------------
diff -u -r Common-4.1.0.0/js/janet/tweetedit.js Common/js/janet/tweetedit.js
--- Common-4.1.0.0/js/janet/tweetedit.js	2012-12-05 20:42:59.000000000 +0900
+++ Common/js/janet/tweetedit.js	2012-12-05 21:43:11.000000000 +0900
@@ -327,6 +327,7 @@
 			var expanded = $('#tweet-edit-container > .expanded:visible');
 			
 			if(!expanded.length){
+				console.log('janet.onTweetBoxShowBegin() is doing now.');
 				if(jn.onTweetBoxShowBegin){
 					if(!jn.onTweetBoxShowBegin(expanded))
 						return;
@@ -357,6 +358,7 @@
 				textarea.focus();
 				
 				jn.onTweetBoxShowEnd && jn.onTweetBoxShowEnd(expanded);
+				console.log('janet.onTweetBoxShowEnd() is done.');
 			}
 		},
 		insertFooter: function(){
@@ -416,6 +418,7 @@
 							.find('textarea').val(text);
 						}
 						jn.onCompactTweetBox && jn.onCompactTweetBox();
+						console.log('janet.onCompactTweetBox() is done.');
 					}
 				},10);
 			}
@@ -739,6 +742,7 @@
 				.addClass('font-' + jn.conf.tweet_edit_fontsize);
 			this._resizeMain && this._resizeMain();
 			this.onChangeFontSize && this.onChangeFontSize();
+			console.log('janet.tweeteditor.onChangeFontSize() is done.');
 		},
 		//------------------------------------------------
 		// ツイートアカウント切替
@@ -919,6 +923,7 @@
 						self.compactTweetBox();
 						self.removeAllTweetPhotos();
 						jn.onTweeted && jn.onTweeted(jn.msg.successSendTweet);
+						console.log('janet.onTweeted() is done.');
 						var undo = null;
 						if(data.id_str && data.id_str.length){
 							undo = function(){
@@ -1012,6 +1017,7 @@
 						self.compactTweetBox();
 						self.removeAllTweetPhotos();
 						jn.onMessaged && jn.onMessaged(jn.msg.successSendMessage);
+						console.log('janet.onMessaged() is done.');
 						var undo = null;
 						if(data.id_str && data.id_str.length){
 							undo = function(){
@@ -1114,6 +1120,7 @@
 							jn.profileDialog.displayStatus(jn.msg.successSendRetweet);
 						}else{
 							jn.onRetweeted && jn.onRetweeted(jn.msg.successSendRetweet);
+							console.log('janet.onRetweeted() is done.');
 							jn.notice(jn.msg.successSendRetweet, null, function(){
 								self._removeTweet(juid, data.id_str);
 							});
diff -u -r Common-4.1.0.0/notice/js/notice.js Common/notice/js/notice.js
--- Common-4.1.0.0/notice/js/notice.js	2012-12-05 20:42:59.000000000 +0900
+++ Common/notice/js/notice.js	2012-12-05 21:23:21.000000000 +0900
@@ -21,6 +21,7 @@
 	//------------------------------------------------
 	$(function(){
 		jn.onInitialize && jn.onInitialize();
+		console.log('janet.onInitialize() is done.');
 		jn.temp.started = true;
 		suspended = (($.query.get('suspended')||'').toLowerCase() == 'true');
 		jn.pluginLoad();
@@ -30,6 +31,7 @@
 				nt.initialize();
 				changeConfig();
 				jn.onInitializeDone && jn.onInitializeDone();
+				console.log('janet.onInitializeDone() is done.');
 				jn.temp.initialized = true;
 			});
 		});
@@ -72,6 +74,7 @@
 		/**
 		 * 新着ツイート通知
 		 */
+		console.log('janet.onReceiveNewTweetsBefore() is doing now.');
 		if(jn.onReceiveNewTweetsBefore && jn.onReceiveNewTweetsBefore(data))
 			return;
 		
@@ -135,6 +138,7 @@
 		nt.display(timeline);
 		
 		jn.onReceiveNewTweetsAfter && jn.onReceiveNewTweetsAfter();
+		console.log('janet.onReceiveNewTweetsAfter() is done.');
 		
 		window.status = 'janet://received';
 	};
@@ -143,6 +147,7 @@
 		 * イベント通知
 		 */
 		console.log(data);
+		console.log('janet.onReceiveNewEventBefore() is doing now.');
 		if(jn.onReceiveNewEventBefore && jn.onReceiveNewEventBefore(data))
 			return;
 		
@@ -177,6 +182,7 @@
 		nt.display(event_key);
 		
 		jn.onReceiveNewEventAfter && jn.onReceiveNewEventAfter();
+		console.log('janet.onReceiveNewEventAfter() is done.');
 		console.log('notification done.');
 	};
 	nt.pushQueue = function(key, obj){
@@ -1093,6 +1099,7 @@
 		reply.children('li').children('ul').remove();
 		// メニュー項目の追加を行うためのエントリポイント
 		jn.onContextMemuReplyBuildStarted && jn.onContextMemuReplyBuildStarted(accounts);
+		console.log('janet.onContextMemuReplyBuildStarted() is done.');
 		$().jeegoocontext('contextmenu-reply', {
 			onShow: jn.contextMenu.onShowReplyDM,
 			onSelect: jn.contextMenu.onSelectReplyDM
diff -u -r Common-4.1.0.0/profile/js/profile.js Common/profile/js/profile.js
--- Common-4.1.0.0/profile/js/profile.js	2012-12-05 20:42:59.000000000 +0900
+++ Common/profile/js/profile.js	2012-12-05 21:24:00.000000000 +0900
@@ -35,6 +35,7 @@
 	//------------------------------------------------
 	$(function(){
 		jn.onInitialize && jn.onInitialize();
+		console.log('janet.onInitialize() is done.');
 		jn.temp.started = true;
 		pf.dispLoading(true);
 		param.host = $.query.get('host') || param.host;
@@ -55,6 +56,7 @@
 								jn.buildContextMenu(accounts);
 								pf.initialize();
 								jn.onInitializeDone && jn.onInitializeDone();
+								console.log('janet.onInitializeDone() is done.');
 								jn.temp.initialized = true;
 							});
 						});
diff -u -r Common-4.1.0.0/viewer/js/map.js Common/viewer/js/map.js
--- Common-4.1.0.0/viewer/js/map.js	2012-12-05 20:42:59.000000000 +0900
+++ Common/viewer/js/map.js	2012-12-05 21:24:57.000000000 +0900
@@ -94,6 +94,7 @@
 								});
 							self.createMarker(map, results[0].geometry.location);
 							janet.onInitializeDone && janet.onInitializeDone();
+							console.log('janet.onInitializeDone() is done.');
 							janet.temp.initialized = true;
 						}else{
 							console.log('Geocode was not successful for the following reason: ' + status);
@@ -352,6 +353,7 @@
 //loading...
 $(function(){
 	janet.onInitialize && janet.onInitialize();
+	console.log('janet.onInitialize() is done.');
 	janet.temp.started = true;
 	//janet.pluginLoad();
 	//クルクル表示
diff -u -r Common-4.1.0.0/viewer/js/viewer.js Common/viewer/js/viewer.js
--- Common-4.1.0.0/viewer/js/viewer.js	2012-12-05 20:42:59.000000000 +0900
+++ Common/viewer/js/viewer.js	2012-12-05 21:25:31.000000000 +0900
@@ -131,6 +131,7 @@
 			self.setEvent();
 			self.webViewAction('viewerChangeSize',{width: w, height: h});
 			janet.onInitializeDone && janet.onInitializeDone();
+			console.log('janet.onInitializeDone() is done.');
 			janet.temp.initialized = true;
 		}
 	},
@@ -292,6 +293,7 @@
 	var imageViewer = new jImageViewer();
 	jQuery(function($){
 		janet.onInitialize && janet.onInitialize();
+		console.log('janet.onInitialize() is done.');
 		janet.temp.started = true;
 		//janet.pluginLoad();
 		imageViewer.start();
