Changeset 24983

Show
Ignore:
Timestamp:
11/27/08 00:41:57 (5 years ago)
Author:
anekos
Message:

fullscreen追加 (FIXME)

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • lang/javascript/vimperator-plugins/trunk/stella.js

    r24964 r24983  
    121121              : '??:??'); 
    122122 
     123  function setWithBackup (target, values) { 
     124    let backup = target.__stella_backup = {}; 
     125    for (let [name, value] in Iterator(values)) { 
     126      backup[name] = target[name]; 
     127      target[name] = value; 
     128    } 
     129    liberator.log(target.__stella_backup) 
     130  } 
     131 
     132  function restoreFromBackup (target, doDelete) { 
     133    if (!target.__stella_backup) 
     134      return; 
     135    for (let [name, value] in Iterator(target.__stella_backup)) 
     136      target[name] = value; 
     137    if (doDelete) 
     138      delete target.__stella_backup; 
     139  } 
     140 
    123141  // }}} 
    124142 
     
    160178      fileExtension: 'r', 
    161179      fileURL: '', 
     180      fullscreen: '', 
    162181      muted: '', 
    163182      pause: '', 
     
    167186      title: '', 
    168187      totalTime: '', 
    169       volume: '' 
     188      volume: '', 
    170189      // auto setting => fetch maxVolume playOrPause seek seekRelative turnUpDownVolume 
    171190    }, 
     
    270289      currentTime: 'rw', 
    271290      fileURL: 'r', 
     291      fullscreen: 'rwt', 
    272292      muted: 'rwt', 
    273293      pause: 'x', 
     
    291311      let (as = content.document.defaultView.wrappedJSObject.swfArgs) 
    292312        ('http://www.youtube.com/get_video?fmt=22&video_id=' + as.video_id + '&t=' + as.t), 
     313 
     314    get fullscreen () this.player.__stella_fullscreen, 
     315    // FIXME - 元に戻らない 
     316    set fullscreen () { 
     317      this.player.__stella_fullscreen = !this.player.__stella_fullscreen; 
     318      if (this.fullscreen) { 
     319        liberator.log('full') 
     320        setWithBackup(this.player.style, { 
     321          position: 'fixed', 
     322          left: '0px', 
     323          top: '0px', 
     324          width: content.innerWidth + 'px', 
     325          height: content.innerHeight + 'px' 
     326        }); 
     327      } else { 
     328        liberator.log('normal') 
     329        restoreFromBackup(this.player.style); 
     330      } 
     331    }, 
    293332 
    294333    get muted () this.player.isMuted(), 
     
    610649      add('seek', 'seek', 'seekRelative'); 
    611650      add('fetch', 'fetch'); 
     651      add('fullscreen', 'fullscreen'); 
    612652    }, 
    613653