# Mybase Desktop 8.x ChangeLog

## Version 8.2

1. Added: support of the dark mode, and restructured the UI theme files/folders for more flexibilities in the UI theme customization.
2. Added: options to choose image size on pasting images in Html/Rich/Md documents; Fixed sizes and proportional dynamical sizes are supported for Html documents; The dynamical resizing allows images to auto-fit the current content view when the view size changed. For rich text editor, images can be pasted to fit the current view but the size is fixed and will not be adjusted when the view size changed.
3. Bugfix: on windows with 150% dpi, the user interface was by default rounded up to 2x that usually makes the UI widgets look too large but hard to use. Now the user interface will remain at 1x for 100-150% dpi, and go up to 2x only when the dpi setting is set to larger than 150%. Therefore with 150% dpi the icon size may need to be manually adjusted to 130%~150% from in the Options/Preferences dialog, and the Html/Markdown content view may need to be zoomed in to 1.3~1.5 by pressing Ctrl+=.
4. Added: ability to zoom in/out by using the context menus within Html/Markdown documents.
5. Added: the current zoom factor for Html/Markdown documents is now shown in the status bar.
6. Added: some more options added in the appui.ini of current UI theme: [App.UI.SvgIconColor, App.UI.ErrMsgColor, App.UI.TreeLineColor, Document.HyperlinkColor, etc.] for better support of the Light and Dark mode.
7. Plugin: Tools - Edit stylehsheets for Html/Md documents, for customization of stylesheets for documents under the current UI theme.
8. Plugin: Tools - Edit stylehsheets for syntax highlighter, for customization of stylesheets for sytax highlighting under the current UI theme.
9. Added: double-clicking on an image within Html/Rich contents has the image automaically selected and allows to resize it.
11. Bugfix: [Paragraph - Line spacing] may stop functioning in some cases.
13. Added: some more date periods added to the dropdown list for the plugin: List recently modified entries.
14. Bugfix: [Insert symbols] not working well in the dark mode.
15. Added: support of predefined macros of UI colors in the hlqt*.css for syntax highlighting under current UI theme.
16. Bugfix: syntax lighlighter not working well for tags starting with digits in the rich/plain/md editors.
17. Added: some more macros of UI colors added for better support of UI theme customization.
18. Bugfix: the Html/Markdown content view may flicker with a white/blank screen before html/markdown documents fully loaded in light UI themes.
19. Added: the optional factors to produce lighter/darker colors for custom UI themes to work in Dark/Light mode.
20. Added: the optional [max-width: 100%] for images not to exceed their container size within the Html/Markdown documents.
21. Added: for linux the default UI font size is now set to 11pt with in the locale .ini files.
22. Added: themed stylesheets for the document format picker page to work in the current UI theme.
23. Added: support of localized UI theme names via the language .ini files.
24. Bugfix: in the rich text editor, attached images may not work normally.
25. Bugfix: the trash/shortcut badge icons not shown in the attachment list and in the Undelete dialog.
26. Added: the plugin [Share - Export Markdown document], to export text contents in the current document/branch/database and save as a single .md file; Images can be embedded in BASE64 or simply ignored..
27. Improved: the plugin [Share - Export HTML document], to export text contents in the current document/branch/database and save as a single .html file; Images can be embedded in BASE64 or simply ignored.
28. Improved: the plugin [Share - Export PDF document], to export text contents in the current document/branch/database and save as a single .pdf file; Images can be preserved or simply ignored.
29. Bugfix: on macOS the native style not take effects in all push-buttons once the chinese langauge file is loaded.
30. Bugfix: any label item renamed with only a Dot may cause problems loading the hierarchical labels.
31. Bugfix: in rich text contents, the hyperlink color is hard to recognize in the dark mode.
32. Bugfix: background color of the main window/dashboard/dialog-box looks too dark in the light mode.
33. Bugfix: the vertical scrollbar of the content view may not automatically be restored back to last visited positions.
34. Bufix: Exporting current document as .html/pdf, linked images not embedded as requested.
35. Bugfix: <body> not set to visible while converting md2html.
36. Bugfix: in html documents, previous match occurrences highlighted not cleared for next searches.
37. Bugfix: in the History/Goback/Forward popup menus, info items no longer existing may still be shown up.
38. Bugfix: in the outline tree view, current info item may not correctly reflect changes when moved elsewhere.
39. Bugfix: incorrect function name used in Exporting md/html/pdf/chm plugins.
40. Bugfix: last used item content may be loaded twice or more redundant times on db-open.
41. Bugfix: on win64, unwanted warnings from qt framework: QBasicTimer::start: Timers cannot have negative timeouts.
42. Bugfix: for inline code in markdown documents to avoid line-breaks on exporting curDoc to html/pdf.
43. Bugfix: disregard white-space from all stylesheets and leave them as defaults.
44. Bugfix: the [Copy image] utility copies unwanted dataURL/Text to clipboard, that may cause confusion on pasting in other apps.
45. Bugfix: inline editor for styled item titles within the outline view not render their custom style.
46. Bugfix: screenshots clipped with some 3rd-party apps not working well on pasting in the inbuilt html/rich text editors.
47. Bugfix: in markdown documents headings wrapped into multi-line text may overlap.
48. Bugfix: the [Paste unformatted] utility may incorrectly insert html source code into rich/html editors.
49. Bugfix: on windows pasting local files into text contents may not work.
50. Bugfix: images from different info items while having a same file name may not work in chm-export.
51. Bugfix: mathjax3 may not work with the autload configurations.
52. Bugfix: inline codeblocks not working with sourcecode containing double backticks.
53. Bugfix: codeblocks with ~~~ not highlighted in markdown editor.
54. Bugfix: accompanying images may not be imported when importing a directory tree.
55. bugfix: plugin [Export MD Document] may not work with contents currently loaded in the html editor and [TOC] is generated.
56. Added: the ability to select/copy code lines to system clipboard by simply double-clicking anywhere with in the [code] blocks.
57. Bugfix: within the html editor, on pasting images into the contents, input caret incorrectly set to the position in front of the image inserted.
58. Bugfix: Ctlr+F may not work while in markdown documents containing online images that need to be downloaded over network.
59. Bugfix: a few of ES6 reserved keywords not included in the syntax highlighting for plain/rich text contents.
60. ...

