Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Active tab is hard to see #552

Closed
0anton opened this issue Feb 18, 2016 · 35 comments
Closed

Active tab is hard to see #552

0anton opened this issue Feb 18, 2016 · 35 comments

Comments

@0anton
Copy link

@0anton 0anton commented Feb 18, 2016

Good morning Maxim,

I'd like again raise the question about the visibility of the active tab (not in the sense of active split area as Vitaly mentioned in the issue #164, but directly the tab area). Under WIndows 10 (and I guess Windows 8) the default difference between active and inactive tab is almost invisible, which makes it hard to work.
You can check what I mean with the following screenshots:

https://www.dropbox.com/sh/wofj7iy3q92ujgv/AAAUanJjY7XWTbYBXaBl8jXva?dl=0

Thank you and regards,
Anton

@nigurr
Copy link

@nigurr nigurr commented Mar 15, 2016

+1 It's very hard to see active tab.

@Maximus5
Copy link
Owner

@Maximus5 Maximus5 commented Mar 15, 2016

Why don't tell that to Microsoft designers???

@nigurr
Copy link

@nigurr nigurr commented Mar 15, 2016

Can we move this to WPF instead of old Sys32 control. That will not be having this feature

@Maximus5
Copy link
Owner

@Maximus5 Maximus5 commented Mar 15, 2016

.Net for terminal? Never. It must be portable and lightweight.

@nigurr
Copy link

@nigurr nigurr commented Mar 16, 2016

Any work around for this? I must say I really like this terminal :)

@erichiller
Copy link

@erichiller erichiller commented Mar 31, 2016

I think the ability to set the color of the active tab is all that is required. Say color_inactive_tab=#XXXXXX vs. color_active_tab=#XXXXXX if that is possible?

@Maximus5
Copy link
Owner

@Maximus5 Maximus5 commented Mar 31, 2016

@variab1e Really? And how do you suggest to implement these colors?

@erichiller
Copy link

@erichiller erichiller commented Mar 31, 2016

Sorry - if that is not possible - I do not mean to make it sound easy. I do not know the work/methods that would be required in this case.

@erichiller
Copy link

@erichiller erichiller commented Mar 31, 2016

@Maximus5 -- one idea, if it is easier to implement -- would it be feasible to lighten/darken the icon in the tab? Or even if the icon could be changed. "Active" Icon and "Inactive" Icon.

@Maximus5
Copy link
Owner

@Maximus5 Maximus5 commented Apr 1, 2016

No, dimming the icon is poor solution and it wouldn't be enough vivid.
Thanks to MS, developers have to invent a wheel instead of using standard controls.

@erichiller
Copy link

@erichiller erichiller commented Apr 1, 2016

Besides being able to set an "Active" Icon and "Inactive" Icon -- the only other thought I have is -- only if possible -- to be able to set and "Active" tab title text colour and "Inactive" tab title text colour.

Damn shame otherwise.

Thanks !

@erichiller
Copy link

@erichiller erichiller commented Apr 4, 2016

I realize now that the problem is particularly worsened by the fact that I have transparency. Is it possible to not apply transparency to the tab bar only?
Second alternative, possibly bold the active tab font?

@Maximus5
Copy link
Owner

@Maximus5 Maximus5 commented Apr 5, 2016

@variab1e Nothing is possible until developer draw the TabBar themselves.

@alexzh2
Copy link

@alexzh2 alexzh2 commented Oct 14, 2016

Please fix this. Really annoying to find active tab. At last add option to change font of text of active tab (for example set bold).

@Maximus5
Copy link
Owner

@Maximus5 Maximus5 commented Oct 14, 2016

Please explain to Microsoft why their UI is bad.

@latonita
Copy link

@latonita latonita commented Nov 7, 2016

its not about MS UI is bad. You won't get good UI in case you don't follow UI guidelines. :) And if not following MS'es - need to make your own.
Here is is tabs size vs tab colors - with current small tabs it is hard to see tab color behind text, eyes just dont catch difference

@cboos
Copy link

@cboos cboos commented Nov 8, 2016

Just a thought: what about altering the formatting of the tab number?

The tabs have currently the following text content:

| <1> cmd.exe | <2> cmd.exe Admin | <3> bash.exe | 

I think it would already be helpful to hint at the active tab at the level of the tab number:

| <1> cmd.exe | *2* cmd.exe Admin | <3> bash.exe | 

