Permalink
Browse files

ブラウザのフルスクリーンに対応

  • Loading branch information...
1 parent af61abe commit 3e9f8e68c63668dbfe7994e597b409414c26947c @ShikemokuMK committed Aug 21, 2016
Showing with 79 additions and 16 deletions.
  1. +15 −13 package.json
  2. +1 −1 release/master_tyrano/data/system/Config.tjs
  3. +25 −0 tyrano/libs.js
  4. +38 −2 tyrano/plugins/kag/kag.menu.js
View
@@ -1,16 +1,18 @@
{
- "name":"tyranoscript",
- "main":"app://./index.html",
- "window":{
- "title": "node-webkit demo",
- "icon": "link.png",
- "toolbar": false,
- "frame": true,
- "width": 640,
- "height": 480,
- "position": "mouse",
- "min_width": 640,
- "min_height": 480
+ "name": "tyranoscript",
+ "main": "app://./index.html",
+ "window": {
+ "title": "setup tyrano engine",
+ "icon": "link.png",
+ "toolbar": false,
+ "frame": true,
+ "width": 640,
+ "height": 480,
+ "position": "mouse",
+ "min_width": 640,
+ "min_height": 480
+ },
+ "webkit": {
+ "plugin": true
}
-
}
@@ -138,7 +138,7 @@ function KAGWindow_config()
// バックログ機能用にテキストの最大保持数を保存できます。
// 保存されたデータはtf.system.backlog に配列として格納されます。
// 0の場合、保存を行いません。
-;maxBackLogNum = 10;
+;maxBackLogNum = 50;
// ◆ ラベル記録
// 重要:既読管理を有効にしたい場合は必ずtrueを指定して下さい
View
@@ -392,6 +392,31 @@
}
};
+
+ $.isNWJS = function(){
+ // Node.js で動作しているか
+ var isNode = (typeof process !== "undefined" && typeof require !== "undefined");
+ // ブラウザ上(非Node.js)で動作しているか
+ var isBrowser = !isNode
+ // node-webkitで動作しているか
+ var isNodeWebkit;
+ try {
+ isNodeWebkit = isNode ? (typeof require('nw.gui') !== "undefined") : false;
+ } catch(e) {
+ isNodeWebkit = false;
+ }
+
+ if (isNodeWebkit) {
+ // node-webkitで動作
+ return true;
+ } else if ( isNode) {
+ // Node.js上で動作している
+ return true;
+ } else {
+ // 通常のWebページとして動作している
+ return false;
+ }
+ },
$.swfName = function(str) {
if (navigator.appName.indexOf("Microsoft") != -1) {
@@ -719,16 +719,52 @@ tyrano.plugin.kag.menu = {
//画面をフルスクリーンにします
screenFull : function() {
- if ($.userenv() == "pc") {
+ if ($.isNWJS() == true) {
var gui = require("nw.gui");
var win = gui.Window.get();
if (win.isFullscreen) {
win.leaveFullscreen();
} else {
win.enterFullscreen();
}
+
+ }else{
+
+ var isFullScreen = document.webkitFullscreenElement || document.mozFullScreenElement || document.msFullscreenElement || document.fullScreenElement || false;
+ var isEnableFullScreen = document.fullscreenEnabled || document.webkitFullscreenEnabled || document.mozFullScreenEnabled || document.msFullscreenEnabled || false;
+ var elem = document.body;
+
+ if( isEnableFullScreen ){
+
+         if (elem.requestFullscreen) {
+ if(isFullScreen){
+ document.exitFullscreen();
+ }else{
+              elem.requestFullscreen();
+ }
+         } else if (elem.webkitRequestFullscreen) {
+ if(isFullScreen){
+ document.webkitExitFullscreen();
+ }else{
+              elem.webkitRequestFullscreen();
+ }
+         } else if (elem.mozRequestFullScreen) {
+ if(isFullScreen){
+ document.mozCancelFullScreen();
+ }else{
+              elem.mozRequestFullScreen();
+ }
+         } else if (elem.msRequestFullscreen) {
+ if(isFullScreen){
+ document.msExitFullscreen();
+ }else{
+              elem.msRequestFullscreen();
+ }         
+ }
+ }
+
}
-
+
},
test : function() {

0 comments on commit 3e9f8e6

Please sign in to comment.