View
Theme
Font Style
7pt
8pt
9pt
10pt
11pt
Line Style
100%
110%
120%
130%
140%
Bold Keyword
Default
Inspector
Kkaefer
Eclipse
SQ Light
Lesser
Dark
Cobalt
Monokai
Rubyblue
Night
SQ Dark
Ambiance
Blackboard
Line Num.
Wrap Lines
Preview
Redraw
JS Tab
HTML Tab
CSS Tab
Live Tab
Prev. Tab
Next Tab
Browser
History…
Help
Edit
Settings
Auto Complete
Match Brackets
Match Highlight
Strip Whitespace
Auto Close Brackets
Auto Close Quotes
Show Print Margin
Undo
Redo
Delete
Select Line
Select All
Find & Replace
Find
Find in Repo.
Find Next
Find Previous
Replace Single
Replace All
Wrap Search
Revert
As Template
Diff Revision
Format
Compress
Text
Zen Coding
Indent
Tab Width
1
2
3
4
5
6
7
8
Indent Unit
1
2
3
4
5
6
7
8
Smart Indent
Use Tabs
Visible Tabs
Shift Left
Shift Right
Put Indent
Number
Increment by 1
Decrement by 1
Increment by 0.1
Decrement by 0.1
Increment by 10
Decrement by 10
Simple Math
Comment
Line
Move Up
Move Down
Copy Up
Copy Down
Go to Line…
Remove Line
Next Point
Prev. Point
Help
Share
Login
You can jump to the latest bin by adding
/latest
to your URL
×
z
Find
→
←
⟲
Replace
⊗
All
Replace
/* Darkroom Theme */ // Darkroom.Constants.js Darkroom.SIDEBAR_WIDTH=280;Darkroom.SIDEBAR_SCROLL=true;Darkroom.ANIMATION_ON=false;Darkroom.ANIMATION_FRAME_DELAY=20;var touch=(function(a){return"ontouchstart"in a||a.setAttribute&&a.setAttribute("ontouchstart","return;");})(document.createElement('i'));if(touch===undefined||window.chrome||(navigator.userAgent.indexOf("Firefox")!=-1)){Darkroom.IS_TOUCH_ENABLED=false;}else{Darkroom.IS_TOUCH_ENABLED=true;} Darkroom.FONTSIZE_SMALLSCREEN="9px";Darkroom.FONTSIZE="11px";Darkroom.is_user_interacting=false;Darkroom.isPortraitSmallTouch=function(){return(Darkroom.IS_TOUCH_ENABLED&&Darkroom.is_small_screen()&&(window.orientation==0||window.orientation==180));} // Darkroom.Sidebar.js var Darkroom;var $_GLOBALS;var mouse2D;var is_scrolling=false;(function(){mixin(Darkroom,{is_showing_sidebar:function(){return w_side>50;},toggle_sidebar:function(){var animate=Darkroom.ANIMATION_ON;if(Darkroom.is_showing_sidebar()){if(animate)Darkroom.close_sidebar_with_animation();else Darkroom.close_sidebar();}else{if(animate)Darkroom.open_sidebar_with_animation();else Darkroom.open_sidebar();}},close_sidebar:function(){w_side=0;Darkroom.paint();},close_sidebar_with_animation:function(){Darkroom.animate_sidebar("close");},open_sidebar:function(){w_side=Darkroom.SIDEBAR_WIDTH;Darkroom.paint();},open_sidebar_with_animation:function(){Darkroom.animate_sidebar("open");},animate_sidebar:function(direction){var is_opening=(direction=="open"),condition=is_opening?function(){return(new Date().getTime()-startTime>1400||w_side>=Darkroom.SIDEBAR_WIDTH);}:function(){return(new Date().getTime()-startTime>1400||w_side<=0);},process_position=is_opening?function(position){return(position+20);}:function(position){return(position-20);},final_action=is_opening?Darkroom.open_sidebar:Darkroom.close_sidebar;function animate(){if(condition()){final_action();return;} w_side=process_position(w_side);Darkroom.paint();setTimeout(animate,Darkroom.ANIMATION_FRAME_DELAY);} var startTime=new Date().getTime();animate();},draw_sidebar_mouse:function(c,h_available,h_scroll,h_background,requires_scrollbar){var MODULES=$_GLOBALS.MODULES;$_GLOBALS.drawMouse=true;mouse2D.save();mouse2D.beginPath();mouse2D.rect(0,y_sidebar,w_side,Math.max(0,Darkroom.height-y_sidebar));mouse2D.clip();mouse2D.clearRect(0,y_sidebar,w_side,Math.max(0,Darkroom.height-y_sidebar));var h_hidden=(Darkroom.height-y_sidebar)-h_side_content,top=(y_sidebar-12)+(h_hidden*n_side_scroll)>>0;if(Darkroom.IS_TOUCH_ENABLED){Darkroom.draw_sidebar_scrollbar_touch(c,h_scroll,h_available,h_background);} for(var key in MODULES){if(!MODULES[key].history)continue;var r=$.MODULES[key];top+=21;if(!Darkroom.IS_TOUCH_ENABLED){Mouse.drawArea({id:"toggle_0_"+key,dblclick:Darkroom.toggle,draw:{type:"rect",x:0,y:top-9,w:w_side,h:20},cursor:"default"});} Mouse.drawArea({id:"toggle_1_"+key,down:Darkroom.toggle,draw:{type:"rect",x:0,y:top-9,w:20,h:20},cursor:"default"});Mouse.drawArea({id:"reset_"+key,down:Darkroom.reset,draw:{type:"rect",x:w_side-52,y:top-9,w:22,h:20},cursor:"default"});Mouse.drawArea({id:"visible_"+key,down:Darkroom.visible,draw:{type:"rect",x:w_side-27,y:top-9,w:22,h:20},cursor:"default"});if(!MODULES[key].opened) continue;top+=7;var visible=MODULES[key].visible;var val=$.MODULES[key].draw({absTop:top+25,draw:false,drawMouse:true});top+=val;} mouse2D.restore();mouse2D.clearRect(w_side,y_sidebar,w_side_scroll,Math.max(0,Darkroom.height-y_sidebar));if(requires_scrollbar&&!Darkroom.IS_TOUCH_ENABLED){Darkroom.draw_sidebar_scrollbar_mouse(c,h_scroll,h_available,h_background);} if(Darkroom.is_small_screen()&&!Darkroom.IS_TOUCH_ENABLED){Mouse.drawArea({id:"toggle_menu",down:Darkroom.toggle_sidebar,draw:{type:"rect",x:w_side,y:140,w:24,h:48}});}},fmoveinterval:0,fmovewheel:function(e){if(e.wheelDelta){var value=-e.wheelDelta/120;}else if(e.detail){value=e.detail*2;} y_side_scroll=clamp(y_side_scroll+=Math.round(value),5,h_available-h_scroll-44);n_side_scroll=(y_side_scroll-5)/h_background;Darkroom.draw_sidebar(body2D);if(Darkroom.fmoveinterval)window.clearInterval(Darkroom.fmoveinterval);Darkroom.fmoveinterval=window.setInterval(function(){Darkroom.draw_sidebar(body2D,true);Darkroom.skipWheel=true;window.clearInterval(Darkroom.fmoveinterval);},50);},draw_sidebar_scrollbar_mouse:function(c,h_scroll,h_available,h_background){function scroll(n){var y_max=h_available-h_scroll-44;function go(){if(up==false){y_side_scroll=clamp(n,5,y_max);n_side_scroll=(y_side_scroll-5)/h_background;} Darkroom.draw_sidebar(body2D,up);};var up=false,interval;window.setTimeout(function(){if(up)return;interval=window.setInterval(go,50);},250);function f_up(){up=true;clearInterval(interval);Event.remove(window,"mouseup",f_up);go(true);};Event.add(window,"mouseup",f_up);go();};Mouse.drawArea({id:"sidebar_scroll_bg",down:function(o){var amount=(o.Y
h_side_content||h_available<50)||Darkroom.is_small_screen();Darkroom.SIDEBAR_SCROLL=requires_scrollbar;if(requires_scrollbar){(Darkroom.IS_TOUCH_ENABLED)?w_side_scroll=0:w_side_scroll=15;h_side_scroll=parseInt(h_scroll);y_side_scroll=Math.round((n_side_scroll*h_background)+5);}else{if(Darkroom.IS_TOUCH_ENABLED){w_side_scroll=0;h_side_scroll=parseInt(h_scroll);y_side_scroll=Math.round((n_side_scroll*h_background)+5);}else{w_side_scroll=1;h_side_scroll=Darkroom.height-y_sidebar;y_side_scroll=5;n_side_scroll=0;}} if(Darkroom.is_small_screen()&&!Darkroom.IS_TOUCH_ENABLED){var triggerX=Darkroom.is_showing_sidebar()?w_side:20;c.drawImage(gui_images["28x48_toggleMenu"],triggerX,140);Darkroom.positionSidebarPortrait();} c.save();c.beginPath();var w_draw;(Darkroom.IS_TOUCH_ENABLED)?w_draw=w_side:w_draw=w_side+w_side_scroll;c.rect(0,y_sidebar,w_draw,Math.max(0,Darkroom.height-y_sidebar));c.clip();c.fillStyle="#1c1c1c";c.fillRect(0,y_sidebar,w_side,Math.max(0,Darkroom.height-y_sidebar));var h_hidden=(Darkroom.height-y_sidebar)-h_side_content,top=(y_sidebar-12)+(h_hidden*n_side_scroll)>>0;for(var key in MODULES){if(!MODULES[key].history||!MODULES[key].display)continue;var visible=MODULES[key].visible;c.globalAlpha=visible?1:0.5;var type=null,g=c.createLinearGradient(0,(top+=2)+10,0,top+32);g.addColorStop(0.0,"#282828");g.addColorStop(1.0,"#1c1c1c");c.font="bold 8.5pt "+ctxFontName;c.fillStyle=g;c.fillRect(0,top+10,w_side,32);c.beginPath();c.moveTo(0,top+9.5);c.lineTo(w_side,top+9.5);c.strokeStyle="#191919";c.stroke();c.beginPath();c.moveTo(0,top+10.5);c.lineTo(w_side,top+10.5);c.strokeStyle="#0a0a0a";c.stroke();var opened=MODULES[key].opened;c.fillStyle=opened?"#FFF":"#7F7F7F";c.fillText(key,21,(top+=19)+6);MODULES[key].top=top+11;if(!opened){c.save();c.translate(-top+6,top+7);c.rotate(270*Math.PI/180);c.drawImage(gui_images.arrow,0,top);c.restore();}else{c.drawImage(gui_images.arrow,5,top-3);} c.drawImage(gui_images.module_reset,w_side-48,top-3);if(MODULES[key].visible){c.drawImage(gui_images.module_visible,w_side-23,top-4);}else{c.drawImage(gui_images.module_hidden,w_side-23,top-4);} if(!opened){c.globalAlpha=1;continue;} top+=7;var left=0,module=$.MODULES[key];top+=$.MODULES[key].draw({absTop:top+25,draw:true,drawMouse:false});c.globalAlpha=1;} if(is_scrolling==false){if(mouse){Darkroom.draw_sidebar_mouse(c,h_available,h_scroll,h_background,requires_scrollbar);}} c.restore();if(requires_scrollbar&&!Darkroom.IS_TOUCH_ENABLED){Darkroom.draw_sidebar_scrollbar(c,h_scroll);}},draw_sidebar_scrollbar:function(c,h_scroll){c.drawImage(gui_images.yslide_bg,w_side,y_sidebar,14,(Darkroom.height-y_sidebar>0?Darkroom.height-y_sidebar:0));c.drawImage(gui_images.yslide_bg_top,w_side,y_sidebar);c.drawImage(gui_images.yslide_bg_bottom,w_side,Darkroom.height-39);c.drawImage(gui_images.yslide_top,w_side,y_sidebar+y_side_scroll,15,7);c.drawImage(gui_images.yslide_middle,w_side,y_sidebar+y_side_scroll+7,15,h_scroll);c.drawImage(gui_images.yslide_bottom,w_side,y_sidebar+h_scroll+y_side_scroll+6,15,7);},toggle:function(id,n){var MODULES=$_GLOBALS.MODULES;if(!id||typeof(id)!="string") id=Mouse.id.substr(9);var previous=MODULES[id].opened;if(typeof n=="number"){MODULES[id].opened=n;}else{MODULES[id].opened=!MODULES[id].opened;} if(id=="Levels"&&previous==true){Darkroom.srcHistogram.createAnalyze();Darkroom.srcHistogram.applyColorMatrix();} var prev=Darkroom.hasSidebar;Darkroom.hasSidebar=Darkroom.draw_sidebar(body2D,true);if(Darkroom.hasSidebar!=prev){Darkroom.center(Darkroom.viewW,Darkroom.viewH);Darkroom.draw_viewbox(body2D);Darkroom.viewportController.viewport.drawImage($image)}},reset:function(){var id=Mouse.id.substr(Mouse.id.indexOf("_")+1),module=$_GLOBALS.MODULES[id],visible=false;var type=module.type;var viewport=Darkroom.viewportController.viewport;module.visible=true;Darkroom.TimeMachine.reset(id);switch(module.type){case"GeoMatrix":Darkroom.straighten=0;viewport.rotate=Darkroom.rotate;viewport.drawImage($image);break;default:break;} viewport.drawImage($image);Darkroom.srcHistogram.applyColorMatrix();Darkroom.draw_sidebar(body2D,true);},showModule:function(id){var module=$_GLOBALS.MODULES[id];if(module.visible==false){module.visible=true;Darkroom.draw_sidebar(body2D,true);}},visible:function(){var id=Mouse.id.substr(Mouse.id.indexOf("_")+1);var module=$_GLOBALS.MODULES[id];var visible=!module.visible;var type=module.type;module.visible=visible;var data=clone(Darkroom.TimeMachine.getCurrentValue(id));data.visible=!visible;Darkroom.TimeMachine.add(id,data);var viewport=Darkroom.viewportController.viewport;if(type=="GeoMatrix"){viewport.rotate=Darkroom.rotate+(visible?Darkroom.straighten:0);} viewport.drawImage($image);Darkroom.srcHistogram.applyColorMatrix();Darkroom.draw_sidebar(body2D,true);},positionSidebarLandscape:function(){y_sidebar=y_topbar;w_side=Darkroom.SIDEBAR_WIDTH;},positionSidebarPortrait:function(){y_sidebar=280;w_side=320;}});})(); // Darkroom.Topbar.js var Darkroom;(function(){Darkroom.draw_topbar=function(c){var meta=Key.meta,small_screen=Darkroom.is_small_screen();function draw_mouse(func,id,left,top,width,height,cursor){var attach=typeof func=="object"?function(){foxyface.openWindow(func)}:func;if(Darkroom.IS_TOUCH_ENABLED){Mouse.drawArea({id:id,cursor:cursor,touchstart:attach,draw:{type:"rect",x:left,y:top,w:width,h:height}});}else{Mouse.drawArea({id:id,cursor:cursor,down:attach,draw:{type:"rect",x:left,y:top,w:width,h:height}});}};function draw_16x16(image,text,o){c.drawImage(gui_images[image],left,6,16,16);c.beginPath();c.fillText(text,left+23.5,18);var width=c.measureText(text).width;if(o) draw_mouse(o,image,left,6,width+30,16,"pointer");left+=width+53;};function draw_28x28(image,text,o){var width=c.measureText(text).width,c_image=left-(28/2),c_text=left-(width/2),diff=(c_image-c_text)>>0;c.drawImage(gui_images[image],left+diff,36,28,28);c.beginPath();c.fillStyle=(Darkroom.tool==common[text])?"#FFF":"#999";c.fillText(text,(left>>0),75);if(o) draw_mouse(o,image,left-10,36,width+20,40,"pointer");left+=width+26;};function draw_18x18(image,text,o){var width=c.measureText(text).width,c_image=left-(18/2),c_text=left-(width/2),diff=(c_image-c_text)>>0;c.drawImage(gui_images[image],left+diff,36,18,18);c.beginPath();c.fillStyle="#999";c.fillText(text,(left)>>0,65);if(o) draw_mouse(o,image,left-10,36,width+20,40,"pointer");left+=width+26;};function draw_image(image,x,y,width,height){c.drawImage(image,x,y,width,height);} var width=Darkroom.width,height=Darkroom.height,scale=Darkroom.scale||1;mouse2D.clearRect(0,0,width,y_topbar);c.drawImage(gui_images["topbar"],0,0,width,y_topbar);var left=0;left+=14;c.fillStyle="#FFFFFF";c.font="11px "+ctxFontName;var text=interface_trans_o;draw_16x16("16x16_open",text.Open,foxyface.open);draw_16x16("16x16_save",text.Save,foxyface.save);var tmp=text.Help;left=width-(c.measureText(tmp).width+52*1);draw_16x16("16x16_help",text.Help,foxyface.help);if(!small_screen){var tmp=c.measureText(prefs.image.filename).width;left=((width-tmp-53)/2)>>0;draw_16x16("16x16_window",prefs.image.filename);} if(small_screen){left=139;}else{left=309;} if(small_screen){c.drawImage(gui_images["logo_small"],16,32,39,38);draw_mouse(function(){window.location=ROOT;},gui_images["logo_small"],55,42,74,30,"pointer");}else{c.drawImage(gui_images["logo"],16,37,197,38);draw_mouse(function(){window.location=ROOT;},gui_images["logo"],55,42,74,30,"pointer");} if(small_screen){left-=50;if(meta){draw_18x18("28x28_rotateLeft",text.Rotate,function(){Darkroom.imageRotate("left");});left-=10;draw_18x18("28x28_mirrorVertical",text.Mirror,function(){Darkroom.imageMirror("vertical");});}else{draw_18x18("28x28_rotateRight",text.Rotate,function(){Darkroom.imageRotate("right");});left-=10;draw_18x18("28x28_mirrorHorizontal",text.Mirror,function(){Darkroom.imageMirror("horizontal");});}}else{if(meta){draw_28x28("28x28_rotateLeft",text.Rotate,function(){Darkroom.imageRotate("left");});draw_28x28("28x28_mirrorVertical",text.Mirror,function(){Darkroom.imageMirror("vertical");});}else{draw_28x28("28x28_rotateRight",text.Rotate,function(){Darkroom.imageRotate("right");});draw_28x28("28x28_mirrorHorizontal",text.Mirror,function(){Darkroom.imageMirror("horizontal");});}} if(small_screen){left-=10;draw_18x18("28x28_crop",text.Crop,Darkroom.imageCrop);left-=10;draw_18x18("28x28_redeye",text["Red Filter"],Darkroom.filterRedeye);}else{draw_28x28("28x28_crop",text.Crop,Darkroom.imageCrop);draw_28x28("28x28_redeye",text["Red Filter"],Darkroom.filterRedeye);} left=width-(c.measureText(text.Undo).width+1*26);if(small_screen){left+=20;if(meta){draw_18x18("28x28_redo",text.Redo,Darkroom.redo);}else{draw_18x18("28x28_undo",text.Undo,Darkroom.undo);}}else{if(meta){draw_28x28("28x28_redo",text.Redo,Darkroom.redo);}else{draw_28x28("28x28_undo",text.Undo,Darkroom.undo);}}};var highlight=function(){delete Darkroom.tool;setTimeout(function(){Darkroom.draw_topbar(body2D);},50);Event.remove(window,"mouseup",highlight);};Darkroom.undo=function(){var id=Darkroom.TimeMachine.getCurrentId(),module=$_GLOBALS.MODULES[id],minimum=$_GLOBALS.MODULES.length-1;Darkroom.TimeMachine.undo(minimum);Darkroom.viewportController.viewport.drawImage($image);Darkroom.draw_sidebar(body2D,true);};Darkroom.redo=function(){Darkroom.TimeMachine.redo();var id=Darkroom.TimeMachine.getCurrentId(),module=$_GLOBALS.MODULES[id];Darkroom.viewportController.viewport.drawImage($image);Darkroom.draw_sidebar(body2D,true);};Darkroom.imageMirror=function(type){Darkroom.toolSwitch("mirror");Event.add(window,"mouseup",highlight);if(type=="horizontal"){var mirror=Darkroom.viewportController.viewport.mirrorX;Darkroom.viewportController.viewport.mirrorX=!mirror;}else{var mirror=Darkroom.viewportController.viewport.mirrorY;Darkroom.viewportController.viewport.mirrorY=!mirror;} Darkroom.TimeMachine.add("Mirror",{Mirror:{MirrorX:Darkroom.viewportController.viewport.mirrorX,MirrorY:Darkroom.viewportController.viewport.mirrorY}});Darkroom.viewportController.viewport.drawImage($image);Darkroom.paint({topbar:true});};Darkroom.imageRotate=function(type){Darkroom.toolSwitch("rotate");Event.add(window,"mouseup",highlight);if(type=="right"){Darkroom.rotate=(Darkroom.rotate+90)%360;}else{Darkroom.rotate=(Darkroom.rotate-90);if(Darkroom.rotate<0){Darkroom.rotate+=360;}} Darkroom.TimeMachine.add("Rotate",{Rotate:Darkroom.rotate});Darkroom.viewportController.viewport.rotate=Darkroom.rotate+Darkroom.straighten;Darkroom.viewportController.viewport.drawImage($image);Darkroom.paint({topbar:true});};Darkroom.imageCrop=function(){var root=Darkroom.Raster.Crop;if(Darkroom.tool=="crop"&&root.cropW==root.cropH&&root.cropW==0){root.viewmode("disabled");delete Darkroom.tool;Darkroom.paint({topbar:true});return;} var viewport=Darkroom.viewportController.viewport;viewport.srcBoundingBox=undefined;viewport.drawImage($image);Darkroom.toolSwitch("crop");root.construct();root.viewmode((root.view=="cropbox")?"cropped":"cropbox");};Darkroom.filterRedeye=function(){var root=Darkroom.Raster.RedEye;if(Darkroom.tool=="redeye"){root.viewmode("disabled");delete Darkroom.tool;Darkroom.paint({viewbox:true,topbar:true});return;} Darkroom.toolSwitch("redeye");root.construct();root.apply();Darkroom.draw_topbar(body2D);};var common={"Crop":"crop","Red Filter":"redeye","Mirror":"mirror","Rotate":"rotate","Undo":"undo","Redo":"redo"};Darkroom.toolSwitch=function(id){if(Darkroom.tool==id)return;if(Darkroom.tool=="crop"){var root=Darkroom.Raster.Crop;if(!root.isCropped){} Darkroom.Raster.Crop.viewmode("disabled");}else if(Darkroom.tool=="redeye"){Darkroom.Raster.RedEye.viewmode("disabled");}else if(Darkroom.tool=="mirror"){}else if(Darkroom.tool=="rotate"){} Darkroom.tool=id;};})(); // Darkroom.Viewbox.js var Darkroom;(function(){mixin(Darkroom,{draw_viewbox:function(c){var x_side=w_side+w_side_scroll;var vheight=Math.max(0,Darkroom.height-y_sidebar);var vwidth=Math.max(0,Darkroom.width-x_side);c.fillStyle="#292929";c.fillRect(x_side,y_topbar,vwidth,vheight);},getOffset:function(){var border=0;var topbar=(y_topbar+border);var sidebar=w_side+w_side_scroll+border;var vheight=Math.max(0,Darkroom.height-topbar);var vwidth=Math.max(0,Darkroom.width-sidebar);if(Darkroom.isPortraitSmallTouch()){var pushUpImage=-17;Darkroom.viewX=(window.innerWidth/2)-(Darkroom.viewW/2);Darkroom.viewY=topbar+pushUpImage;}else{Darkroom.viewX=(((window.innerWidth-Darkroom.viewW-sidebar)/2+sidebar)>>0)-(border/2);Darkroom.viewY=(((window.innerHeight-Darkroom.viewH-topbar)/2+topbar)>>0)-(border/2);} return[Darkroom.viewX,Darkroom.viewY];},repaint:function(w,h,force){if(typeof(w)=='undefined'){force=true;} if(!$image)return;var regionW=$image.width;var regionH=$image.height;var cropped=false;if(Darkroom.cropW&&Darkroom.cropH){regionW=Darkroom.cropW;regionH=Darkroom.cropH;cropped=true;} if(Darkroom.rotate==90||Darkroom.rotate==270){var tmp=regionW;regionW=regionH;regionH=tmp;} var border=0;var topbar=(y_topbar+border);var sidebar=w_side+w_side_scroll+border;var vheight=Math.max(0,Darkroom.height-topbar);var vwidth=Math.max(0,Darkroom.width-sidebar);if(Darkroom.isPortraitSmallTouch()){var pushUpImage=-17;min=Math.max(((regionH)/(((Darkroom.height-(Darkroom.height-y_sidebar))-topbar)-pushUpImage)),(regionW/Darkroom.width));Darkroom.viewW=Math.round(regionW/min);Darkroom.viewH=Math.round((regionH)/min);Darkroom.viewX=(Darkroom.width/2)-(Darkroom.viewW/2);Darkroom.viewY=topbar+pushUpImage;}else{min=Math.max(regionH/vheight,regionW/vwidth);Darkroom.viewW=Math.round(regionW/min);Darkroom.viewH=Math.round((regionH)/min);Darkroom.viewX=(((Darkroom.width-Darkroom.viewW-sidebar)/2+sidebar)>>0)-(border/2);Darkroom.viewY=(((Darkroom.height-Darkroom.viewH-topbar)/2+topbar)>>0)-(border/2);} if(Darkroom.viewportController&&Darkroom.viewportController.canvasWrapper){var off=Darkroom.getOffset();Darkroom.viewportController.canvasWrapper.style.left=off[0]+'px';Darkroom.viewportController.canvasWrapper.style.top=off[1]+'px';Darkroom.viewportController.canvasWrapper.style.position='absolute';Darkroom.viewportController.canvasWrapper.style.zIndex=1;Darkroom.viewportController.src2DCanvas.style.zIndex=1;Darkroom.viewportController.photoCanvas.style.zIndex=1;} if(Darkroom.viewportController) if(Darkroom.viewportController.viewport){var highQuality=false;if(force)highQuality=true;else if(0){if(Darkroom.highRes)clearTimeout(Darkroom.highRes);Darkroom.highRes=setTimeout(Darkroom.resize,1000);} var scale;var ratio=Darkroom.viewW/Darkroom.viewH;var ratio2=$image.width/$image.height;var pixelRatio=Darkroom.viewportController.pixelRatio;if(ratio>ratio2) scale=$image.width/(Darkroom.viewW*1/pixelRatio);else scale=$image.height/(Darkroom.viewH*1/pixelRatio);scale=1/scale;scale*=Darkroom.scale;Darkroom.viewportController.src2DCanvas.style.width=(scale*$image.width*pixelRatio)+'px';Darkroom.viewportController.src2DCanvas.style.height=(scale*$image.height*pixelRatio)+'px';return;Darkroom.viewportController.viewport.scaleRatio=scale;Darkroom.viewportController.viewport.src2DCanvas.width*=1;Darkroom.viewportController.viewport.drawRotation(Darkroom.rotate);}},populateSrc2D:function(){return;if($image&&Darkroom.viewW&&Darkroom.viewH){src2D.save();var w=Darkroom.viewW;var h=Darkroom.viewH;if(Darkroom.rotate){src2D.translate(w/2,h/2);src2D.rotate(Darkroom.rotate*Math.PI/180);if(Darkroom.rotate==90||Darkroom.rotate==270){var tmp=w;w=h;h=tmp;} src2D.translate(-(w/2),-(h/2));} if(Darkroom.cropW&&Darkroom.cropH){src2D.drawImage($image,Math.floor(Darkroom.cropX),Math.floor(Darkroom.cropY),Math.floor(Darkroom.cropW),Math.floor(Darkroom.cropH),0,0,w,h);}else{src2D.drawImage($image,0,0,w,h);};src2D.restore();}},pinchZoomViewport:function(e){Darkroom.photo_w=Darkroom.viewW;Darkroom.photo_h=Darkroom.viewH;Darkroom.original_photo_w=Darkroom.viewW;Darkroom.original_photo_h=Darkroom.viewH;var scaleFactor;if(e.scale<1){scaleFactor=e.scale;if(e.scale<.5){scaleFactor=.5;}} else{scaleFactor=(e.scale/10)+1;if(e.scale>2){scaleFactor=2;}} Darkroom.viewW=(Darkroom.photo_w*scaleFactor);Darkroom.viewH=(Darkroom.photo_h*scaleFactor);},pinchZoomViewportEnds:function(){Darkroom.photo_w=Darkroom.viewW;Darkroom.photo_h=Darkroom.viewH;},positionViewportPortrait:function(){window.addEventListener("gesturechange",Darkroom.pinchZoomViewport,false);window.addEventListener("gestureend",Darkroom.pinchZoomViewportEnds,false);},positionViewportLandscape:function(){window.removeEventListener("gesturechange",Darkroom.pinchZoomViewport,false);window.removeEventListener("gestureend",Darkroom.pinchZoomViewportEnds,false);}});})(); /* Loaders */ // Scriptograph.js Darkroom.Scriptograph={};(function(){Darkroom.Scriptograph={add:function(modules){function addModule(){if($_GLOBALS.MODULES[id])return;var MODULES=$_GLOBALS.MODULES,module=modules[id],info=(MODULES[id]={});Darkroom.TimeMachine.registerModule(id,info);info.display=(module.display=="none")?false:true;if(typeof module.oop=="number"){$_GLOBALS.OOP.splice(info.oop,0,id);var arr=$_GLOBALS.OOP;for(var n=info.oop;n
"+key,drawMouse:drawMouse,draw:draw,x:78,y:absTop+top},o[key]);}} return top;};info.opened=module.opened==false?false:true;info.visible=module.visible==false?false:true;info.filter=module.filter?module.filter:null;info.history={current:0,d:{}} info.type=module.type;var def=module.getDefault();Darkroom.TimeMachine.add(id,def);$.MODULES[id]=module;} for(var id in modules){addModule();}},remove:function(modules){function remove(key){delete $_GLOBALS.MODULES[key];delete $_GLOBALS.OOP[key];};if(typeof modules=="string"){remove(modules);} else{for(var key in modules){remove(key);}}}};$.MODULES={};$_GLOBALS.OOP=[];$_GLOBALS.MODULES={};$_GLOBALS.HISTORY={d:[]};$_GLOBALS.FILTERS=[];})(); // TimeMachine.js var TimeMachine;var ColorMatrix;(function(){TimeMachine=function(){var MODULES={},HISTORY={d:[]};function getPrevious(history){var d=history.d,id=Number(history.current);while(id>=0&&--id&&!d[id]);if(!d[id]){return Number(history.current);}else{return id;}};function getNext(history){var d=history.d,id=Number(history.current),last=HISTORY.d.length;while(id
current){var type=HISTORY.d[length],history=MODULES[type].history;delete HISTORY.d[length];delete history.d[length];var id=getPrevious(history);} var temp=[];for(var key in HISTORY.d){temp[key]=HISTORY.d[key];} HISTORY.d=temp;} var id=HISTORY.d.length,history=MODULES[moduleID]?MODULES[moduleID].history:{d:[]};HISTORY.d.push(moduleID);HISTORY.current=id;history.d[id]=data;history.current=id;},undo:function(minimum){if(HISTORY.current>minimum){var moduleID=HISTORY.d[HISTORY.current--],history=MODULES[moduleID].history;history.current=getPrevious(history);if($_GLOBALS.MODULES[moduleID]){$_GLOBALS.MODULES[moduleID].visible=history.d[history.current].visible;}}},redo:function(){if(HISTORY.current<(HISTORY.d.length-1)){var moduleID=HISTORY.d[++HISTORY.current],history=MODULES[moduleID].history;history.current=getNext(MODULES[moduleID].history);if($_GLOBALS.MODULES[moduleID]){$_GLOBALS.MODULES[moduleID].visible=history.d[history.current].visible;}}},reset:function reset(moduleID){var o=MODULES[moduleID].history,first=$_GLOBALS.MODULES[moduleID].oop,element=o.d[first]||$.MODULES[moduleID].getDefault();if(JSON.stringify(o.d[o.current])==JSON.stringify(element)){return;} o.current=HISTORY.d.length;o.d[o.current]=clone(element);HISTORY.current=o.current;HISTORY.d.push(moduleID);},item:function(index){var type=HISTORY.d[index],history=MODULES[type].history;return history.d[history.current];},getCurrentId:function(){return HISTORY.d[HISTORY.current];},getDefaultValue:function(id){if(id in MODULES){var history=MODULES[id].history;return history.d[$_GLOBALS.MODULES[id].oop];} return;},getCurrentValue:function(id){if(id in MODULES){var history=MODULES[id].history;return history.d[history.current];} return;},getCurrentColorTable:function(){if(!('Levels'in MODULES))return;if(!('Levels'in Darkroom.Raster))return;if(MODULES.Levels.visible==false)return;var values={},moduleID=MODULES["Levels"],history=moduleID.history,current=history.d[history.current];return Darkroom.Raster.Levels.apply(current);},getDefaultColorTable:function(){if(!('Levels'in MODULES))return;if(!('Levels'in Darkroom.Raster))return;var values={},moduleID=MODULES["Levels"],history=moduleID.history,current=history.d[0];return Darkroom.Raster.Levels.apply(current);},getCurrentColorMatrix:function(){if(typeof(ColorMatrix)=='undefined')return;var values=colorMatrixValues();return(new ColorMatrix(values)).Matrix;},getDefaultColorMatrix:function(){if(typeof(ColorMatrix)=='undefined')return;var values=colorMatrixValues(0);return(new ColorMatrix(values)).Matrix;},getCurrentScriptographList:function(){}};root.__defineGetter__("length",function(){return HISTORY.d.length;});root.__defineGetter__("position",function(){return HISTORY.current;});return root;};})(); // Darkroom.Bootstrap.js var dragDropOverlay;var ROOT="/",DIR="/",$image,$image_name=null,$image_sources={},$stop,$time,active2D,body2D,mouse2D,prefs={user:"mud",sidebar:{modules:{},opened:true,width:200},image:{orientation:"fillpage",url:"/mugtug/mudx/481680804.jpg",filename:"Darkroom beta",width:1400,height:2000,commands:{}},language:$_GLOBALS.agent.langid,units:"px"},loader,gui_images,w_side=Darkroom.IS_TOUCH_ENABLED?Darkroom.SIDEBAR_WIDTH:278,y_topbar=86,y_sidebar=86;w_side_scroll=15,y_side_scroll=5,n_side_scroll=0,h_side_scroll=0,h_side_content=0,h_available=0,h_scroll=0,h_background=0,Filters={GeoMatrix:[],ColorMatrix:{},ColorTable:{},Effects:{}},ctxFontName="Helvetica";function setupDragEvents(){dragDropOverlay=document.createElement("form");dragDropOverlay.action="http://mugtug.com/darkroom/";dragDropOverlay.method="post";dragDropOverlay.enctype="multipart/form-data";dragDropOverlay.id="dragDropOverlay";dragDropOverlay.style.zIndex=5;dragDropOverlay.style.position='absolute';dragDropOverlay.style.left="0px";dragDropOverlay.style.top="0px";dragDropOverlay.style.width=(window.innerWidth-296)+"px";dragDropOverlay.style.height=(window.innerHeight-91)+"px";dragDropOverlay.style.marginLeft='295px';dragDropOverlay.style.marginTop='90px';dragDropOverlay.style.background='transparent';dragDropOverlay.onmousedown=function(e){e.preventDefault();};dragDropOverlay.ondragstart=function(e){e.preventDefault();};body2D.canvas.ondragstart=function(e){e.preventDefault();};body2D.canvas.onmousedown=function(e){e.preventDefault();};active2D.canvas.ondragstart=function(e){e.preventDefault();};dragDropOverlay.ondrop=function(event){if(!DragDrop.Drop(this,event)){foxyface.openWindow(foxyface.open,true);}} dragDropOverlay.ondragover=function(event){DragDrop.Over(dragDropOverlay,event);} dragDropOverlay.ondragenter=function(event){DragDrop.Enter(dragDropOverlay,event);} dragDropOverlay.ondragleave=function(event){DragDrop.Leave(dragDropOverlay,event);} if(typeof(FileReader)=='undefined')dragDropOverlay.innerHTML=''+'
'+'';document.body.appendChild(dragDropOverlay);};Darkroom.removeDefaultEvents=function(){Key.active={};Event.remove(document,"mousewheel",Darkroom.fmovewheel);};Darkroom.addDefaultEvents=function(){Event.add(document,"mousewheel",Darkroom.fmovewheel);Key.active={"meta":function(event,state,keyCode){Darkroom.draw_topbar(body2D);return true;},"8":function(event,state,keyCode){if(state=="down"){Darkroom.undo();}},"8_meta":function(event,state,keyCode){if(state=="down"){Darkroom.redo();}},"90_meta":function(event,state,keyCode){if(state=="down"){Darkroom.undo();}},"90_meta_shift":function(event,state,keyCode){if(state=="down"){Darkroom.redo();}},"79_meta":function(event,state,keyCode){if(state=="down"){foxyface.openWindow(foxyface.open);}},"83_meta":function(event,state,keyCode){if(state=="down"){foxyface.openWindow(foxyface.save);}},"91":function(event,state,keyCode){if(state=="up"){Darkroom.imageRotate("left");Darkroom.toolSwitch("");Darkroom.draw_topbar(body2D);}else if(state=="down"){Darkroom.toolSwitch("rotate");Darkroom.draw_topbar(body2D);}},"93":function(event,state,keyCode){if(state=="up"){Darkroom.imageRotate("right");Darkroom.toolSwitch("");Darkroom.draw_topbar(body2D);}else if(state=="down"){Darkroom.toolSwitch("rotate");Darkroom.draw_topbar(body2D);}}};} Darkroom.unload=function(event){var data=clone(prefs);data.sidebar.modules=clone($_GLOBALS.MODULES);var cookie=data,abbrev={};if(typeof(__History)!="undefined"){for(var key in __History){var r=__History[key];abbrev[key]=r.d[r.current];}} data.image.commands=abbrev;$.cookie(JSON.stringify(cookie));var session=data;if(typeof(__History)!="undefined")data.image.history=clone(__History);$.session(JSON.stringify(session));};Darkroom.paint=function(options){if(!options){options={topbar:true,sidebar:true,viewbox:true};} if(options.topbar){Darkroom.draw_topbar(body2D);} if(options.sidebar){Darkroom.draw_sidebar(body2D,true);} if(options.viewbox){Darkroom.repaint(Darkroom.viewW,Darkroom.viewH);Darkroom.draw_viewbox(body2D);}};Darkroom.blur=function(e){Darkroom.IS_FOCUSED=false;if(applicationCache){try{applicationCache.update();}catch(e){1;}} if(Key.meta){Darkroom.draw_topbar(body2D);}};Darkroom.focus=function(e){Darkroom.IS_FOCUSED=true;if(Key.meta){Key.meta=false;Darkroom.draw_topbar(body2D);}};Darkroom.error=function(e){};Darkroom.events=function(){if(Darkroom.IS_TOUCH_ENABLED){Event.add(document,"mousedown",Mouse.down);Event.add(document,"touchstart",Mouse.touchstart);Event.add(document,"touchmove",Mouse.touchmove);Event.add(document,"touchmove",Mouse.touchdrag);Event.add(document,"touchend",Mouse.touchend);CustomEvents.subscribe("onViewportResizeComplete",Darkroom.resizeSidebar);Event.add(body2D.canvas,"touchstart",Mouse.touchPrevent);}else{Event.add(document,"mousedown",Mouse.down);Event.add(document,"contextmenu",Mouse.menu);Event.add(document,"mousewheel",Mouse.wheel);Event.add(document,"mouseup",Mouse.up);Event.add(document,"mousemove",Mouse.move);Event.add(document,"dblclick",Mouse.dblclick);Event.add(document,"keydown",Key.down);Event.add(document,"keyup",Key.up);Event.add(document,"keypress",Key.press);Event.add(document,"blur",Key.clear);} setupDragEvents();Darkroom.addDefaultEvents();Event.add(window,"error",Darkroom.error);Event.add(window,"blur",Darkroom.blur);Event.add(window,"focus",Darkroom.focus);Event.add(window,"beforeunload",Darkroom.unload);Event.add(window,"resize",Darkroom.resize);};Darkroom.removeEvents=function(){if(Darkroom.IS_TOUCH_ENABLED){Event.remove(document,"mousedown",Mouse.down);Event.remove(document,"touchstart",Mouse.touchstart);Event.remove(document,"touchmove",Mouse.touchmove);Event.remove(document,"touchmove",Mouse.touchdrag);Event.remove(document,"touchend",Mouse.touchend);Event.remove(body2D.canvas,"touchstart",Mouse.touchPrevent);}else{Event.remove(document,"mousedown",Mouse.down);Event.remove(document,"contextmenu",Mouse.menu);Event.remove(document,"mousewheel",Mouse.wheel);Event.remove(document,"mouseup",Mouse.up);Event.remove(document,"mousemove",Mouse.move);Event.remove(document,"dblclick",Mouse.dblclick);Event.remove(document,"keydown",Key.down);Event.remove(document,"keyup",Key.up);Event.remove(document,"keypress",Key.press);Event.remove(document,"blur",Key.clear);} setupDragEvents();Darkroom.addDefaultEvents();Event.add(window,"error",Darkroom.error);Event.add(window,"blur",Darkroom.blur);Event.add(window,"focus",Darkroom.focus);Event.add(window,"beforeunload",Darkroom.unload);Event.add(window,"resize",Darkroom.resize);};function defaultScriptMenu(){Darkroom.Scriptograph.add({"Straighten":{"Rotate":GUI.X_Slider({id:"Straighten->Rotate",type:"GeoMatrix",clamp:[-25.0,0.0,25.0]})},"Levels":{type:"ColorLookupTable",Levels:Darkroom.Raster.Levels},"White Balance":{"Temp":GUI.X_Slider({id:"White Balance->Temp",type:"ColorMatrix",clamp:[-64.0,0.0,64.0],color:["#568fcf","#f7e146"]}),"Tint":GUI.X_Slider({id:"White Balance->Tint",type:"ColorMatrix",clamp:[-64.0,0.0,64.0],color:["#00ae47","#c73baf"]})},"Exposure":{"Exposure":GUI.X_Slider({id:"Exposure->Exposure",type:"ColorMatrix",clamp:[-2.0,0.0,2.0]}),"Brightness":GUI.X_Slider({id:"Exposure->Brightness",type:"ColorMatrix",clamp:[-100.0,0.0,100.0]})},"Enhance":{"Contrast":GUI.X_Slider({id:"Enhance->Contrast",type:"ColorMatrix",clamp:[-0.5,0.0,0.5]}),"Saturation":GUI.X_Slider({id:"Enhance->Saturation",type:"ColorMatrix",clamp:[0.0,1.0,2.0]})},"Effects":{type:"Effects",Effects:Darkroom.Raster.Effects},"Rotate":{type:"Rotate",display:"none",Rotate:{getDefault:function(){return 0;}}},"Mirror":{type:"Mirror",display:"none",Mirror:{getDefault:function(){return{MirrorX:false,MirrorY:false}}}},"Crop":{type:"Crop",display:"none"},"RedEye":{type:"RedEye",display:"none"}});};var speedTestStartTime=0;Event.add(window,"load",function(){$.metrics=ScreenMetrics();Darkroom.width=window.innerWidth;Darkroom.height=window.innerHeight;setTimeout(startBodyTouch,2000);active2D=Canvas2D.add(Darkroom.width,Darkroom.height,"active","z-index: 3; display: none;");body2D=Canvas2D.add(Darkroom.width,Darkroom.height,"body","z-index: 1;");mouse2D=Canvas2D.add(Darkroom.width,Darkroom.height,"mouse","display: none; z-index: 3;");preview2D=Canvas2D.add(100,100,"preview","z-index: 3; display: none;");if(0) $("#mouse").setAttribute("style","display: block; z-index: 3; opacity: 0.9");if(typeof(TEST)!='undefined')TEST.element("div","color: #fff");var qsearch=parse.qstring(window.location.search.substr(1)),qhash=parse.qstring(window.location.hash.substr(1));Darkroom.TimeMachine=TimeMachine();Darkroom.srcHistogram=new Darkroom.Raster.Histogram();Darkroom.dstHistogram=new Darkroom.Raster.Histogram();Darkroom.Histogram.dirty=true;if(0){loader=Canvas2D.Loader(9,{X:(Darkroom.width-345)/2+345,Y:(Darkroom.height-53)/2+53},25,{W:7,H:30},"0, 0, 0");loader.start();} if($_GLOBALS.font.name){ctxFontName=$_GLOBALS.font.name;Canvas2D.Typeface(CanvasRenderingContext2D.prototype);} if(0)Darkroom.setLanguage($_GLOBALS.agent.lang);interface_trans=["Open","Save","Print","Help","Share","Login","Undo","Redo","Mirror","Rotate","Crop","Straighten","Customize","Red Filter"];interface_trans_o={};for(var key in interface_trans) interface_trans_o[interface_trans[key]]=interface_trans[key];defaultScriptMenu();Darkroom.events();Darkroom.resize();var view={};view.meetZoom=true;view.meetFit=4 view.scale=1;view.useCSS=false;Darkroom.viewportController=new ViewportController();var viewportController=Darkroom.viewportController;viewportController.viewportConfig=view;viewportController.effectController=Darkroom.ViewportEffectsController;if(false&&qsearch.mud){foxyface.openWindow(foxyface.open);setTimeout(function(){FormInputSelect.update($("#foxytabs_open"),"f_providers");},1000)} if(false&&qsearch.mud){for(var i=0;i
1){s[1]=decodeURIComponent(s[1]);} if(s.length>1&&(s[1].indexOf('http://')==0||s[1].indexOf('https://')==0)){console.debug('opening image from hash',s[1]);APIs.url.openImage(s[1]);} else if(!LocalStorageManager.loadCurrentImage()){var image=(function(){var element=document.createElement("canvas"),ctx=element.getContext("2d");var width=300,halfWidth=width/2,rotate=(1/360)*Math.PI*2,offset=Darkroom.SIDEBAR_SCROLL?10:0,ratio=((Darkroom.width-Darkroom.SIDEBAR_WIDTH-offset)/(Darkroom.height-y_topbar)),left=-halfWidth/4,top=-halfWidth/2;ctx.canvas.width=halfWidth*ratio;ctx.canvas.height=halfWidth;function func(o){return Color.HEX_STRING(Color.RGB_HEX(Color.HSV_RGB(o)));};for(var n=0;n<=359;n++){var gradient=ctx.createLinearGradient(left+halfWidth,top,left+halfWidth,top+halfWidth),color=Color.HSV_RGB({H:(n+70)%360,S:100,V:100});gradient.addColorStop(0,"#000");gradient.addColorStop(.5,"rgba("+color.R+","+color.G+","+color.B+",1)");gradient.addColorStop(1,"#FFF");ctx.beginPath();ctx.moveTo(left+halfWidth,top);ctx.lineTo(left+halfWidth,top+halfWidth);ctx.lineTo(left+halfWidth+2,top+halfWidth);ctx.lineTo(left+halfWidth+5,top);ctx.fillStyle=gradient;ctx.fill();ctx.translate(left+halfWidth,top+halfWidth);ctx.rotate(rotate);ctx.translate(-(left+halfWidth),-(top+halfWidth));} return ctx.canvas.toDataURL();})();createFileOpenImage({data:image});} document.body.addEventListener('touchstart',function(e){e.preventDefault();},false);});var lastTouch;var touchReceiver;function startTouch(element,mouseDownListener,mouseMoveListener,mouseUpListener){touchReceiver=element;if(!element)return;touchReceiver.ontouchstart=function(e){if(e.targetTouches.length!=1)return false;if(e.touches[0].pageY>y_topbar){if(e.touches[0].pageX>Darkroom.viewX){if(w_side>w_side_scroll){if((e.touches[0].pageY>(Darkroom.viewY+2))&&(e.touches[0].pageY<(Darkroom.viewY+Darkroom.viewH-2))){w_side=80;Darkroom.repaint();return;}}}else{if(w_side<(Darkroom.width-150)){w_side=(Darkroom.width-150);Darkroom.repaint();return;}}} lastTouch=e.touches[0];mouseDownListener(lastTouch);return false;} touchReceiver.ontouchmove=function(e){e.preventDefault();if(e.targetTouches.length!=1)return false;lastTouch=e.touches[0];mouseMoveListener(lastTouch);return false;} touchReceiver.ontouchend=function(e){e.preventDefault();if(e.targetTouches.length>0)return false;mouseUpListener(lastTouch);return false;} touchReceiver.ontouchcancel=function(e){}} function startBodyTouch(){} function stopBodyTouch(){}
Darkroom
@media print { canvas { display: none; } #photo { display: block; } } @media screen { canvas, body {} canvas { position: absolute; } body { margin: 0; background: #000; color: #000; overflow: hidden; font-size: 15px; } select { padding: 2px 0 3px } input, select { font-size: 14px; font-family: "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", helvetica, arial; } a { color: #9ACFF2; margin: 0 5px 0 0; } a:hover { color: #ee0000; margin: 0 5px 0 0; } .foxyface { color: #fff; padding: 0; line-height: 1.78em; } .foxyface a { color: #ffff88; margin: 0; } .foxyface a:hover { color: #ee1; } /* .foxyface .input { font-weight: bold; background: #171717; border-top: 1px solid #111; margin: 1px 1px 5px; text-align: center; background: #070707; color: #ff9999; border: 1px solid #222233; cursor: pointer; padding: 2px 6px 4px; font-variant: small-caps; letter-spacing: 0.03em; font-size: 13px; } .foxyface .input:hover { color: #fff; background: #000; }*/ .foxybox .title { color: #F2EF9A; font-style: italic; } .foxybox .title ul { margin: 0; padding: 0; } .foxybox .title li { display: inline; } .foxybox .foxyform input { float: left; } .foxybox .foxyform div { font-size: 14px; float: left; width: 130px; white-space: nowrap; overflow: hidden; text-align: right; padding: 0 15px 0 0; } .foxybox .foxyform br { clear: both; } .foxysave .rightclick { background: rgba(0, 0, 0, 0.6); padding: 10px 14px 8px 10px; font-size: 12px; float: left; color: #eee; line-height: 1em; } .foxysave .ddd { background: #353535; padding: 5px 5px 6px 0; margin: 0 0 4px; line-height: 1em; letter-spacing: 0; } .foxysave .ddd span { padding-left: 5px; letter-spacing: 0.08em; font-size: 13px; font-variant: small-caps; font-weight: bold; } .foxysave .add span span { font-weight: normal; color: #999; } .blurinput { color: #999; } #languages select option { height: 17px; font-size: 12px; } #TEST { position: absolute; top: 0; left: 300px; z-index: 3000; } } /* foxytabs */ .foxytabs { padding: 0px; z-index: 10; position: relative; left: -5px; top: -4px; margin: 0; } .foxytabs li.selectedTab, .foxytabs li.selectedTab:hover { background: #000; color: lightblue; } .foxytabs li { -moz-user-select: none; -webkit-user-select: none; user-select: none; font-weight:bold; color: #ddd; font-style: normal; display: inline; background: -webkit-gradient( linear, 0 50%, 0 100%, from(#222), to(black) ); background: -moz-linear-gradient( top, #222, #222, black ); border-top: 1px solid #222; border-right: 1px solid #222; padding:7px 15px 8px; cursor: pointer; } .foxytabs li:hover{ color: #fff; } .foxytabs li:active a{ color: #ffff00; } /* tabbed content */ .tabbedWindow > div { top: 0px; left: 0px; display: none; } div.selectedContent { z-index: 1; display: block; } /* open attributes */ .APIStorage { box-shadow:inset 10px 10px 20px #000000; -moz-box-shadow:inset 5px 5px 7px #171717; background: #343434; background: -webkit-gradient( linear, 0 50%, 0 100%, from(#222), to(#343434) ); background: -moz-linear-gradient( top, #222, #222, #343434 ); overflow-y: scroll; float: right; padding: 0 0 0 0; width: 66%; height: 300px; } /* upload */ #foxyface_open_upload { height: 220px; background: -webkit-gradient( linear, 0 50%, 0 100%, from(black), to(#111) ); background: -moz-linear-gradient( top, black, black, #111 ); } /* save */ .foxysave { height: 320px; background: -webkit-gradient( linear, 0 50%, 0 100%, from(black), to(#111) ); background: -moz-linear-gradient( top, black, black, #111 ); } .span_block { font-variant: small-caps; display: inline-block; padding-bottom: 10px; } .foxyface .center { color: #bbb; background: #171717; margin: 1px 0; padding: 2px 0 1px; text-align: center; } .blahh { background: -webkit-gradient( linear, 0 50%, 0 100%, from(#222), to(#343434) ); background: -moz-linear-gradient( top, #222, #222, #343434 ); padding: 10px; } /* photos */ #APIStorage div.imageThumb { float: left; display: inline; position: relative; } #APIStorage div.imageThumb:hover a.removeFile { display: block; } #APIStorage div.imageThumb a.removeFile { position:absolute; top: 5px; width:12px; height:12px; background:transparent url('/assets/iconRemoveFile.png') no-repeat top left; display: none; } /* providers */ div.providers { background: #f6f6f6; height: 299px; } div.providers div { -moz-user-select: none; -webkit-user-select: none; user-select: none; background: -webkit-gradient( linear, 0 50%, 0 100%, from(#fff), to(#f6f6f6) ); background: -moz-linear-gradient( top, #fff, #fff, #f6f6f6 ); color: #838383; padding: 0 0 0 10px; font-weight: bold; cursor: pointer; border-top: 1px solid #fff; border-bottom: 1px solid #d5d5d5; } div.providers .loggedin { } div.providers div:hover { background: #fff; color: #444; } div.providers div.selectedTab, div.providers div.selectedTab:hover { color: #fff; border-top: 1px solid #222; background: #222; } #foxyface_open_providers img { margin: 5px 10px 0px 0; border: 2px solid #111; } #foxyface_open_providers .photos img:hover { cursor: pointer; border: 2px solid #ee1; } #foxyface_open_providers a img:hover, #foxyface_open_providers span.pseudolink img:hover{ cursor: pointer; border: 2px solid #ee1; } .pseudolink { color: #ffff88; text-decoration: underline; } .pseudolink:hover { cursor: pointer; color: #ee1; } .photos > div { display: inline } .photo { float: left; padding: 5px; } .photo > div{ width: 75px; height: 75px; overflow: hidden; padding: 0px; margin: 0px; } .photo > div > img{ padding: 0px; margin: 0px; } #size_settings, #export_text{ padding: 5px; } #foxyface_save_tabs{ background-color: #171717; height: 130px; padding: 0; } #final{ margin-right: auto; margin-left: auto; display: block; } #foxyface_no_drop{ width: 490px; height: 205px; z-index: 2; position: absolute; } #foxyface_drop_zone{ position: relative; z-index: 3; width: 100px; height: 100px; background-color: #222; border: 1px solid #444; color: #aaa; margin-top: 40px; margin-left: auto; margin-right: auto; display: none;/* disable for now */ } #foxyface_drop_zone_input{ position: absolute; z-index: 3; right: 0px; width: 100px; height: 100px; opacity: 0; } #local{ position: absolute; z-index: 3; width: 150px; } #server{ z-index: 3; } #openURLButton{ top: 50px; right: 50px; } #browse{ left: 120px; } .foxybox .topbar { -moz-user-select: none; -webkit-user-select: none; user-select: none; } #dialogContainer{ font-family: Helvetica, Arial, sans-serif; background-color: transparent; color: #ffffff; z-index: 5000; position: absolute; top: 0px; left: 0px; width: 100%; height: 100%; } #dialogTransparency{ background-color: #000000; z-index: 5001; position: absolute; top: 0px; left: 0px; width: 100%; height: 100%; opacity: 0.7; } #dialogs{ z-index: 5002; position: absolute; top: 25%; width: 100%; height: 75%; } #dialogs > div{ background-color: #000000; position: relative; margin-left: auto; margin-right: auto; } #dialogs div.title{ background-color: #222222; font-variant: small-caps; font-weight: bold; font-style: italic; padding: 5px 15px; } #dialogs div.content{ padding: 10px; } .msg{ margin-bottom: 15px; } #notes_widget{ position: absolute; height: 20px; top: 7px; right: 180px; z-index: 100; font-size: 11px; font-family: Helvetica, Arial, sans-serif; color: #ffffff; } #notes{ font-family: Helvetica, Arial, sans-serif; background-color: transparent; color: #ffffff; z-index: 5000; position: absolute; top: 25%; right: 15px; width: 200px; } #notes > div{ background-color: #000000; position: relative; margin-left: auto; margin-right: auto; margin-top: 1px; margin-bottom: 1px; padding: 5px; } #notes div.remove{ font-size: 10px; float: left; margin-right: 5px; } #notes div.content{ font-size: 14px; }
Pop out
Help
About
×
×