From 44db746f35a87db56095b2aeb25555978bea758e Mon Sep 17 00:00:00 2001 From: Zef Hemel Date: Wed, 23 Nov 2011 11:33:23 +0100 Subject: [PATCH] Adds a marker to every theme saying whether it is a dark or light theme. Based on that, it either attaches an "ace_dark" CSS selector to the root of the editor or not. Useful for styling. --- lib/ace/theme/clouds.js | 1 + lib/ace/theme/clouds_midnight.js | 1 + lib/ace/theme/cobalt.js | 1 + lib/ace/theme/crimson_editor.js | 2 +- lib/ace/theme/dawn.js | 2 +- lib/ace/theme/eclipse.js | 2 +- lib/ace/theme/idle_fingers.js | 2 +- lib/ace/theme/kr_theme.js | 2 +- lib/ace/theme/merbivore.js | 2 +- lib/ace/theme/merbivore_soft.js | 2 +- lib/ace/theme/mono_industrial.js | 2 +- lib/ace/theme/monokai.js | 2 +- lib/ace/theme/pastel_on_dark.js | 2 +- lib/ace/theme/solarized_dark.js | 2 +- lib/ace/theme/solarized_light.js | 2 +- lib/ace/theme/textmate.js | 2 +- lib/ace/theme/tomorrow.js | 4 ++-- lib/ace/theme/tomorrow_night.js | 4 ++-- lib/ace/theme/tomorrow_night_blue.js | 4 ++-- lib/ace/theme/tomorrow_night_bright.js | 4 ++-- lib/ace/theme/tomorrow_night_eighties.js | 4 ++-- lib/ace/theme/twilight.js | 2 +- lib/ace/theme/vibrant_ink.js | 2 +- lib/ace/virtual_renderer.js | 5 +++++ 24 files changed, 33 insertions(+), 25 deletions(-) diff --git a/lib/ace/theme/clouds.js b/lib/ace/theme/clouds.js index 8e62627b..da88f9eb 100644 --- a/lib/ace/theme/clouds.js +++ b/lib/ace/theme/clouds.js @@ -38,6 +38,7 @@ define(function(require, exports, module) { exports.cssClass = "ace-clouds"; +exports.isDark = false; exports.cssText = ".ace-clouds .ace_editor {\ border: 2px solid rgb(159, 159, 159);\ }\ diff --git a/lib/ace/theme/clouds_midnight.js b/lib/ace/theme/clouds_midnight.js index b8fc8bd7..897bffee 100644 --- a/lib/ace/theme/clouds_midnight.js +++ b/lib/ace/theme/clouds_midnight.js @@ -38,6 +38,7 @@ define(function(require, exports, module) { exports.cssClass = "ace-clouds-midnight"; +exports.isDark = true; exports.cssText = ".ace-clouds-midnight .ace_editor {\ border: 2px solid rgb(159, 159, 159);\ }\ diff --git a/lib/ace/theme/cobalt.js b/lib/ace/theme/cobalt.js index 27b66dbe..3d32e7b7 100644 --- a/lib/ace/theme/cobalt.js +++ b/lib/ace/theme/cobalt.js @@ -38,6 +38,7 @@ define(function(require, exports, module) { exports.cssClass = "ace-cobalt"; +exports.isDark = true; exports.cssText = ".ace-cobalt .ace_editor {\ border: 2px solid rgb(159, 159, 159);\ }\ diff --git a/lib/ace/theme/crimson_editor.js b/lib/ace/theme/crimson_editor.js index 90473556..eb0ec722 100644 --- a/lib/ace/theme/crimson_editor.js +++ b/lib/ace/theme/crimson_editor.js @@ -36,7 +36,7 @@ * ***** END LICENSE BLOCK ***** */ define(function(require, exports, module) { - +exports.isDark = false; exports.cssText = ".ace-crimson-editor .ace_editor {\ border: 2px solid rgb(159, 159, 159);\ }\ diff --git a/lib/ace/theme/dawn.js b/lib/ace/theme/dawn.js index 265e4621..faf44ad3 100644 --- a/lib/ace/theme/dawn.js +++ b/lib/ace/theme/dawn.js @@ -36,7 +36,7 @@ * ***** END LICENSE BLOCK ***** */ define(function(require, exports, module) { - +exports.isDark = false; exports.cssText = ".ace-dawn .ace_editor {\ border: 2px solid rgb(159, 159, 159);\ }\ diff --git a/lib/ace/theme/eclipse.js b/lib/ace/theme/eclipse.js index e05e412f..89a2cc78 100644 --- a/lib/ace/theme/eclipse.js +++ b/lib/ace/theme/eclipse.js @@ -36,7 +36,7 @@ * ***** END LICENSE BLOCK ***** */ define(function(require, exports, module) { - +exports.isDark = false; exports.cssText = ".ace-eclipse .ace_editor {\ border: 2px solid rgb(159, 159, 159);\ }\ diff --git a/lib/ace/theme/idle_fingers.js b/lib/ace/theme/idle_fingers.js index 7bd0d567..d4de985d 100644 --- a/lib/ace/theme/idle_fingers.js +++ b/lib/ace/theme/idle_fingers.js @@ -36,7 +36,7 @@ * ***** END LICENSE BLOCK ***** */ define(function(require, exports, module) { - +exports.isDark = true; exports.cssText = ".ace-idle-fingers .ace_editor {\ border: 2px solid rgb(159, 159, 159);\ }\ diff --git a/lib/ace/theme/kr_theme.js b/lib/ace/theme/kr_theme.js index 9e9ef0c5..7cfc40a6 100644 --- a/lib/ace/theme/kr_theme.js +++ b/lib/ace/theme/kr_theme.js @@ -36,7 +36,7 @@ * ***** END LICENSE BLOCK ***** */ define(function(require, exports, module) { - +exports.isDark = true; exports.cssText = ".ace-kr-theme .ace_editor {\ border: 2px solid rgb(159, 159, 159);\ }\ diff --git a/lib/ace/theme/merbivore.js b/lib/ace/theme/merbivore.js index 854afd50..d685631f 100644 --- a/lib/ace/theme/merbivore.js +++ b/lib/ace/theme/merbivore.js @@ -36,7 +36,7 @@ * ***** END LICENSE BLOCK ***** */ define(function(require, exports, module) { - +exports.isDark = true; exports.cssText = ".ace-merbivore .ace_editor {\ border: 2px solid rgb(159, 159, 159);\ }\ diff --git a/lib/ace/theme/merbivore_soft.js b/lib/ace/theme/merbivore_soft.js index 329bbde4..df2c0af3 100644 --- a/lib/ace/theme/merbivore_soft.js +++ b/lib/ace/theme/merbivore_soft.js @@ -36,7 +36,7 @@ * ***** END LICENSE BLOCK ***** */ define(function(require, exports, module) { - +exports.isDark = true; exports.cssText = ".ace-merbivore-soft .ace_editor {\ border: 2px solid rgb(159, 159, 159);\ }\ diff --git a/lib/ace/theme/mono_industrial.js b/lib/ace/theme/mono_industrial.js index 00f2d495..71f539fb 100644 --- a/lib/ace/theme/mono_industrial.js +++ b/lib/ace/theme/mono_industrial.js @@ -36,7 +36,7 @@ * ***** END LICENSE BLOCK ***** */ define(function(require, exports, module) { - +exports.isDark = true; exports.cssText = ".ace-mono-industrial .ace_editor {\ border: 2px solid rgb(159, 159, 159);\ }\ diff --git a/lib/ace/theme/monokai.js b/lib/ace/theme/monokai.js index a452134e..3544f347 100644 --- a/lib/ace/theme/monokai.js +++ b/lib/ace/theme/monokai.js @@ -36,7 +36,7 @@ * ***** END LICENSE BLOCK ***** */ define(function(require, exports, module) { - +exports.isDark = true; exports.cssText = ".ace-monokai .ace_editor {\ border: 2px solid rgb(159, 159, 159);\ }\ diff --git a/lib/ace/theme/pastel_on_dark.js b/lib/ace/theme/pastel_on_dark.js index bebe70ec..6342e92e 100644 --- a/lib/ace/theme/pastel_on_dark.js +++ b/lib/ace/theme/pastel_on_dark.js @@ -36,7 +36,7 @@ * ***** END LICENSE BLOCK ***** */ define(function(require, exports, module) { - +exports.isDark = true; exports.cssText = ".ace-pastel-on-dark .ace_editor {\ border: 2px solid rgb(159, 159, 159);\ }\ diff --git a/lib/ace/theme/solarized_dark.js b/lib/ace/theme/solarized_dark.js index eee9e046..448d8236 100644 --- a/lib/ace/theme/solarized_dark.js +++ b/lib/ace/theme/solarized_dark.js @@ -36,7 +36,7 @@ * ***** END LICENSE BLOCK ***** */ define(function(require, exports, module) { - +exports.isDark = true; exports.cssText = ".ace-solarized-dark .ace_editor {\ border: 2px solid rgb(159, 159, 159);\ }\ diff --git a/lib/ace/theme/solarized_light.js b/lib/ace/theme/solarized_light.js index 309b5694..d412667e 100644 --- a/lib/ace/theme/solarized_light.js +++ b/lib/ace/theme/solarized_light.js @@ -36,7 +36,7 @@ * ***** END LICENSE BLOCK ***** */ define(function(require, exports, module) { - +exports.isDark = false; exports.cssText = ".ace-solarized-light .ace_editor {\ border: 2px solid rgb(159, 159, 159);\ }\ diff --git a/lib/ace/theme/textmate.js b/lib/ace/theme/textmate.js index d926f82a..90a7d8a3 100644 --- a/lib/ace/theme/textmate.js +++ b/lib/ace/theme/textmate.js @@ -36,7 +36,7 @@ * ***** END LICENSE BLOCK ***** */ define(function(require, exports, module) { - +exports.isDark = false; exports.cssClass = "ace-tm"; exports.cssText = ".ace-tm .ace_editor {\ border: 2px solid rgb(159, 159, 159);\ diff --git a/lib/ace/theme/tomorrow.js b/lib/ace/theme/tomorrow.js index 887f33f2..680962e8 100644 --- a/lib/ace/theme/tomorrow.js +++ b/lib/ace/theme/tomorrow.js @@ -36,8 +36,8 @@ * ***** END LICENSE BLOCK ***** */ define(function(require, exports, module) { - - exports.cssText = ".ace-tomorrow .ace_editor {\ +exports.isDark = false; +exports.cssText = ".ace-tomorrow .ace_editor {\ border: 2px solid rgb(159, 159, 159);\ }\ \ diff --git a/lib/ace/theme/tomorrow_night.js b/lib/ace/theme/tomorrow_night.js index 5fe80dcc..d71ea5c9 100644 --- a/lib/ace/theme/tomorrow_night.js +++ b/lib/ace/theme/tomorrow_night.js @@ -36,8 +36,8 @@ * ***** END LICENSE BLOCK ***** */ define(function(require, exports, module) { - - exports.cssText = ".ace-tomorrow-night .ace_editor {\ +exports.isDark = true; +exports.cssText = ".ace-tomorrow-night .ace_editor {\ border: 2px solid rgb(159, 159, 159);\ }\ \ diff --git a/lib/ace/theme/tomorrow_night_blue.js b/lib/ace/theme/tomorrow_night_blue.js index bb3d6ac8..548fa3c7 100644 --- a/lib/ace/theme/tomorrow_night_blue.js +++ b/lib/ace/theme/tomorrow_night_blue.js @@ -36,8 +36,8 @@ * ***** END LICENSE BLOCK ***** */ define(function(require, exports, module) { - - exports.cssText = ".ace-tomorrow-night-blue .ace_editor {\ +exports.isDark = true; +exports.cssText = ".ace-tomorrow-night-blue .ace_editor {\ border: 2px solid rgb(159, 159, 159);\ }\ \ diff --git a/lib/ace/theme/tomorrow_night_bright.js b/lib/ace/theme/tomorrow_night_bright.js index 772ac2c2..c126fafe 100644 --- a/lib/ace/theme/tomorrow_night_bright.js +++ b/lib/ace/theme/tomorrow_night_bright.js @@ -36,8 +36,8 @@ * ***** END LICENSE BLOCK ***** */ define(function(require, exports, module) { - - exports.cssText = ".ace-tomorrow-night-bright .ace_editor {\ +exports.isDark = true; +exports.cssText = ".ace-tomorrow-night-bright .ace_editor {\ border: 2px solid rgb(159, 159, 159);\ }\ \ diff --git a/lib/ace/theme/tomorrow_night_eighties.js b/lib/ace/theme/tomorrow_night_eighties.js index 07f1c071..4ff09b12 100644 --- a/lib/ace/theme/tomorrow_night_eighties.js +++ b/lib/ace/theme/tomorrow_night_eighties.js @@ -36,8 +36,8 @@ * ***** END LICENSE BLOCK ***** */ define(function(require, exports, module) { - - exports.cssText = ".ace-tomorrow-night-eighties .ace_editor {\ +exports.isDark = true; +exports.cssText = ".ace-tomorrow-night-eighties .ace_editor {\ border: 2px solid rgb(159, 159, 159);\ }\ \ diff --git a/lib/ace/theme/twilight.js b/lib/ace/theme/twilight.js index 28547fd3..710a1c1b 100644 --- a/lib/ace/theme/twilight.js +++ b/lib/ace/theme/twilight.js @@ -36,7 +36,7 @@ * ***** END LICENSE BLOCK ***** */ define(function(require, exports, module) { - +exports.isDark = true; exports.cssClass = "ace-twilight"; exports.cssText = ".ace-twilight .ace_editor {\ border: 2px solid rgb(159, 159, 159);\ diff --git a/lib/ace/theme/vibrant_ink.js b/lib/ace/theme/vibrant_ink.js index a6f85f5f..cda85375 100644 --- a/lib/ace/theme/vibrant_ink.js +++ b/lib/ace/theme/vibrant_ink.js @@ -36,7 +36,7 @@ * ***** END LICENSE BLOCK ***** */ define(function(require, exports, module) { - +exports.isDark = true; exports.cssText = ".ace-vibrant-ink .ace_editor {\ border: 2px solid rgb(159, 159, 159);\ }\ diff --git a/lib/ace/virtual_renderer.js b/lib/ace/virtual_renderer.js index a75821aa..fab452a3 100644 --- a/lib/ace/virtual_renderer.js +++ b/lib/ace/virtual_renderer.js @@ -821,6 +821,11 @@ var VirtualRenderer = function(container, theme) { if (_self.$theme) dom.addCssClass(_self.container, _self.$theme); + if(theme && theme.isDark) + dom.addCssClass(_self.container, "ace_dark"); + else + dom.removeCssClass(_self.container, "ace_dark"); + // force re-measure of the gutter width if (_self.$size) { _self.$size.width = 0;