## Version 8.1

2. Option: to make multi-level lists by pressing Tab/Shift+Tab in the Html editor; If no text selected nor focused in numbering/bullets, pressing Tab key in the Html editor inserts 8 blankspaces as usual.
3. Option: to extract text from arbitrary files for indexing and searching.
4. Option: to show attachment indicators within the outline tree.
5. Option: to exclude a list of file types from document parsing during indexing.
6. Bugfix: the QtWebEngine was too huge and hard to embed with in the desktop application; Resolved.
7. Bugfix: it may take quite a while to insert a peice of text content into HTML editor.
8. Bugfix: the table editing utilities not working normally.
9. Bugfix: the icon of outline leaf items not updated with a foloder-like glyph when other items moved as its child items.
10. Bugfix: the nyf:// hyperlinks may not work if the dbfile not specified or moved to other folders.
11. Bugfix: the TOC list may generate wrong indentations with multiple level headings.
12. Bugfix: crashes on macOS 12 resolved.
13. Bugfix: crashes on macOS M1 resolved.
14. Bugfix: about 0.5 second latency opening info items resovled.
15. Bugfix: title text of outline items exceeding the view size may incorrectly be justified.
16. Bugfix: the plugin Import directory tree may throw exceptions on specific entries while traversing throug sub directories.
17. Bugfix: the problem with the qtwebengine that was too large and hard to integrate with the desktop application resolved.
18. Bugfix: default font size not set correctly for syntax-highlighting within rich text editor.
19. Bugfix: pressing Tab key may unexpectedly modify text contents opened in readonly mode.
20. Bugfix: syntax highlighting in Html editor may not work normally.
21. Bugfix: listing all entreis not working normally.
22. Bugfix: regexp patterns for common date/timestamps and digits/numbers to be hihglighted with in Rich/plain text editors.
23. Added: the Thread list view as one of the navigation panes whereby existing threads and threaded info items are listed for viewing only. The threads list is sorted by alphabet in local 8-bit character set.
24. Bugfix: typing [[ in html contents incorrectly inserted the thread tag.
25. Bugfix: copy/paste of local file names containing spaces not working.
26. Bugfix: focusOut events not emitted from in html contents for auto-detection of threads.
27. Jsapi: canvas.renderHtml(); platform.convertHtmlToMarkdown();
28. Plugin: Share - Export image file, allows to export current contents as a jpg/png file.
29. Plugin: Tools - Save webpage as image, allows to download a webpage specified by URL and save as a jpg/png file.
30. Bugfix: String.trimRight not implemented but required by the latest marked.js.
31. Bugfix: failure setting a few paragraph attributes for html contents.
32. Bugfix: switching to html source view on macOS may cause currently selected text to unexpectedly disappear.
33. Bugfix: to disregard threads while editing html source code in the plain text editor
34. Bugfix: relative path variables not working in markdown.
35. Change: the Import/export utilties categorized into the File menu instead of Tools.
36. Change: the shortcut key Ctrl+N previously bound with the New Database menu item, but not so frequently used, now unbound.
37. Bugfix: percent-decode if any encoded characters existing in hyperlinks before being shown on status bar.
39. Bugfix: changing font settings in plain text editor may unexpectedly set the Dirty flag.
40. Option: for newly added info items to automatically be linked with current calendar date.
41. Bugfix: when the image-gallery loaded, the content view didn't go into the Readonly mode.
42. Bugfix: in markdown, references to local image files with no file:// prefix not working.
43. Bugfix: certain .webp images may not work well with in qtwebkit.
44. Bugfix: pressing the Delete/Backspace key when contents are open in readonly mode, that may cause qtwebkit navigate back to the last opened content.
45. Bugfix: on the main toolbar, it allows to enlarge the Search-as-you-type edit box to be set larger via QSS within current UI themes.
46. Bugfix: local image file links without file:// protocol scheme not working with in markdown.
47. Bugfix: TOC size may exceed the webpage's view area.
48. Plugin: allows to insert headings into html/markdown for automatically generation of TOC.
49. Option: allows to for Rich/plain text editor to automatically highlight numbers, datestamps and timestamps.
50. Bugfix: for Find/replace in text contents, background color of matched text may gray out when the text editor loses input focus.
51. Bugfix: problems exporting ePub documents due to changes made to the relevant JsApis during migration of JS Engine.
52. Bugfix: leading "\t" characters existing in html source for indentations may be unnecessarily encoded while exporting ePub.
53. Bugfix: within the outline tree view, custom icons may be trimmed by one pixel as too narrow spacing from title text.
54. Bugfix: in markdown, local images file may not work with relative path variables.
55. Bugfix: for compatibility with different OS platforms, relative path variables are now using forward-slashes with no back-slashes allowed.
56. Bugfix: allows to paste/drag-drop local image files into html/qrich/md contents as images, instead of ordinary file links.
57. Bugfix: local image file links containing relative path variables not working with in rich text editor.
58. Bugfix: parsing large sized xml files not supported, that may cause the user interface to stop responding.
59. Bugfix: certain svg/webp images may not working well with qtwebkit.
60. Bugfix: search results list not updated after labeled/unlabeled from in the results list.
61. Bugfix: document-defined stylesheets originated from websites may overflow to list items of TOC.
62. Bugfix: searching for non-ASCII characters not working well with the AND/OR/NOT boolean operators.
63. Bugfix: boolean operators not working well with seraching for parital words.
64. Bugfix: the Find/replace panel not working well with current input focus.
65. Bugfix: inbuilt css stylesheets may not work with TOC in random Html documents captured from websites.
66. Bugfix: redundant clicks needed to toggle edit mode for attached source code files to be editable within plain text editor.
67. Bugfix: the Export MS-Word outline plugin didn't send text contents but only title text to MS-Word.
68. Bugfix: failure setting/retrieving font family names for selected text within the rich text editor.
69. Bugfix: external .css links starting with [file, https]:// specified in the Options/Format dialog not working.
70. Bugfix: links to .svg/css resource files not working in the debug mode.
71. Bugfix: fontFamily() for rich text may incorrectly give the secondary font family name.
72. Bugfix: with patterns for digits, not all numbers/digits detected and highlighted in rich/plain text editors.
73. Bugfix: zoom ratio for rich text not rounded up to nearest integers.
74. Bugfix: the shortcut keys F3/Shift+F3 to find in text contents not working well on windows; In the case of F3/Shift+F3 previously assigned to other commands, it's recommended to clear them from in the Options/preferences dialog box, or simply remove the file Mybase8_keyboard_shortcuts.ini from in the ${HOME} folder. 75. Bugfix: images would be pasted as data:image even when chosen to paste as attachments with links put into html contents, due to auto-downloading of images. 76. Bugfix: control characters not striped off from label/thread text before being highlighted in tooltips of the relation-pane. 77. Bugfix: problems launching the program on some Linux systems (e.g. centos 7.x) due to icu-66. 78. Bugfix: problems launching the program on Deepin OS due to libxcb-util.so.1 not found. 79. Bugfix: problems loading databases on some Linux systems (e.g. centos 8.x) due to gmp::realloc errors. 80. Added: the app logo file and the install.sh to the Linux versio for creating a desktop icon with ease. 81. Bugfix: could not insert new info items when the outline list is empty. 82. Bugfix: relative file links not resolved while exporting html tree, e.g. /${HOME}/tmp/123.jpg
83. Bugfix: epub/chm-export plugins may not working due to unexpected UTF/BOM inserted to text files in error.
84. Bugfix: problems highlighting match occurrences with in html/rich/plain text contents.
85. Added: ability to find/replace by RegExp in the rich/plain text editor with capturing groups "\1,\2,..." supported as well.
86. Bugfix: within Html/Rich text contents, file:// links to local files/folders may not open by clicking.
87. Bugfix: UNC file links starting with file:// not handled within paste.js
88. Bugfix: finding within the Rich/Plain text editor, keep match-occurrences always highlighted even if no input-focus.
89. Bugfix: typing find-phrase to find in current text content, redundant/frequent highlighting may cause flickers.
90. Bugfix: for Windows, local image file links without file:// prefix (e.g. C:/Users/uid/temp/test.png) not working within Markdown.
91. Bugfix: local copy of MathJax2/3 may not work well.
92. Option: enable/disable auto-detection of thread tags in text contents.
93. Bugfix: for the Html editor, font familiy/size list not updated correctly on changes of current caret/selection.
94. Bugfix: in markdown, direct links to attached documents may not work, e.g. [test](test.txt)
95. Bugfix: [Open link] may not work with attachment links from in htmledit.
96. Bugfix: in DlgFontHtml, preview text samples not working with both Underline and StrikeThrough checked.
97. Bugfix: for the Html editor, the font size may incorrectly be set to 36 when using the font dialog.
98. Bugfix: the progress bar not cleared after plugins exit.
99. Added: for the Linux version, added a logo image file and the install.sh shell script, which helps add a desktop entry.
100. Added: for the Linux version, added the input method plugin modules.
101. Bugfix: pressing ESC may not immediately cancel the time-consuming process while searching for non-ASCII characters.
102. Bugfix: widget class names not specified while calling setStyleSheet for SampleTextPreview.
103. Bugfix: background-image user specified for panes not correctly rendered in the preview window.
104. Bugfix: markdown code blocks started with ~~~ not working.
105. Added: the option to choose a color for Svg icons to be rendered on the user interface, from the named colors list menu [View - Icon colors]; Only applies to .svg icons but not for other types.
106. Added: sorting named-colors list by HLS for an uncluttered looking.
107. Bugfix: app icon not hidden from on the task-bar when minimized to system tray.
108. Added: a utility for attached files to be loaded as plain text within the inbuild plain text editor.
110. Added: the plugin APIs for data exchanging between Mybase and SQL databases; Currently QSQLITE, QODBC, QODBC3, QPSQL and QPSQL7 supported.
111. Added: two SQL plugin utilites: [File - Maintenance - Backup with Sqlite database] and [Restore from Sqlite database], which can also be a Demo on using the SQL APIs.
112. ...

## Version 8.0 Beta

1. Migrated the framework from Qt4/QWebKit/QScriptEngine to Qt5/QWebEngine/QJSEngine.
2. The relation/attachments pane was relocated and docked to the rightmost side of the main window, with a tree list embedded into the relation pane for all sorts of related items/entries (e.g. attachments, links, labels, keywords etc.) to be tree-structured in a single list view without tabbing.
3. Added the event log window that allows to inspect errors, warnings, debug and/or general information while the program runs.
4. Added a few handy tool buttons on the bottom status bar for toggling the data views, such as the Navigation Pane, Relation List, Advanced Search Form, Event Log Viewer and the Search Results List.
5. The Advanced Search Form is now shown in a seperate popup window, located at the bottom-right corner of the main window.
6. The content header bar in the former design was wasting much of display space with just redundant info shown, therefore dismissed in the new version in order to have a larger content area; Correspondingly a handy tool button with a pull-down menu specific to the current contents added to the main toolbar and located above the content area.
7. Customization of UI themes supported. This version comes with an inbuilt default theme consisting of a set of .svg icons, .qss stylesheets and .ini settings, and a few example themes shipped under the "./themes" folder. How to customize UI themes

A custom UI theme consists of custom icons, stylesheets, and/or particular settings with the default theme overridden, it doesn't need to fulfil all the UI stylesheets/settings for a new custom theme, but would be OK to make necessary tweaks to the default theme. If any stylesheets/settings not defined in a custom theme, the default values will apply; For example, the inbuilt sample themes just define a single color value for the main UI, with all the rest settings remain defaults.

8. Improved the tree view widget for the ability to display lines connecting tree items on all OS platforms (including Windows 10), and the line color/size/style can be customized from in the Options/Preferences dialog box.
9. For each info item with a custom icon assigned, a background color based on the icon's hue will automatically be used. This is optional and can be disabled from in the Options/Preferences dialog box.
10. Improved the document parser for the ability of parsing MS-Office XML-based documents on all OS platforms (including macOS/Linux); so these documents can have a preview of text contents within the tooltip window when the mouse pointer hovers, and of course are indexable and searchable.
11. The document parser also supports the .zip attachments; Filenames inside the .zip are indexable and searchable, and can be listed in the tooltip window on mouse hovering.
13. [Organize - Label matched info items]: attempts to search for info items containing any of existing labels within text contents and then apply labels to matched info items respectively.
14. Introduced a new method of item linking for info items to be automatically related/connected by putting special tags like [[ keyword ]] within text contents; This way, info items (if any other) containing the same tags will automatically be linked with the current info item bidirectionally, and will therefore be listed out with in the relation list view. Notes on keywords/threads
15. URL auto-detection supported within Rich/Plain text editors, whereby URLs will automatically be highlighted and show a Hand cursor on mouse hovering; Right-clicking on URLs will show a popup menu containing the "Open link" and "Copy link address" commands.
16. On the main toolbar, a simpler dropdown list is used for fast listing font families without latency of sampling all the font families installed on the system. Installed font families will be listed by categories, and the recently used font names will always be placed on the top of the dropdown list.
17. In the search results list, added a few utilities for batch processing of selected info items and/or attachments, such as linking, labelling, deleting.
18. [Organize - Append to results list]: allows to append currently selected info items or attachments to the search results list, so the info items or attachments can be batch processed, e.g. linking, labelling, or deleting in batch. This would be helpful in the case that separate info items located in different sub branches need to be processed in batch.
19. For Markdown documents, both online versions and local offline copies of MathJax 2.x and MathJax 3.x are supported. In addition, Katex is supported as well. Katex is much more lightweight and released under the MIT license, and therefore packed as the default renderer of Math expressions for Markdown documents. The Options/Preference dialog box provides an option to determine which one is used to render Math expressions for Markdown documents.
21. For Markdown documents, Pangu is integrated to auto-render a blank space between English and Chinese characters.
22. For Markdown documents, table of contents supported. If any titles available in a .md document, the Table of Contents will automatically be shown on the top-right corner of the rendered page. There's no need to manually type in a [toc] tag.
23. For HTML and Markdown documents, injection of custom .css stylesheets supported. file path to an external .css file can be specified in the Options/Preferences dialog box. The custom .css file will dynamically be injected into all HTML/Markdown documents when rendering. This may help maintain a consolidated style for all HTML/Markdown documents. Changes to the custom .css file will automatically apply to all existing HTML/Markdown documents without having to manually revise all of them one by one.
24. For HTML and Markdown documents, per-infoitem stylesheets supported. In the case that an info item needs particular stylesheets other than the common settings, simply add a .css file (if existing) as attachment named with "per-infoitem.css", or select the "Attachmenbts - New Attachment - per-infoitem.css" menu item to create a new .css attachment, and then double click to edit or fill it out with your desired CSS code.
25. Colors of the selection bar for [list views, text editors] can be customized from in the Options/Preferences dialog box.
26. In the case that the custom index file path is customized, and the index files with the same filename (.dbindex) are existing in both the database folder and the customized index file path, the former takes higher priority and will be loaded when searching or updating indexes.
27. In the Relation pane, all related items directly or indirectly linked will be listed by default setup, and a special tag will be shown to indicate if it's linked directly or indirectly.
28. In the Label view, add an option for clicking on a label item will list out all labelled info items recursively for all sub branches.
29. In the Outline view, add an option for automatically applying custom icons associated when labelling info items.
30. In the Outline/Label nagivation pane, added the [Find words or RegExp] facility, that allows to search for words or RegExp in order to quickly seek and locate one desired among a large number of outline/label items. With keyboard, pressing Ctrl/Command+F switches the Find panel on/off, and pressing Ctrl/Shift+G triggers to find next/previous matches.
31. In the [Browse outline/labels] dialog box, added the [Find words or RegExp] facility, that allows to search for words or RegExp within the outline/label tree.
32. [Capture - Import .zip archives]: allows to import files and folders from in specified .zip archives.
33. [Share - Export .zip archives]: allows to export files and folders in the current branch to a specified .zip file.
34. [Organize - Expand to level]: allows to expand Outline/Label tree branches to a specified level [0, 9].
35. [Tools - Number base converter]: converts a given big integter to a specified base. The base number can be any number in the range [2, 62].
36. Improved Copy/Paste operation: allows to copy data of [Text, Images, Info Items, Labels, Attachments, URLs, Local Files], and paste into the views of [Text Editor, Outline Tree, Label Tree, Attachment List, Search Results]; it may prompt for further options based on results of matching data and views. More Info on Copy/Paste;
37. Minor changes, tweaks and fixes.