Commit Graph

159 Commits

Author SHA1 Message Date
Jekyll Wu
10e1f01fc2 Just rename :) 2012-02-14 08:19:51 +08:00
Jekyll Wu
ad947159e2 Why modify _notifiedActivity in the handler for notifying silence? 2012-02-14 07:46:48 +08:00
Jekyll Wu
8d626c16cf Improve the logic of Session::setMonitorActivity(bool)
* do nothing when current status is the same as new status
  * alwasy stop the related timer
2012-02-14 07:28:36 +08:00
Jekyll Wu
83c8296d1c Add simple comment for resetting the timer for monitoring silence 2012-02-14 06:56:34 +08:00
Jekyll Wu
10341b7c76 [Trivial] Rename and move code around 2012-02-14 06:52:45 +08:00
Jekyll Wu
8e9e391d2a Trivial fix for comments 2012-02-14 06:33:23 +08:00
Jekyll Wu
f19eb2a964 Remove inappropriate comments 2012-02-14 06:27:58 +08:00
Jekyll Wu
f0529c1c02 Prefer foreach(..) over iterating manually for readability 2012-02-13 21:28:48 +08:00
Kurt Hindenburg
8bceb701a7 Add comment about changing Icon using ]32; 2012-02-09 23:01:47 -05:00
Kurt Hindenburg
fc2ae02a23 I don't think \033]31 has ever worked in KDE 4.x 2012-02-09 22:18:16 -05:00
Jekyll Wu
7e6916d57c Move some environment varibale settings from Pty to Session
I failed to see the intention of adding some environment variables in
class Session while adding some other environment variables in class
Pty. The current way makes Pty::start() contain too many parameters,
which looks ugly and is not easy to understand.

The only side effect of this commit is dbus method environment() will
return more. I don't think that would be harmful.
2012-02-10 02:38:04 +08:00
Jekyll Wu
ee95187bce Better not manipulate _environemnt member directly
In general, I think the current way of setting environment is a bit
problematic. This commit is a preparation for further changes
2012-02-10 02:06:07 +08:00
Jekyll Wu
07cddfe302 Create dbus object for each Konsole window respectively
Its naming scheme is "/Windows/N", similar to "/Sessions/N" for
sessions. That is not the final decision and might change before next
major release.

The old "/Konsole" dbus object is still available at this moment, but
it might disappear or be used for something different in the future, so
it is better to use "/Windows/N" from now on.

For convenience, $KONSOLE_DBUS_WINDOW can be used to refer to the dbus
object corresponding to the Konsole window containing current session.
Note, that environment variable does not work well with detaching and
draging. Maybe it should not be added at all.

CCBUG:276912
CCBUG:281513
CCBUG:292309

REVIEW:103790
2012-02-09 01:50:43 +08:00
Jekyll Wu
95b8d5551e Add dbus method for setting and querying history size per session
FEATURE: 120040
FIXED-IN: 4.9
2012-01-26 21:20:09 +08:00
Jekyll Wu
3d8da1f878 Make 'foreach(...)' more readable 2012-01-14 22:54:56 +08:00
Kurt Hindenburg
d8e05a0672 Use the Qt versions of strlen, strncpy, strncmp 2012-01-03 23:29:05 -05:00
Kurt Hindenburg
1baa56feda White space changes - astyle and Qt normalize don't like each other.
Use 'git diff -w --ignore-all-space' to see non-whitespace changes.
2011-12-25 13:13:55 -05:00
Kurt Hindenburg
73b7f56968 Apply astyle-kdelibs
Over the years, the coding style is all over the place.

Use 'git diff -w --ignore-all-space' to see non-whitespace changes.
2011-12-24 11:18:00 -05:00
Jekyll Wu
36bd1828f3 Revert "Ensure %w and %# are also expaned in the 'Copy input' dialog"
That fix is not good enough because it makes '%w' being updated only
after keystroke instead of immediately . The issue of updating title is
actually a little more complicated than I have understood.

Revert it because the regression should influence more users than the
fixed problem does. Need to spend more time to find a better fix.

CCBUG: 175755
CCBUG: 287536

This reverts commit 1c1981501b.
2011-11-29 14:15:47 +08:00
Jekyll Wu
142e6b73ca Normalize signal/slot 2011-11-07 17:28:58 +08:00
Jekyll Wu
125e2c7bd2 Declare pointer and reference in a consistent way
Most code use the "const QString& text" form, instead of the "const
QString &text" form. So change the minority to be consistent with
the majority.
2011-11-06 06:13:28 +08:00
Jekyll Wu
cf92cece2b Remove leading white spaces in blank lines to make them really empty 2011-11-05 07:29:21 +08:00
Jekyll Wu
102371bb3a Rename _closePerUser to _closePerUserRequest for clarity 2011-10-24 18:42:03 +08:00
Jekyll Wu
841206fb13 Title set by dbus method setTitle() should be sticky by default
It is not intuitive and easy for users to find they need also
call dbus method setTabTitleFormat() to avoid that title being
replaced on session activity.

BUG: 262089
FIXED-IN: 4.8
2011-10-22 18:56:26 +08:00
Jekyll Wu
1c1981501b Ensure %w and %# are also expaned in the 'Copy input' dialog
The fix is quite simple. Just move the existing code for expanding
%# and %w into Session::getDynamicTitle(), where all other tab title
formatters are expanded. That also makes the code simple and natural.

