525d37d6a4
Shorten keyboard help to fit default screen width
2021-02-16 09:12:07 +01:00
2c6222e30a
Option and key ("*") to collapse / expand all branches under PID 1
...
(and PID 2 if kernel threads are shown)
Based on hishamhm/htop#510 by Krishna Chaitanya, B
Closes #68
2021-02-13 16:47:04 +01:00
e86acd6893
Remove force sort order to ASC when returning to tree mode
...
Bug found by BenBE via IRC
2021-02-07 13:46:57 +01:00
fd4e6b432b
Use MainPanel type in State struct
...
The State struct holds a pointer to the main process panel.
Use the distinct MainPanel type, to improve maintainability regrading
its usage.
This avoids usages of down-casts from Panel to MainPanel, only up-casts
from MainPanel to Panel are now required.
2021-02-05 14:12:49 +01:00
211121f060
Drop invalid todo
...
The surrounding code has nothing to do with colors
2021-01-27 17:06:21 +01:00
37e186fd66
Linux: Add SwapCached to the swap meter
...
According to the Linux kernel documentation, "SwapCached" tracks "memory
that once was swapped out, is swapped back in but still also is
in the swapfile (if memory is needed it doesn't need to be swapped out
AGAIN because it is already in the swapfile. This saves I/O)."
2021-01-11 20:27:47 +01:00
d72b0a682e
Mark several non-modified pointer variables const
2021-01-11 20:12:34 +01:00
8fe04b7494
Hashtable: use more distinct typename for key type
2021-01-06 16:59:28 +01:00
ce9e7fd14f
Panel_new: reorder arguments
...
Reorder owner and type so they match the order of Panel_init
2021-01-04 23:12:43 +01:00
a3cced9fb6
Add option to hide the Function Bar
...
Support three settings:
- Always show Function Bar
- Always hide the Function Bar, except in Infoscreens (Env/Locks...)
and when editing the search and filter mode
- Hide the Function Bar on ESC until the next user input
Closes : #439
2021-01-04 23:12:43 +01:00
eb6f8d569d
Action: drop resize callback
...
The supervising ScreenManager will resize all Panels
2021-01-04 23:12:43 +01:00
f6aa5d29bb
Action: remove trivial wrapper function
2021-01-01 21:31:30 +01:00
f1463fdd64
Added keybind 'N' for sorting by PID
2020-12-23 18:30:26 +01:00
3edb6e1ea3
Position help labels one step to the right
2020-12-23 18:24:22 +01:00
f46ddd3230
Remove 'n' and 'N' search inc/dec keybinds
2020-12-24 03:24:15 +11:00
737cd6167a
Merge branch 'resize_bar' of https://github.com/cgzones/htop into cgzones-resize_bar
2020-12-22 15:25:08 +11:00
9b8b380c32
De-lazy @cgzones :)
2020-12-21 20:40:00 +01:00
a09ad6b8b4
Action: sort key binding assignments
...
Avoid accidental duplicate usage.
2020-12-21 15:53:42 +01:00
e3862aa67e
Rework drawing of FunctionBar
...
Draw the FunctionBar within Panel_draw instead of manually throughout
the code.
Add an optional PanelClass function drawFunctionBar, to allow specific
panels to override the default FunctionBar_draw call.
Rework the code on color change, to really change all colors (selection
markers and panel headers).
Closes : #402
2020-12-20 17:01:50 +01:00
2327260ee8
Separate tree and list sort orders
...
Implements the suggestion from https://github.com/htop-dev/htop/issues/399#issuecomment-747861013
Thanks to the refactors from 0bd5c8fb5da and 6393baa74e5, this was really easy
and clean to do.
It maintains the "Tree view always by PID" option in the Settings, which
results in some specific behaviors such as "clicking on the column header to
exit tree view" and "picking a new sort order to exit tree view", for the sake
of the muscle memory of long time htop users. :)
2020-12-19 16:02:34 +01:00
e8c6994f40
Add "Tree view is always sorted by PID" option to mimic htop 2 behavior
2020-12-19 16:02:34 +01:00
0401df8cbd
Update key mapping documentation for sorting
2020-12-18 07:37:23 +01:00
db5687a355
Sort in paused mode after inverting sort order
2020-12-09 13:43:07 +01:00
cf306ff86e
Implement sorting in tree mode
2020-12-02 23:50:05 +01:00
19b5141685
Hide process selection on ESC
...
Do not highlight the current process line after pressing ESC in the main
screen.
Restore after pressing any key.
2020-11-28 19:49:38 +01:00
fee217551c
Drop unneeded parameters to the ScreenManager constructor
...
All calls to ScreenManager_new always pass the same first
five values, the orientation is always HORIZONTAL and the
y1 parameter is always the height of the passed-in header
struct pointer. I think its safe to assert at this point
that no VERTICAL orientation will arrive (if it does, its
no harm in re-adding this then) - so we can remove unused
conditionals (and TODOs) based on orientation too.
2020-11-26 23:55:53 +01:00
09fe94da18
Improving Command display/sort
2020-11-24 19:05:48 +01:00
f5c3349bdb
IWYU update (FreeBSD)
2020-11-19 23:51:50 +01:00
7cf5277594
IWYU update (Linux)
2020-11-19 23:51:50 +01:00
7914ec201e
Hashtable update
...
- use consistent type for key by introducing a new typedef
- use unsigned types for sizes
- name parameters in foreach function typedef
2020-11-17 02:01:02 +01:00
ad72b747fa
Drop hideThreads Setting
...
It is only used to read process directories on RedHat beginning with a dot.
Unconditionally accept directories with a starting dot.
2020-11-15 22:54:14 +01:00
bb908f3dc4
Resolve merge conflicts, merge #298 "Macro cleanup" from @BenBE
2020-11-15 14:33:09 +01:00
18763051a2
Split platform dependent parts for file locks screen
2020-11-14 15:51:26 +01:00
84dad4c38e
Implement screen for active file locks
2020-11-09 19:17:57 +01:00
0d64ca9262
Wrap inline structure definitions
2020-11-02 22:15:01 +01:00
45869513bf
Embracing branches
2020-11-02 22:15:01 +01:00
61e14d4bb2
Spacing around operators
2020-11-02 22:15:01 +01:00
db0a13970e
Convert addattrstr to static inline function
...
NB: The macro could have been a braced while(0) loop, which without optimization produces more code
2020-11-02 22:14:26 +01:00
ac2b07eddd
Avoid some unnecessary casts and mark some not changing variables const
2020-10-27 18:00:43 +01:00
8a08a3209c
IWYU update
...
- Add Settings forward declaration in Process.h
- Add assert.h include in XUitls.c
- Add conditional stdbool.h include in Object.h
- Drop unneeded stddef.h include in Richstring.c
- Drop unneeded unistd.h include in Process.h
- Drop unneeded string.h include in linux/Platform.c
- Use String_eq to avoid string.h include in Action.c
- Improve script to run custom iwyu version
2020-10-20 21:44:25 +02:00
475fd1ec2d
Merge branch 'help_lines' of https://github.com/cgzones/htop
2020-10-20 10:01:16 +02:00
0f5262917f
Make all required includes explicit
...
Information as seen by IWYU 0.12 + clang 9 on Linux
2020-10-18 20:09:05 +02:00
872e542f4e
Rename StringUtils.[ch] to XUtils.[ch]
2020-10-16 20:30:21 +02:00
af4f58d013
Misc conversion fixes
2020-10-16 19:16:53 +02:00
898a690375
Do not hard-code line numbers in help screen building code
2020-10-14 14:34:40 +02:00
b47bc667a2
Add key to pause process list updates
2020-10-12 13:04:00 +02:00
32a2caa692
use 'w' for command wrapping as 'M' is already used
...
since 'M' is already used for sort-by-memory, as with:
keys['M'] = actionSortByMemory;
reorder help info about shortcut keys
2020-10-09 09:03:32 +08:00
079c2abf8e
Update License consistently to GPLv2 as per COPYING file
2020-10-05 10:13:12 +02:00
843949131a
Drop redundant casts to the same type
2020-09-29 10:44:42 +02:00
18b1e9fba9
Do not drop qualifier in cast
...
ListItem.c:73:33: warning: cast from 'const void *' to 'struct ListItem_ *' drops const qualifier [-Wcast-qual]
ListItem* obj1 = (ListItem*) cast1;
^
ListItem.c:74:33: warning: cast from 'const void *' to 'struct ListItem_ *' drops const qualifier [-Wcast-qual]
ListItem* obj2 = (ListItem*) cast2;
^
Process.c:434:28: warning: cast from 'const void *' to 'struct Process_ *' drops const qualifier [-Wcast-qual]
Process* p1 = (Process*)v1;
^
Process.c:435:28: warning: cast from 'const void *' to 'struct Process_ *' drops const qualifier [-Wcast-qual]
Process* p2 = (Process*)v2;
^
Process.c:441:36: warning: cast from 'const void *' to 'struct Process_ *' drops const qualifier [-Wcast-qual]
Settings *settings = ((Process*)v1)->settings;
^
Process.c:443:22: warning: cast from 'const void *' to 'struct Process_ *' drops const qualifier [-Wcast-qual]
p1 = (Process*)v1;
^
Process.c:444:22: warning: cast from 'const void *' to 'struct Process_ *' drops const qualifier [-Wcast-qual]
p2 = (Process*)v2;
^
Process.c:446:22: warning: cast from 'const void *' to 'struct Process_ *' drops const qualifier [-Wcast-qual]
p2 = (Process*)v1;
^
Process.c:447:22: warning: cast from 'const void *' to 'struct Process_ *' drops const qualifier [-Wcast-qual]
p1 = (Process*)v2;
^
AffinityPanel.c:37:16: warning: cast from 'const char *' to 'void *' drops const qualifier [-Wcast-qual]
free((void*)this->text);
^
AffinityPanel.c:39:19: warning: cast from 'const char *' to 'void *' drops const qualifier [-Wcast-qual]
free((void*)this->indent);
^
linux/LinuxProcess.c:294:36: warning: cast from 'const void *' to 'struct Process_ *' drops const qualifier [-Wcast-qual]
Settings *settings = ((Process*)v1)->settings;
^
linux/LinuxProcess.c:296:27: warning: cast from 'const void *' to 'struct LinuxProcess_ *' drops const qualifier [-Wcast-qual]
p1 = (LinuxProcess*)v1;
^
linux/LinuxProcess.c:297:27: warning: cast from 'const void *' to 'struct LinuxProcess_ *' drops const qualifier [-Wcast-qual]
p2 = (LinuxProcess*)v2;
^
linux/LinuxProcess.c:299:27: warning: cast from 'const void *' to 'struct LinuxProcess_ *' drops const qualifier [-Wcast-qual]
p2 = (LinuxProcess*)v1;
^
linux/LinuxProcess.c:300:27: warning: cast from 'const void *' to 'struct LinuxProcess_ *' drops const qualifier [-Wcast-qual]
p1 = (LinuxProcess*)v2;
^
linux/LinuxProcessList.c:62:32: warning: cast from 'const void *' to 'struct TtyDriver_ *' drops const qualifier [-Wcast-qual]
TtyDriver* a = (TtyDriver*) va;
^
linux/LinuxProcessList.c:63:32: warning: cast from 'const void *' to 'struct TtyDriver_ *' drops const qualifier [-Wcast-qual]
TtyDriver* b = (TtyDriver*) vb;
^
linux/Battery.c:130:21: warning: cast from 'const char *' to 'char *' drops const qualifier [-Wcast-qual]
free((char *) isOnline);
^
linux/Battery.c:197:26: warning: cast from 'const char *' to 'char *' drops const qualifier [-Wcast-qual]
xSnprintf((char *) filePath, sizeof filePath, SYS_POWERSUPPLY_DIR "/%s/type", entryName);
^
linux/Battery.c:209:29: warning: cast from 'const char *' to 'char *' drops const qualifier [-Wcast-qual]
xSnprintf((char *) filePath, sizeof filePath, SYS_POWERSUPPLY_DIR "/%s/uevent", entryName);
^
linux/Battery.c:262:29: warning: cast from 'const char *' to 'char *' drops const qualifier [-Wcast-qual]
xSnprintf((char *) filePath, sizeof filePath, SYS_POWERSUPPLY_DIR "/%s/online", entryName);
^
2020-09-24 20:14:17 +02:00