mirror of
				https://github.com/ArthurSonzogni/FTXUI.git
				synced 2025-10-31 10:38:09 +08:00 
			
		
		
		
	Fix terminal color detection support. (#65)
There was many obvious bugs, discovered here:
ad2a085469/Open-Source-Project-Anatomy/FTXUI.md
			
			
This commit is contained in:
		| @@ -41,15 +41,19 @@ const char* Safe(const char* c) { | ||||
|   return c ? c : ""; | ||||
| } | ||||
|  | ||||
| bool Contains(const std::string& s, const char* key) { | ||||
|   return s.find(key) != std::string::npos; | ||||
| } | ||||
|  | ||||
| static bool cached = false; | ||||
| Terminal::Color cached_supported_color; | ||||
| Terminal::Color ComputeColorSupport() { | ||||
|   std::string COLORTERM = Safe(std::getenv("COLORTERM")); | ||||
|   if (COLORTERM.compare("24bit") || COLORTERM.compare("trueColor")) | ||||
|   if (Contains(COLORTERM, "24bit") || Contains(COLORTERM, "truecolor")) | ||||
|     return Terminal::Color::TrueColor; | ||||
|  | ||||
|   std::string TERM = Safe(std::getenv("TERM")); | ||||
|   if (COLORTERM.compare("256") || COLORTERM.compare("256")) | ||||
|   if (Contains(COLORTERM, "256") || Contains(TERM, "256")) | ||||
|     return Terminal::Color::Palette256; | ||||
|  | ||||
|   return Terminal::Color::Palette16; | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Arthur Sonzogni
					Arthur Sonzogni