(or use some more fancy unicode bracket characters, like ❰2❱, if that's possible in that place)

Alternatively, only keep <n> for the active tab:

| 1: cmd.exe | <2>: cmd.exe Admin | 3: bash.exe | 

@ryanerwin
Copy link

@ryanerwin ryanerwin commented Nov 21, 2016

I'm with @cboos. Adding a character indicator around the active tab would be very helpful!

@erichiller
Copy link

@erichiller erichiller commented Dec 2, 2016

Yes I concur @cboos this seems an ideal solution

@uahim
Copy link

@uahim uahim commented Dec 2, 2016

@cboos that's a good, simple idea indeed

@cboos
Copy link

@cboos cboos commented Dec 3, 2016

So here's a more concrete proposal: have tab templates support a new %* token for the Selected tab, which would translate to ⬤ in the tab name. See it here in action:

552-selected-tab-indicator

From a19bb4b8fb0185c6c6bf5cf50c5273d9a39b9ee7 Mon Sep 17 00:00:00 2001
From: Christian Boos <cboos@bct-technology.com>
Date: Sat, 3 Dec 2016 23:49:53 +0100
Subject: [PATCH] gh-552: Add %* format in tab templates for selected indicator

---
 src/ConEmu/ConEmu.rc         | 2 +-
 src/ConEmu/TabBar.cpp        | 6 ++++++
 src/ConEmuCD/ConsoleMain.cpp | 2 +-
 3 files changed, 8 insertions(+), 2 deletions(-)

diff --git a/src/ConEmu/ConEmu.rc b/src/ConEmu/ConEmu.rc
index 5f1f4a2..e9ec0f6 100644
--- a/src/ConEmu/ConEmu.rc
+++ b/src/ConEmu/ConEmu.rc
@@ -1007,7 +1007,7 @@ BEGIN
     RTEXT           "Charset:",stTabFontCharset,225,79,90,8
     COMBOBOX        tTabFontCharset,319,77,54,67,CBS_DROPDOWNLIST | CBS_AUTOHSCROLL | WS_VSCROLL | WS_TABSTOP
     EDITTEXT        tTabConsole,58,130,106,12,ES_AUTOHSCROLL
-    LTEXT           "%s - Title, %c - Console #, %n - Active process name, %p - PID,\n%a - ‘Admin’, %d - current shell directory, %f - folder, %% - %",stTabTemplateDescr,57,110,314,16
+    LTEXT           "%s - Title, %c - Console #, %n - Active process name, %p - PID, %* - Selected tab\n%a - ‘Admin’, %d - current shell directory, %f - folder, %% - %",stTabTemplateDescr,57,110,314,16
     RTEXT           "Maximum tab width (in chars):",stTabLenMax,8,168,123,8
     EDITTEXT        tTabLenMax,135,166,40,12,ES_AUTOHSCROLL
     EDITTEXT        tAdminSuffix,301,189,72,12,ES_AUTOHSCROLL
diff --git a/src/ConEmu/TabBar.cpp b/src/ConEmu/TabBar.cpp
index 5c912e1..60d0d61 100644
--- a/src/ConEmu/TabBar.cpp
+++ b/src/ConEmu/TabBar.cpp
@@ -1597,6 +1597,12 @@ int CTabBarClass::PrepareTab(CTab& pTab, CVirtualConsole *apVCon)
 					_wsprintf(szTmp, SKIPLEN(countof(szTmp)) _T("%i"), pTab->Info.nIndex);
 					pszText = szTmp;
 					break;
+				case _T('*'): // %* - Selected tab indicator
+					if (gpConEmu->isVConValid(apVCon) == GetCurSel() + 1)
+					{
+						pszText = L"\x2b24";  /*"⬤"*/
+					}
+					break;
 				case _T('p'): case _T('P'): // %p - Active process PID
 					if (!apVCon || !apVCon->RCon())
 					{
diff --git a/src/ConEmuCD/ConsoleMain.cpp b/src/ConEmuCD/ConsoleMain.cpp
index 71d2180..0e8cb5c 100644
--- a/src/ConEmuCD/ConsoleMain.cpp
+++ b/src/ConEmuCD/ConsoleMain.cpp
@@ -6980,7 +6980,7 @@ bool IsKeyboardLayoutChanged(DWORD* pdwLayout)
 			{
 				wchar_t szErr[80];
 				_wsprintf(szErr, SKIPCOUNT(szErr) L"ConsKeybLayout failed with code=%u forcing to GetKeyboardLayoutName or 0409", nErr);
-				_ASSERTE(FALSE && "ConsKeybLayout failed");
+				// _ASSERTE(FALSE && "ConsKeybLayout failed");
 				LogString(szErr);
 				if (!GetKeyboardLayoutName(szCurKeybLayout) || (szCurKeybLayout[0] == 0))
 				{
-- 
2.10.0.windows.1

@Maximus5, if you like the proposal and would prefer a proper pull request instead of a patch, please tell me.

(the patch also contains an unrelated change in src/ConEmuCD/ConsoleMain.cpp which avoids a "trap" dialog on startup)

@ryanerwin
Copy link

@ryanerwin ryanerwin commented Dec 4, 2016

@cboos @Maximus5

Nice. This is great. Can't wait to see this come out in the next ConEmu Beta 👍

Maximus5 pushed a commit that referenced this issue Dec 7, 2016
… inactive (M) tab.

  So, if you want to see ‘• ’ mark on the active tab (to emboss active tab)
  just change your console tab template to smth like: ‘%m• m<%c> %s’.
  https://conemu.github.io/en/SettingsTabBar.html#id2106
@cboos
Copy link

@cboos cboos commented Dec 14, 2016

Thanks, that's perfect!

@ryanerwin
Copy link

@ryanerwin ryanerwin commented Dec 14, 2016

I experimented with several iterations, and found that this snippet works great with the new selected tab indicator

%m ★ <m%M|M%c%m>m%M|M %s%m ★ m

I can always see which tab I'm on... No more guessing.

image

@rdslw
Copy link

@rdslw rdslw commented Apr 17, 2017

This (different color background for active tab) is really needed.
I do understand it's not easy to do, but hey, recent gitlab HUGE problem with deleting production db, happened BECAUSE admin mistaken terminals he entered 'rm' command. Maybe he used conemu ;)

@Maximus5 that would be a GREAT feature for conemu.

@mikesigs
Copy link

@mikesigs mikesigs commented Sep 19, 2017

Just putting my 2 cents in here. I think @cboos solution is perfect, considering the alternatives (or lack thereof) and it would benefit you @Maximus5 for not having to see this feature requested any longer!

@nigurr
Copy link

@nigurr nigurr commented Sep 20, 2017

@Maximus5 Can you please consider this? This is really an important feature to distinguish between tabs

@Maximus5
Copy link
Owner

@Maximus5 Maximus5 commented Sep 20, 2017

Sorry, but what "this"?
Anyone may configure their tabs like #552 (comment) and it was implemented long ago

@someoneinatree
Copy link

@someoneinatree someoneinatree commented May 1, 2018

Other than maybe putting #552 (comment) @cboos solution into the default config (I'm personally using %m⬤ m), this works great.

Thanks for the great software @Maximus5 !

@Maximus5 Maximus5 added this to To do in RoadMap via automation Jun 16, 2018
@randsu
Copy link

@randsu randsu commented Dec 21, 2018

For a really visible big black square on active tab, go to:
Settings → Main → Tab Bar → Console, and then paste:

%m m %s

Works great 👌

@remborg
Copy link

@remborg remborg commented Aug 5, 2019

Thanks @randsu !
I went for a friendly frog face instead, with current folder and active process name:
%m🐸 | m%f | %n
I wish Microsoft thought about this...

@mikesigs
Copy link

@mikesigs mikesigs commented Aug 19, 2019

I don't mean to brag here, but I think my icon is the best...

%s %m👀m

@BobSimms
Copy link

@BobSimms BobSimms commented Jan 23, 2020

After experimenting with a few fancy unicode characters, I like the heavy check mark (U+2714):
%mm %s
(shown using Ubuntu as the tab font)
Clipboard01

@0anton
Copy link
Author

@0anton 0anton commented Feb 28, 2021

It looks like this issue was a plenty of solutions and can be closed.

@0anton 0anton closed this Feb 28, 2021
RoadMap automation moved this from To do to Done Feb 28, 2021
@mmatrosov
Copy link

@mmatrosov mmatrosov commented May 15, 2021

The proposed solutions are indeed good. But I wonder if it is possible to use a different font for the active tab? I'd be happy if I could just make it bold.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
RoadMap
  
Done
Linked pull requests

Successfully merging a pull request may close this issue.

None yet