BUG: 175755
FIXED-IN:4.8
2011-10-22 03:18:01 +08:00
Jekyll Wu
07bf74c335 Adjust #include to make the dependency more explicit 2011-10-21 22:09:48 +08:00
Jekyll Wu
a2a54f41d8 make Session::updateForegroundProcessInfo() easier to understand 2011-10-21 19:09:59 +08:00
Jekyll Wu
379c5bb7de Minor change on initial value and code style 2011-10-21 19:09:59 +08:00
Jekyll Wu
3d0b5a74d0 'delete NULL' is always safe 2011-10-21 19:09:51 +08:00
Jekyll Wu
fc6c244335 fix the compiler warning for the order of member initialization 2011-10-21 17:03:59 +08:00
Jekyll Wu
ed88c7f5da Refactor Session::activityStateSet() to make it more readable 2011-10-21 13:23:22 +08:00
Jekyll Wu
277038478b Allow activity notification to be triggered more than once.
The activity notification is now masked for a while after it is triggered.
That is basically what KDE3 konsole does. The mask interval is intended
to avoid the flooding of notification and is hardcoded as 15 seconds
at the moment. Maybe that interval should be user configurable.

FIXED-IN:4.8
CCBUG: 257752
2011-10-21 12:37:47 +08:00
Jekyll Wu
b4d30060c2 Rename the timer related with "Monitor Silence" for clarity
That timer is dedicated for the "Monitor Silence" feature, so
_monitorTimer is a too generic name.
2011-10-21 05:05:09 +08:00
Jekyll Wu
6ff48dff6a Not a good idea to use _monitor as parameter name 2011-10-21 00:15:30 +08:00
Jekyll Wu
451738cc98 Close the session reliably after the terminal process itself crashes 2011-10-16 04:14:54 +08:00
Jekyll Wu
582364186d Refactor method Session::done(int, QProcess::ExitStatus).
- make the logic easier to understand
  - ensure the warning message is non-empty
2011-10-16 04:05:52 +08:00
Jekyll Wu
e3a09c9c4d Close session reliably when the session process doesn't die with SIGHUP.
BUG:241709
BUG:251566
CCBUG:254600
FIXED-IN: 4.8
REVIEW:102239
2011-10-03 12:40:04 +08:00
Jekyll Wu
790e835c6f Do not resolve the symlink for initial working directory.
The patch is from Danny Daemonic <DannyDaemonic@gmail.com>

FEATURE: 242114
FIXED-IN: 4.8
2011-09-30 23:56:19 +08:00
Jekyll Wu
c7e300a513 Delete another uncessary "#include <assert.h>". 2011-09-27 23:17:03 +08:00
Jekyll Wu
195abc0324 Rename erase char related methods in class Pty.
erase()    ==> eraseChar()
setErase() ==> setEraseChar()
2011-09-27 13:27:38 +08:00
Jekyll Wu
272ac9850e Include KDE headers consistently in the from of "#include <KSomething>" .
However, some KDE headers are still only available in the form of
"#include <ksomething.h>"

krun.h              ==>     KRun
kicon.h             ==>     KIcon
kdebug.h            ==>     KDebug
kshell.h            ==>     KShell
kdialog.h           ==>     KDialog
kconfig.h           ==>     KConfig
klocale.h           ==>     KLocale
kglobal.h           ==>     KGlobal
kcolorutils.h       ==>     KColorUtils
kconfiggroup.h      ==>     KConfigGroup
kdesktopfile.h      ==>     KDesktopFile
kcolorscheme.h      ==>     KColorScheme
kstandarddirs.h     ==>     KStandardDirs
ktemporaryfile.h    ==>     KTemporaryFile
klocalizedstring.h  ==>     KLocalizedString
2011-09-23 05:04:46 +08:00
Jekyll Wu
2818d96536 Calling Session::run() on a already running sesssion makes no sense. 2011-09-05 15:26:22 +08:00
Jekyll Wu
c246e94fb5 Check whether the pointer _shellProcess is null before using it. 2011-09-05 15:26:07 +08:00
Jekyll Wu
0e184eeda9 KStandardDirs::findExe() is actually a static method. 2011-09-03 17:09:34 +08:00
Jekyll Wu
f5772ab06b Enable copy action only when some text are selected.
FEATURE: 203768
FIXED-IN: 4.8
2011-08-27 01:59:18 +08:00
Jekyll Wu
0ddf722e08 Disable clear & reset actions when the secondary screen is in use.
BUG:204741
FIXED-IN: 4.8
2011-08-27 00:14:09 +08:00
Jekyll Wu
17588b326f Revert "use qobject_cast in place of old-style c++ type cast."
That change causes crash when detaching session. Weird.

This reverts commit 458095e8a4.
2011-08-25 23:59:03 +08:00
Jekyll Wu
458095e8a4 use qobject_cast in place of old-style c++ type cast. 2011-08-25 20:03:02 +08:00
Jekyll Wu
d2ea045040 Make some code slightly more readable. 2011-08-25 19:51:19 +08:00
Jekyll Wu
769f933256 align arguments in the same column. 2011-08-25 15:46:56 +08:00