Browse Source

fix(remain cell style in inline string mode): click cell and change cell style like to Excel

master
liuyang 5 years ago
parent
commit
7d0438a10d
  1. 10
      src/controllers/menuButton.js
  2. 38
      src/global/getdata.js

10
src/controllers/menuButton.js

@ -2887,7 +2887,7 @@ const menuButton = {
if(value.substr(0,1)!="="){
let cell = d[Store.luckysheetCellUpdate[0]][Store.luckysheetCellUpdate[1]];
updateInlineStringFormat(cell, attr, foucsStatus, luckysheetformula.rangeResizeTo);
return;
// return;
}
}
}
@ -3014,12 +3014,12 @@ const menuButton = {
let value = d[r][c];
if (getObjType(value) == "object") {
if(attr in inlineStyleAffectAttribute && isInlineStringCell(value)){
// if(attr in inlineStyleAffectAttribute && isInlineStringCell(value)){
updateInlineStringFormatOutside(value, attr, foucsStatus);
}
else{
// }
// else{
d[r][c][attr] = foucsStatus;
}
// }
}
else{

38
src/global/getdata.js

@ -393,26 +393,28 @@ export function checkstatusByCell(cell, a){
foucsStatus = "0";
}
else{
var w = window.getSelection(), isInlineEdit=false;
if(w.type!="None"){
var range = w.getRangeAt(0);
let startContainer = range.startContainer;
if (parseInt($("#luckysheet-input-box").css("top")) > 0 && startContainer.parentNode.tagName=="SPAN" && !range.collapsed) {
let span = startContainer.parentNode;
let styleList = convertCssToStyleList(span.style.cssText);
foucsStatus = styleList[a];
isInlineEdit = true;
}
}
// var w = window.getSelection(), isInlineEdit=false;
// if(w.type!="None"){
// var range = w.getRangeAt(0);
// let startContainer = range.startContainer;
// if (parseInt($("#luckysheet-input-box").css("top")) > 0 && startContainer.parentNode.tagName=="SPAN" && !range.collapsed) {
// let span = startContainer.parentNode;
// let styleList = convertCssToStyleList(span.style.cssText);
// foucsStatus = styleList[a];
// isInlineEdit = true;
// }
// }
// if(!isInlineEdit){
// if(isInlineStringCell(cell)){
// foucsStatus = cell.ct.s[0][a];
// }
// else{
// foucsStatus = foucsStatus[a];
// }
// }
if(!isInlineEdit){
if(isInlineStringCell(cell)){
foucsStatus = cell.ct.s[0][a];
}
else{
foucsStatus = foucsStatus[a];
}
}
if(foucsStatus == null){
foucsStatus = "0";

Loading…
Cancel
Save