From 137c4f5d76b55c3dd3c4f593de484aadfcf5e6da Mon Sep 17 00:00:00 2001 From: dbh Date: Thu, 2 Feb 2017 15:01:49 +0530 Subject: [IMP] web_editor: improve icon color edition - Make sure icon colors can be edited the same way as text - Improve recent color behavior --- addons/web_editor/static/src/js/summernote.js | 64 ++++++++++++++++++++------- 1 file changed, 47 insertions(+), 17 deletions(-) (limited to 'addons/web_editor/static/src/js/summernote.js') diff --git a/addons/web_editor/static/src/js/summernote.js b/addons/web_editor/static/src/js/summernote.js index 71647828cc6..c2e2ea54dca 100644 --- a/addons/web_editor/static/src/js/summernote.js +++ b/addons/web_editor/static/src/js/summernote.js @@ -1872,23 +1872,51 @@ $.summernote.pluginEvents.removeFormat = function (event, editor, layoutInfo, va var fn_boutton_updateRecentColor = eventHandler.modules.toolbar.button.updateRecentColor; eventHandler.modules.toolbar.button.updateRecentColor = function (elBtn, sEvent, sValue) { fn_boutton_updateRecentColor.call(this, elBtn, sEvent, sValue); - var font = $(elBtn).closest('.note-color').find('.note-recent-color i')[0]; - - if (sEvent === "foreColor") { - if (sValue.indexOf('text-') !== -1) { - font.className += ' ' + sValue; - font.style.color = ''; + var $recentcolor = $.find('.note-recent-color i'); + var $recentcolorbtn = $.find('.note-recent-color'); + + //find last used color for fonts or for icons + //set this color into recentcolor button of both font and icon + for (var i in $recentcolor) { + var $font = $recentcolor[i]; + var $button = $($recentcolorbtn[i]); + var className = $font.className.split(/\s+/); + if (sEvent === "foreColor") { + //set class for forecolor to recentcolor button font-icon + for (var k=2; k