Also, lots of little cleanups: formatting, adding return statements and
return values where they were missing, fix spelling mistakes, add newlines to
separate command blocks, remove trailing whitespace.
* Switch UTF8Char's IsSpace, IsAlNum, ToLower functions to use
system-wide BUnicodeChar service routines;
* Switch TermView::CharClassifier to use UTF8Char instead of
raw char* string ponter. That reduces count of conversions
and simplify code;
Fixes#7423.
No need for PREF_HALF_FONT_FAMILY/_STYLE defaults to be defined explicitly,
these entries will be filled with corresponding params of the current system
fixed font if they are not available from the settings file.
Fixes#9531.
Fixes issue with missed SIGWINCH shell notification in case the
Terminal frame was resized by using any of "Settings"->"Window size"
menu items.
Fixes#9293 - original problem was pointed out by Ziusudra. Thank you!
Handle the current attributes of the TextBuffer consistently with other
Alt/Normal buffer sensitive variables. That fixes, for example, issues
with wrong background coloring of new lines in normal text buffer after
maximizing the terminal window running applications (like MC) performing
output onto alternate screen.
This modification moves the debug characters capture call directly into
the _NextParseChar(). That allows to capture all data flow without
missing things like OSC control sequences.
Yet another fix for the terminal cursor save/restore functionality.
Fixes wrong cursor positions observed in modern versions of the
Midnight Commander during switching between Alternate and Normal buffers.
Fix the PrefHandler::_ConfirmFont to take into account not only the
font family but the font style too. This improves the popup menu
checkmark synchronization in the Preferences View. This problem can
be reproduced on very first start of application without previously
stored Terminal settings. Default family/style for this case is
currently defined as "Courier 19BT"/"Regular" but default fixed
font has correspondently "DejaVu Sans Mono"/"Book". Previous version
of _ConfirmFont() process only the family and left the style in default
"Regular" one. So opening Preferences View and attempting to set the
checkmark on corresponding family/style menuitem was usually failed.
* Make pointer style consistent, const char* name instead of const char *name.
* Lots of parameter renaming.
* in parameters don't get anything special, just font, or length instead of
inFont, inLength.
* out parameters get a leading _ so *outWidth becomes *_width for example.
* We don't detail private function in the Haiku book and this class has a bunch
so keep the documentation in the file but use regular comments instead.
* Normalize the parameter names between cpp file and header.
* Some minor whitespace fixes.
No functional change intended.
* Center monitor info and Workspaces label.
* Use font-relative spacing.
* Update the header including copyright year, sort contributors by name and add
myself as well.
* Put the Open in Tracker... button back in Menu.
* Put the window checkboxes in 2 columns.
* Use vertical struts instead of insets for spacing in a couple places.
* Move desk_settings and clock_settings struct to a new header entitled
'BarSettings.h' so it can be included in BarApp.h and PreferencesWindow.h.
* Refactor desk_settings to only include used, or at least relevant settings,
some cruft had built up over time.
* Refactor the InitSettings() method, all the B_OK checking wasn't working so
I removed it. Defaults get set up to and if the corresponding setting is
found in the settings file it is replaced, else, it is not.
* Reorder the struct and code so it goes in the order that the settings appear:
applications, then recent items, then window settings.
* Simplify the preferences window revert and defaults code based on using the
prebuild desk_settings structs in BarApp instead of creating our own and
copying. All initial setup is in the constructor.
As pointed out by Hamish the alignment used && in second case
instead of &, which meant it was never used.
Another error when a32 was 0xFF000000 and b32 was 0xFF00FFFF
would return a non zero value. A simple fix for the issues
with going over to the byte by byte comparison failed, so
rather than leave broken code I remove this for the time being.
Not the best code I've written obviously.
* Clear some codestyle issues catched by checker script;
* Rename RestartDebugCapture to more consistent StartStopDebugCapture;
* Updated Copyrights and authors lists, some occurences of the raw MIT
licence text replaced with "under the terms of MIT licence" reference;
* Fixes for x86_64 build.
This is cumulative cleanup commit for series of Terminal refactoring
changes I have introduced last time. No significant functional changes.
* ColorsTable moved to TerminalBuffer to let easy lookup of table
during parsing of control sequences;
* Default Palette initialized from now in TermApp and preserved
from modifying by applications;
Use native bold font for rendering characters with corresponding
attribute set. Possibility for switching to R5-like bold characters
emulation is also implemented. This one uses uses the left-down shadow
in B_OP_BLEND drawing mode instead of the rigth-down one as previously.
* Add support for underline and i-beam cursor shapes. No corresponding
UI configuration in preferences view ATM because preferences are waiting
for refactoring and we need some eggs for this Easters. ;-)
* Add handling of VT520/xterm specific DECSCUSR control sequences
allowing applications to modify the style and blinking state of the
cursor. May be utilized, for example, by console version of vim;
* Implement cursor blinking/hiding on DECSET/DECRST commands.
Previous implementation doesn't care about characters that are not
covered by attributes run length array elements - so the attributes of
the next run array element was taken instead of default one on the
HistoryBuffer::GetTerminalLine() call. Note that this was the case of
"holes" in run array but not the characters after the end of run array
elements.