@@ -8,27 +8,31 @@ import { formatIsoDateTimeToHr } from '../ntp/TimeFormat';
8
8
interface LogEventConsoleProps {
9
9
events : LogEvent [ ] ;
10
10
}
11
-
12
- const topOffset = ( ) => {
13
- const wrapper = document . getElementById ( 'system-tabs' ) ;
14
- if ( wrapper ) {
15
- return wrapper . getBoundingClientRect ( ) . bottom ;
16
- }
17
- return 0 ;
11
+ interface Offsets {
12
+ topOffset : ( ) => number ;
13
+ leftOffset : ( ) => number ;
18
14
}
19
15
16
+ const topOffset = ( ) => document . getElementById ( 'system-tabs' ) ?. getBoundingClientRect ( ) . bottom || 0 ;
17
+ const leftOffset = ( ) => document . getElementById ( 'system-tabs' ) ?. getBoundingClientRect ( ) . left || 0 ;
18
+
20
19
const useStyles = makeStyles ( ( theme : Theme ) => ( {
21
20
console : {
22
21
padding : theme . spacing ( 2 ) ,
23
- height : ( topOffset : ( ) => number ) => `calc(100vh - ${ topOffset ( ) } px)` ,
22
+ position : "absolute" ,
23
+ left : ( offsets : Offsets ) => offsets . leftOffset ( ) ,
24
+ right : 0 ,
25
+ top : ( offsets : Offsets ) => offsets . topOffset ( ) ,
26
+ bottom : 0 ,
24
27
backgroundColor : "black" ,
25
- overflowY : "scroll "
28
+ overflow : "auto "
26
29
} ,
27
30
entry : {
28
31
color : "#bbbbbb" ,
29
32
fontFamily : "Courier New, monospace" ,
30
33
fontSize : "14px" ,
31
- letterSpacing : "normal"
34
+ letterSpacing : "normal" ,
35
+ whiteSpace : "nowrap"
32
36
} ,
33
37
file : {
34
38
color : "#00ffff"
@@ -53,7 +57,7 @@ const useStyles = makeStyles((theme: Theme) => ({
53
57
54
58
const LogEventConsole : FC < LogEventConsoleProps > = ( props ) => {
55
59
useWindowSize ( ) ;
56
- const classes = useStyles ( topOffset ) ;
60
+ const classes = useStyles ( { topOffset, leftOffset } ) ;
57
61
const { events } = props ;
58
62
59
63
const styleLevel = ( level : LogLevel ) => {
0 commit comments