Skip to content

Releases: Rosemoe/sora-editor

0.24.6

0.24.6 Pre-release
Pre-release

Choose a tag to compare

@Rosemoe Rosemoe released this 10 Jun 04:42
87055c4

Editor Core

  • improve algorithm of collecting sticky lines
  • add min width for minimap region
  • add inlay hint setter
  • enhance emoji text deletion on low API devices
  • fix cursor anchor position for IME under wordwrap mode (Xed-Editor/Xed-Editor#1331)
  • update no completion checking logic (#850 by @KonerDev)
  • add Ctrl+Space to trigger completion (#844)

Editor LSP

  • fix NPE in signature text generation (#829)
  • fix possible dead loop in Markdown text parsing (#845)
  • enhance document color support and inlay hints (#830 by @KonerDev)
  • enhance LSP completion overlap, character index bounds (#850 by @KonerDev)

TextMate

  • add documentation for TextMateLanguage and remove deprecated constructors
  • initialize color scheme on theme creation (#806)

TreeSitter

  • add cancellation token for variable analysis to reduce delay in large files

As android support libraries are moving minSdk to 23, this will be the last release that supports API 21. From next release, we will raise the minSdk to 23.

0.24.5

0.24.5 Pre-release
Pre-release

Choose a tag to compare

@Rosemoe Rosemoe released this 17 Mar 03:03
0fdd4a8

Editor Core

  • add PublishDiagnosticsEvent for diagnostics changes (#781 by @dingyi222666)
  • add InlayHintClickEvent when inlay hint is clicked exactly
  • add preserve-case replace (#792)
  • add experimental minimap (API is unstable yet) (#766)
  • improve auto completion experience (#795 by @KonerDev)
  • allow adding custom variable resolvers for code snippets (#801)
  • avoid lag when text is too long when creating info for accessiblity
  • add option to ensure search occurrence is visible (#816 by @KonerDev)
  • cut memory usage for Latin1 charset in text buffer
  • update highlight as initial analysis goes to improve experience for long files
  • fix wrong text style of line info panel sometimes
  • fix leading whitespaces are sometimes not visible
  • fix SymbolInputView always overrides the background defined in XML attributes
  • fix possible ANR when scrolling completion list (#800 by @nullij)
  • fix possible NPE when drawing text background (Xed-Editor/Xed-Editor#1156)
  • fix possible IOOB on completion (#812 by @KonerDev)

Editor LSP

  • improve LSP lifecycle and error handling (#777)(#804 by @KonerDev)
  • add disable-feature option to server definition (#802)(#809 by @KonerDev)
  • add support for multi-line code block with multiple bacticks in markdown renderer (#814)
  • fix thread violation when updating UI in LSP (#793 by @mucute-qwq)
  • fix hover window not showing (#796)(#809 by @KonerDev)
  • fix unnecessary stop of language server wrapper (#808 by @KonerDev)
  • fix crash due to inlay hint and document color request cancellation in LSP (#813)

TextMate

  • fix wrong span type is chosen when token has underline style (#820 by @META-Xiao)
  • fix highlight analysis failure when underline color is undefined

Monarch

  • fix wrong span type is chosen when token has underline style (#820)

Demo App

  • migrate to Material 3 theme and components
  • add simple example for paged editing for super long files

0.24.4

0.24.4 Pre-release
Pre-release

Choose a tag to compare

@Rosemoe Rosemoe released this 17 Jan 06:51
1e199e1

Editor Core

  • improve rendering speed when there are many highlighted text backgrounds
  • add event for diagnostics update (#773, #781 by @dingyi222666)
  • fix a problem that leads to selection can not be correctly placed when tab is in line (#786)
  • fix wrong composing text state can be reported to IME (#782, #783)
  • fix externally committed tab may remove active composing text (#784)
  • fix multi-line indentation for tab-indented languages (#785)
  • fix composing text underline becomes unexpectedly hidden when the composing text is partially invisible
  • update snakeyaml-engine to v3

Editor LSP

TreeSitter

  • update android-tree-sitter to support 16KB page size for newer Android platform (thanks to @itsaky)

0.24.3

0.24.3 Pre-release
Pre-release

Choose a tag to compare

@Rosemoe Rosemoe released this 15 Dec 06:05
6abf6d7

Editor Core

  • add more line-break opportunities for better programming code reading
  • select auto-completion item by Tab and Enter (#768)
  • add border color customizations (#764)
  • fix a potential problem in calculating horizontal scrolling range (#775)
  • fix a problem in line width re-calculating when wordwrap is disabled
  • fix wrong background for empty line in certain situation
  • enhance the access range check in Content for better problem tracking

Oniguruma Native

  • support 16KB page size for Android 15+ requirements (#770 by @itsvks19 )

Demo App

  • add more bracket pair captures for tree-sitter Java

0.24.2

0.24.2 Pre-release
Pre-release

Choose a tag to compare

@Rosemoe Rosemoe released this 30 Nov 13:39
b9bac76

Editor Core

  • Improve display correctness and speed for long lines
  • Fix text advance calculating in wordwrap mode and bring faster wordwrap speed
  • Add support for AltGr in physical keyboard (#384)
  • Fix a problem in meta-key state tracking that can leads meta-key to sticky state
  • Fix slow regex searching speed on high API device
  • Add border for highlight delimiters and is enabled by default as a replacement for previous underline (#764)
  • Fix magnifier background when viewport capture is not available yet (#765)
  • Fix the problem that editor may draw a selection at multiple positions
  • Add basic support for displaying RTL lines with right alignment in wordwrap mode
  • Fix some problems in selection handle for bidirectional text

Editor LSP

  • Support Markdown escape character (#762)

0.24.1

0.24.1 Pre-release
Pre-release

Choose a tag to compare

@Rosemoe Rosemoe released this 22 Nov 07:54
d4cec95

This release brings minor bug fixes and improvements.

Editor Core

  • Fix magnifier content when the editor is in dialogs
  • Fix text action window not showing up on long press if the text is empty (#757)
  • Fix line-break indicator may not be drawn for empty line if hardware-acceleration is not available
  • Fix line-break and soft-wrap indicators for inlay hint only rows
  • Add select all to context menu

TextMate

  • Add missing proguard rules for optional oniguruma-native components

Editor LSP

0.24.0

0.24.0 Pre-release
Pre-release

Choose a tag to compare

@Rosemoe Rosemoe released this 18 Nov 08:22
43d9e73

Thanks to all the contributors, we are finally able to release this major update of sora-editor.

Editor Core

Improvements

  • Refactored row rendering system, bringing:
    • LTR/RTL mixed text rendering (#732, #466)
    • Direction indicator of selection for bidirectional text
    • Inlay hint support (built-in: text/color hint) (#341, #351)
    • Improved wordwrap breaks using ICU (#704)
  • Visual line based Home/End acttion
  • Highlight matched items in completion window (#729)
  • Show inserting direction for bidirectional lines
  • Faster wordwrap analysis
  • Show soft-wrap indicators
  • Long-press and drag to select text (#738)
  • Move selection to first completion item when phisical keyboard is connected (#746)
  • Check thread on editor text changes (disabled by default)
  • Add listener for layout init tasks (#742)
  • Add lightweight span object to reduce memory usage
  • Add shadow for sticky line region bottom
  • Sticky lines can have a top offset to scroll with its end line
  • Proper mouse pointer icon for sticky lines
  • Support dead keys in physical keyboard

Bug Fixes

  • Fix some editor windows not dismissed on editor release (#713)
  • Fix layout reusing issues (#561, #562)
  • Fix lag when editing in large text due to a long IPC length
  • Fix dropped frame when scrolling in large text due to wrongly implementedly LRU cache
  • Fix night color for line number panel text
  • Fix underline visibility when hardware-accelerating is on
  • Fix unexpected line background animation when editor is not editable
  • Fix magnifier on low API devices and non-activity contexts
  • Fix meta-key states when physical keyboard is connected

Removal of Feature

  • basicDisplayMode is permanently removed from editor core to better support bidirectional text and inline elements

Editor LSP

  • Supported connection using LocalSocket, fixed a bug in textDocument/diagnostic logic, and accelerated LSP server connection speed (#706)

  • Optimized multiple null checks in the LSP module, improved thread safety, memory leak, security, and text synchronization #716 #718 #719 #726 #733 #739 by @KonerDev, @dingyi222666, @VincentLagerros

  • Supported calling textDocument/rename and textDocument/prepareRename from requestManager (#721)

  • When calling EventType.applyEdits, multiple edits will now be merged into a single edit to improve undo efficiency (#721)

  • #731 Provided several major feature updates for the LSP module, including:

    • Improved and reimplemented signature help window.
    • Supported hover window, which displays help documentation for a symbol when the cursor hovers over it.
    • Supported codeAction window, which requires manual triggering by the caller.
    • A more aesthetically pleasing DiagnosticTooltipLayout, specially designed for LSP.
    • Fixed text matching issues in the completion window and supported highlighting of matching text.
    • Supported some workspace/ commands for language servers.
    • LSP-specific windows all support text scaling with the editor size, and provide simple markdown rendering for signature help and hover.
  • Provided inlayHint support (experimental) for the LSP module. (#743)

  • Provided better markdown rendering for PopupWindow in the LSP module, support syntax highlighting (#744)

  • Fixed text editing issues in the LSP module (#747)

  • Provided documentColor support for the LSP module. When the connected LSP server supports it, this will display a color block left to the color code. (#749)

  • Fixed multiple memory leak issues in the LSP module (#751)

TextMate

Improvements

  • JSON parsing is now lenient
  • Add oniguruma support to provider faster and memory-friendly tokenization (see oniguruma-native module below)

Bug Fixes

  • Fix some concurrent issues (#736)
  • Fix token colors after theme change

TreeSitter

Bug Fixes

  • Allow querying changed node and synchronize the access to the backing tree
  • Cache not update when spans are requested in full line

Oniguruma

oniguruma-native is added for matching regexps in native oniguruma implementation.

By including this module to your app, language-textmate will use it to match regexps faster and support more VSCode TextMate bundles.
In a production build, the highlight time is roughly 60% less than the older one.

0.23.7

0.23.7 Pre-release
Pre-release

Choose a tag to compare

@Rosemoe Rosemoe released this 25 Jul 13:42
223e4fe

Bugs Fixed

  • empty text committed by IME is unexpectedly ignored
  • missing some communication method implementations in input connection (fix GBoard undo/redo support)
  • missing highlighted delimiter foreground color in some built-in color schemes

Notice

Since v0.23.7 (inclusive):

  • the group namespace is migrated to io.github.rosemoe instead of io.github.Rosemoe.sora-editor
  • bom module is renamed to editor-bom

Due to the migration to Central Portal, the old namespace can not be used anymore.
This won't affect any previously published version.

0.23.6

0.23.6 Pre-release
Pre-release

Choose a tag to compare

@Rosemoe Rosemoe released this 25 Jul 13:35
b1777d0

Enhancements

  • improve character deleting on Android P and above
  • disable desugaring in textmate to let app developer choose whether desugaring is enabled (#641 by @MohammedKHC )
  • LSP improvements (#635, #681 by @dingyi222666 )
  • add monarch support for editor (#580 by @dingyi222666 )
  • add regex back-reference in regex search-replace (#639)
  • add default night colors for editor text action window (#644)
  • do not stroke matching delimeters (#663 by @massivemadness )
  • allow to control current line background overlapping behavior (#679 by @itsaky )
  • allow to intercept SideIconClickEvent (#680 by @itsaky )
  • provide motion region and bounds info in EditorMotionEvent (#682 by @itsaky )

Bugs Fixed

  • clipboard content is sometimes pasted like ClipData.Item {...}
  • text position error when tab width is not 4
  • mess text display after font change
  • fix unexpectedly thrown exception in Java tokenizer that leads to syntax-highlight crash
  • conflict between symbol completion and search-replace (#638)
  • possible concurrent modification to tree-sitter AST
  • negative Y offset leads to crash if overscroll is enabled (#655)
  • editor.foreground not working for textmate color scheme (#656)
  • fix measure size when wrap_content is used on editor (#658 by @StarkZhidian )
  • fix magnifier in sticky text selection mode (#659 by @massivemadness )
  • current line is highlighted when it is supposed to be disabled (#662 by @massivemadness )
  • rounded selection region not applied for empty line (#667 by @massivemadness )

0.23.5

0.23.5 Pre-release
Pre-release

Choose a tag to compare

@Rosemoe Rosemoe released this 05 Dec 05:13
20f7208

Fixes and Enhancements

  • fix some compatibility issues in textmate and Language interface
  • fix crash in finding word boundary (#618)
  • add Ctrl+DEL and Ctrl+Backspace keybindings (#625)
  • fix a display issue between character TAB and :. in some fonts
  • add workaround for unsupported regular expressions in textmate grammars
  • fix some issues in symbol pairs (#602, #609, #610, #611, #612)
  • fix possible crash during setText (#561, #562)
  • fix selection handle can easily set wrong selection position when text size is small (#554)
  • fix possible NPE in SearchThread (#568)
  • show scrollbars when mouse inside
  • add ripple background for action window buttons
  • some memory usage enhancement