[prev in list] [next in list] [prev in thread] [next in thread]
List: konsole-devel
Subject: [Konsole-devel] [Bug 151735] New: [PATCH] Unless renamed,
From: Christopher Layne <clayne () anodized ! com>
Date: 2007-11-02 10:19:03
Message-ID: 20071102111901.151735.clayne () anodized ! com
[Download RAW message or body]
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
http://bugs.kde.org/show_bug.cgi?id=151735
Summary: [PATCH] Unless renamed, make userTitle fully override
tab/window/icon text rather than prepend the default
Product: konsole
Version: unspecified
Platform: Compiled Sources
OS/Version: Linux
Status: UNCONFIRMED
Severity: wishlist
Priority: NOR
Component: general
AssignedTo: konsole-devel kde org
ReportedBy: clayne anodized com
Version: (using KDE KDE 3.5.7)
Installed from: Compiled From Sources
Compiler: gcc 4.2
OS: Linux
Earlier bug from 2001, which is indirectly related:
http://bugs.kde.org/show_bug.cgi?id=33641
Anyways, in cases where the user has specified their own userTitle via escape \
sequences, etc, the userTitle will override the default title, and not append, e.g. \
"- Shell" to said userTitle.
However, if a user specifically renames a session via the tab rename or dcop rename, \
that title will then be sticky and fully override whatever title is there (default or \
userTitle).
Rationale for this is that a userTitle should, in an intuitive fashion, overwrite the \
default title by nature. Additionally, the current behaviour of prepending it to the \
default session title just ends up taking way too much horizontal room in each tab \
title.
Example:
Current behaviour:
def: [ Shell No. 2 ]
usr: [ user host:/var/log/httpd - Shell No. 2 ]
ren: [ user host:/var/log/httpd - httpd logs ]
Patched behaviour:
def: [ Shell No. 2 ]
usr: [ user host:/var/log/httpd ]
ren: [ httpd logs ]
I think it's quite apparent which one will take up the least space when one has, for \
example, 6+ tabs in a given konsole window. Also, as a long time user of konsole on a \
day to day basis, I think it would be prudent to remove the "No. x" code present in \
konsole.cpp (the double while loop deal). For one, it adds complexity to the code, \
but more importantly there is really no advantage to knowing which session number a \
given tab is. It's arbitrary and not something that one even takes note of - hence it \
just steals valuable horizontal space in the tab bar.
Patch for previously discussed changes:
Index: kdebase/konsole/konsole/session.cpp
===================================================================
--- kdebase/konsole/konsole/session.cpp (revision 722255)
+++ kdebase/konsole/konsole/session.cpp (working copy)
@ -246,8 +246,8 @
QString TESession::fullTitle() const
{
QString res = title;
- if ( !userTitle.isEmpty() )
- res = userTitle + " - " + res;
+ if ( !titleSticky && !userTitle.isEmpty() )
+ res = userTitle;
return res;
}
@ -334,7 +334,8 @
void TESession::renameSession(const QString &name)
{
- title=name;
+ setTitleSticky(name);
+
emit renameSession(this,name);
}
@ -464,6 +465,12 @
font_no = fn;
}
+void TESession::setTitleSticky(const QString& _title)
+{
+ title = _title;
+ titleSticky = true;
+}
+
void TESession::setTitle(const QString& _title)
{
title = _title;
Index: kdebase/konsole/konsole/konsole.cpp
===================================================================
--- kdebase/konsole/konsole/konsole.cpp (revision 722255)
+++ kdebase/konsole/konsole/konsole.cpp (working copy)
@ -3790,7 +3790,7 @
if (!ok) return;
- ses->setTitle(title);
+ ses->setTitleSticky(title);
slotRenameSession(ses,title);
}
Index: kdebase/konsole/konsole/session.h
===================================================================
--- kdebase/konsole/konsole/session.h (revision 722255)
+++ kdebase/konsole/konsole/session.h (working copy)
@ -85,6 +85,7 @
void setKeymap(const QString& _id);
void setFontNo(int fn);
void setTitle(const QString& _title);
+ void setTitleSticky(const QString& _title);
void setIconName(const QString& _iconName);
void setIconText(const QString& _iconText);
void setAddToUtmp(bool);
@ -186,6 +187,7 @
bool masterMode;
bool autoClose;
bool wantedClose;
+ bool titleSticky;
QTimer* monitorTimer;
//FIXME: using the indices here
_______________________________________________
konsole-devel mailing list
konsole-devel@kde.org
https://mail.kde.org/mailman/listinfo/konsole-devel
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic