Up/down = traverse up/down in current dir
Left = back up to parent dir
Right = open dir/select 1st item in dir/open file
Enter = expand/refresh dir or open file
scrollbarVisible now part of top.ICEcoder namespace
Placement of resultsBar done in setLayout now and takes splitpane into
account
On change we set scrollbarVisible and set layout again
Lots of items removed as part of dropping this:
dontUpdateNest
dontSelect
htmlTagArray
startPosLine
startPosCh
cursorOrigCh
cursorOrigLine
nestDisplay
tagString
highlightBlock()
getNestLocation()
getNestLocationSub()
setPosition()
images/nest-tag-bg.gif
codeAssistToggle now working on diff pane also
It's a bit annoying when you hover over the tags, is only useful for
HTML/XML etc and ICEcoder covers many langs now plus clutters the
display a bit. Not so useful anymore.
cursorHeight is a number from 0 to 1, based on % of line height. As we
set line heights in diff mode and the default cursorHeight is 1, it
fills 100% of the height. this tweak ensures the cursor height is the
same as the text height.
Green class has black text to make more visible
Grey class has darker background
New lighter grey class added for non changed portions of text on diff
line
renderLineStyle is now an array of style arrays
cMonScroll function added to move scroll position of other pane to match
The on('renderLine') event now covers all lines, a change since earlier
versions of CodeMirror
This means a reworking of code was needed here to firstly identify a
matching pane and then if we have a match, add the style. Done in a for
loop and considers array items in renderLineStyle
Reworked much of the updateDiffs functin to reset array & value to begin
with and push to renderLineStyle array now. Also only doing this if we
have a height higher than normal to set, for perf reasons
No need to set renderLineStyle to false anymore
Finally, sorted the order things happen into 2 logical sections - main
pane changes first then diff pane changes after
This initialisation should be false to start with as we set PHP mode as
a basis and have no linter for that
We set the mode in processes/on-editor-load.php and then lint: true if
it's a JS mode.
The char position used by $fileNameExtPos is actually from the
beginning, not end, so is useless here
However, we know that 'less' and 'scss' are 4 chars, so we can just
slice off those 4 chars always
renderLineStyle and renderPaneShiftAmount added to store info for
renderLine event
Function added for renderLine event, applies styles to line if we're
rendering that one
When updating diffs, run a loop to mark text according to it's status of
replace, delete or insert
Here we are also setting styles ready for the renderLine function and
clearing when done
This last part sets the height of the other pane, so lines of text line
up and make sense visually
Update on switching tab and using new settings
New vars for splitPane, debounce and editorFocusInstance added
Split pane controls added and center themselves and can now trigger
single and split pane views
Editor functions added here for focus, blur, onkeyup, oncursoractivity,
onchange and oninputread, can handle requests from either main or diff
pane
updateDiffs function added which will show differences between 2 panes
using jsdifflib and markText
updatePreviewWindow now it's own function too
Many functions redone so they can also take requests from either main or
diff panes, by using thisCM instead of cM
getcMdiffInstance function also added
Diff pane also updated on changing settings and switching tab
If GitHub diff mode, load the 2 JS files needed
Ask message shown needed escaped slashes so they appear OK in dialog
No longer open a new file for older version, we display now in diff pane
Temp code added in comment block re getting content from GitHub for file
to show in diff pane. This isn't working at present and probably just
needs a tweak to make work
Slightly renamed vars for active lines to handle 2 panes