diff options
author | anekos | 2008-11-26 15:41:57 +0000 |
---|---|---|
committer | anekos | 2008-11-26 15:41:57 +0000 |
commit | ef671629a09f3c7dbcb05889d03621b2ad8a9d0a (patch) | |
tree | 25607b8c1a53225c846379be1054cb1d9ffccd3e /stella.js | |
parent | 8921f2ad9a98620e42a99954f283b22347ff76f0 (diff) | |
download | vimperator-plugins-ef671629a09f3c7dbcb05889d03621b2ad8a9d0a.tar.bz2 |
fullscreen追加 (FIXME)
git-svn-id: http://svn.coderepos.org/share/lang/javascript/vimperator-plugins/trunk@24983 d0d07461-0603-4401-acd4-de1884942a52
Diffstat (limited to 'stella.js')
-rw-r--r-- | stella.js | 42 |
1 files changed, 41 insertions, 1 deletions
@@ -120,6 +120,24 @@ (isNum(v) ? (parseInt((v / 60)) + ':' + lz(v % 60, 2)) : '??:??'); + function setWithBackup (target, values) { + let backup = target.__stella_backup = {}; + for (let [name, value] in Iterator(values)) { + backup[name] = target[name]; + target[name] = value; + } + liberator.log(target.__stella_backup) + } + + function restoreFromBackup (target, doDelete) { + if (!target.__stella_backup) + return; + for (let [name, value] in Iterator(target.__stella_backup)) + target[name] = value; + if (doDelete) + delete target.__stella_backup; + } + // }}} /********************************************************************************* @@ -159,6 +177,7 @@ currentTime: '', fileExtension: 'r', fileURL: '', + fullscreen: '', muted: '', pause: '', play: '', @@ -166,7 +185,7 @@ repeating: '', title: '', totalTime: '', - volume: '' + volume: '', // auto setting => fetch maxVolume playOrPause seek seekRelative turnUpDownVolume }, @@ -269,6 +288,7 @@ functions: { currentTime: 'rw', fileURL: 'r', + fullscreen: 'rwt', muted: 'rwt', pause: 'x', play: 'x', @@ -291,6 +311,25 @@ let (as = content.document.defaultView.wrappedJSObject.swfArgs) ('http://www.youtube.com/get_video?fmt=22&video_id=' + as.video_id + '&t=' + as.t), + get fullscreen () this.player.__stella_fullscreen, + // FIXME - 元に戻らない + set fullscreen () { + this.player.__stella_fullscreen = !this.player.__stella_fullscreen; + if (this.fullscreen) { + liberator.log('full') + setWithBackup(this.player.style, { + position: 'fixed', + left: '0px', + top: '0px', + width: content.innerWidth + 'px', + height: content.innerHeight + 'px' + }); + } else { + liberator.log('normal') + restoreFromBackup(this.player.style); + } + }, + get muted () this.player.isMuted(), set muted (value) ((value ? this.player.mute() : this.player.unMute()), value), @@ -609,6 +648,7 @@ add('volume', 'volume', 'turnUpDownVolume'); add('seek', 'seek', 'seekRelative'); add('fetch', 'fetch'); + add('fullscreen', 'fullscreen'); }, createStatusPanel: function () { |