75b02a6 main.c(save_prefs): Set sane defaults if < 0 when saving prefs
~strahinja pushed to ~strahinja/scribe git
Scribe ====== Simple text editor using the WINGs library FAQ --- Q: Why is this application so buggy/slow? A: It currently relies on stock WINGs WMText component, which is far from production-ready. Use at your own risk! See "Known Bugs". WMText is a rich text-capable component, which is likely the reason for all the bugginess and slowness. (I do have a perhaps overly ambitious plan of eventually creating a working, plain text-only component similar to WMText and replacing WMText in Scribe with that.) Known Bugs ---------- - Numerous bugs with WMText, including, but not limited to: * line heights not matching font size (most visible for large fonts) * scrolling backwards with up arrow making the component not draw text until the scroll position is changed with scroll bars * editing operations on a large file (ex. LICENSE) are very slow * etc. - Inherited from wmgen (more accurately, from WINGs itself): when "Shared application icon" is selected, one of the two things happen, depending on whether WMMapSubwidgets and WMMapWidget for the main window is called before (A) or after (B) creating the main menu: A) Every instance of Scribe will generate a "phantom copy" of the application menu, which persists after closing the application, can't be closed with xkill, apparently isn't associated with any process, and for which xprop doesn't detect any properties. Interestingly, when the main application is closed, and relaunched, the extra copies of menus work in the new instance. B) The menu is not shown at all. This is the same behavior/known bug as in FSViewer. I chose to follow option (B), same behavior as in FSViewer. I believe that having no menu at all, and behaving consistently with known application is better than having leftover uncloseable copies of menus around. - Inherited from WINGs: switching to another window covering the area of the screen occupied by the menu, and then back to Scribe, leaves the menu behind the other window. License ------- Scribe - Simple WINGs text editor Copyright (C) 2023-2024 Страхиња Радић This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <https://www.gnu.org/licenses/>.