From: <ez...@us...> - 2011-10-02 01:25:09
|
Revision: 20040 http://jedit.svn.sourceforge.net/jedit/?rev=20040&view=rev Author: ezust Date: 2011-10-02 01:25:02 +0000 (Sun, 02 Oct 2011) Log Message: ----------- Merge request# 3413821 - Merge fix for disappearing lines using indent folding Modified Paths: -------------- jEdit/branches/4.4.x/doc/CHANGES.txt jEdit/branches/4.4.x/org/gjt/sp/jedit/textarea/DisplayManager.java Property Changed: ---------------- jEdit/branches/4.4.x/ Property changes on: jEdit/branches/4.4.x ___________________________________________________________________ Modified: svn:mergeinfo - /jEdit/branches/4.4.x-merge-request-for-r18847-r18954-r19206-r19210:19223 /jEdit/branches/4.4.x-merge-request-for-r19197:19216 /jEdit/branches/4.4.x-merge-request-for-r19201:19218,19229 /jEdit/branches/docking_framework:13128-13258 /jEdit/trunk:18847,18954,18960-18961,19052,19084,19118,19121,19124,19138,19172,19185,19197,19199-19206,19208-19214,19246,19263,19289,19297-19299,19318,19325,19327,19346,19349-19350,19353,19377,19422,19489,19491,19501,19530,19547,19560-19561,19568-19571,19578,19588-19589,19592,19645,19720,19724,19770,19778,19833-19834,19846,19848-19849,19895,19900,19932-19933,19957,19972-19973,19975-19976,19995,20033 + /jEdit/branches/4.4.x-merge-request-for-r18847-r18954-r19206-r19210:19223 /jEdit/branches/4.4.x-merge-request-for-r19197:19216 /jEdit/branches/4.4.x-merge-request-for-r19201:19218,19229 /jEdit/branches/docking_framework:13128-13258 /jEdit/trunk:18847,18954,18960-18961,19052,19084,19118,19121,19124,19138,19172,19185,19197,19199-19206,19208-19214,19246,19263,19289,19297-19299,19318,19325,19327,19346,19349-19350,19353,19377,19422,19489,19491,19501,19530,19547,19560-19561,19568-19571,19578,19588-19589,19592,19645,19720,19724,19770,19778,19833-19834,19846,19848-19849,19895,19900,19932-19933,19957,19972-19973,19975-19976,19995,20019,20033 Modified: jEdit/branches/4.4.x/doc/CHANGES.txt =================================================================== --- jEdit/branches/4.4.x/doc/CHANGES.txt 2011-10-02 01:11:56 UTC (rev 20039) +++ jEdit/branches/4.4.x/doc/CHANGES.txt 2011-10-02 01:25:02 UTC (rev 20040) @@ -11,6 +11,9 @@ - Untitled buffer should not be created on VFS without write capability (#3399387) (Matthieu Casanova) +- Fixed a bug which caused lines to disappear when using indent folding + if every line was indented (#3412237 - Evan Wright) + - When removing a plugin, the update and install panel were not refreshed (Matthieu Casanova) @@ -43,7 +46,7 @@ - Fixed a bug that occured when jumping to a line inside of a nested fold. (#3406213 - Evan Wright) - + }}} {{{ Miscellaneous @@ -76,14 +79,13 @@ - jEdit now force drops from external applications to be COPY and not MOVE drops. It prevents ftp explorer from deleting dropped files (#1208598 - Matthieu Casanova) - + - Changing bufferset scopes now saved to properties as default scope. (#3316329 - Matthieu Casanova) - -- Buffersets no longer populated with open files when creating new view. - (#2990965 - Matthieu Casanova and Alan Ezust) - +- Buffersets no longer populated with open files when creating new view. + (#2990965 - Matthieu Casanova and Alan Ezust) + - BufferSet contents of new Plain View #3317405 fixed (Matthieu Casanova) - When the cursor was at a start (or end) of non-top (non-bottom) line, @@ -104,8 +106,8 @@ - Improve integration with Unity Launcher. Without this change if you pin jEdit to the Launcher and then run it, a separate icon for the running instance is shown. With this change this is correctly merged with the pinned starter. - (Björn "Vampire" Kautler) - + (Björn "Vampire" Kautler) + }}} }}} Modified: jEdit/branches/4.4.x/org/gjt/sp/jedit/textarea/DisplayManager.java =================================================================== --- jEdit/branches/4.4.x/org/gjt/sp/jedit/textarea/DisplayManager.java 2011-10-02 01:11:56 UTC (rev 20039) +++ jEdit/branches/4.4.x/org/gjt/sp/jedit/textarea/DisplayManager.java 2011-10-02 01:25:02 UTC (rev 20040) @@ -343,22 +343,28 @@ showLineRange(0,buffer.getLineCount() - 1); - /* this ensures that the first line is always visible */ - boolean seenVisibleLine = false; - + int leastFolded = -1; int firstInvisible = 0; for(int i = 0; i < buffer.getLineCount(); i++) { - if(!seenVisibleLine || buffer.getFoldLevel(i) < foldLevel) + // Keep track of the least fold level up to this point in the file, + // because we can't hide a line at this level since there will be no "root" + // line to unfold it from + if (leastFolded == -1 || buffer.getFoldLevel(i) < leastFolded) { + leastFolded = buffer.getFoldLevel(i); + } + + if (buffer.getFoldLevel(i) < foldLevel || + buffer.getFoldLevel(i) == leastFolded) + { if(firstInvisible != i) { hideLineRange(firstInvisible, i - 1); } firstInvisible = i + 1; - seenVisibleLine = true; } } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |