From 9ca7609d00b5e9d253f7f416be6535c9ed5b887e Mon Sep 17 00:00:00 2001 From: nightwing Date: Wed, 18 Apr 2012 20:35:23 +0400 Subject: [PATCH] add FadeFoldWidgets setting --- lib/ace/css/editor.css | 17 +++++++++++++++++ lib/ace/editor.js | 8 ++++++++ lib/ace/virtual_renderer.js | 11 +++++++++++ 3 files changed, 36 insertions(+) diff --git a/lib/ace/css/editor.css b/lib/ace/css/editor.css index 83c21130..3aaeb41a 100644 --- a/lib/ace/css/editor.css +++ b/lib/ace/css/editor.css @@ -289,3 +289,20 @@ background-color: #FFB4B4; border-color: #DE5555; } + +.ace_fade-fold-widgets .ace_fold-widget { + -moz-transition: 0.5s opacity; + -webkit-transition: 0.5s opacity; + -o-transition: 0.5s opacity; + -ms-transition: 0.5s opacity; + transition: 0.5s opacity; + opacity: 0; +} +.ace_fade-fold-widgets:hover .ace_fold-widget { + -moz-transition-duration: 0s; + -webkit-transition-duration: 0s; + -o-transition-duration: 0s; + -ms-transition-duration: 0s; + transition-duration: 0s; + opacity:1; +} \ No newline at end of file diff --git a/lib/ace/editor.js b/lib/ace/editor.js index 43f33e56..d5206a1d 100644 --- a/lib/ace/editor.js +++ b/lib/ace/editor.js @@ -666,6 +666,14 @@ var Editor = function(renderer, session, listenElement) { return this.renderer.$gutterLayer.getShowFoldWidgets(); }; + this.setFadeFoldWidgets = function(show) { + this.renderer.setFadeFoldWidgets(show); + }; + + this.getFadeFoldWidgets = function() { + return this.renderer.getFadeFoldWidgets(); + }; + this.remove = function(dir) { if (this.selection.isEmpty()){ if(dir == "left") diff --git a/lib/ace/virtual_renderer.js b/lib/ace/virtual_renderer.js index c8af523f..25fe9495 100644 --- a/lib/ace/virtual_renderer.js +++ b/lib/ace/virtual_renderer.js @@ -332,6 +332,17 @@ var VirtualRenderer = function(container, theme) { this.onResize(true); }; + this.getFadeFoldWidgets = function(){ + return dom.hasCssClass(this.$gutter, "ace_fade-fold-widgets"); + }; + + this.setFadeFoldWidgets = function(show) { + if (show) + dom.addCssClass(this.$gutter, "ace_fade-fold-widgets"); + else + dom.removeCssClass(this.$gutter, "ace_fade-fold-widgets"); + }; + this.$updatePrintMargin = function() { var containerEl;