@@ -56,7 +56,7 @@ var panelTemplate = `
56
56
</div>
57
57
` ;
58
58
59
- module . directive ( 'grafanaPanel' , function ( ) {
59
+ module . directive ( 'grafanaPanel' , function ( $rootScope ) {
60
60
return {
61
61
restrict : 'E' ,
62
62
template : panelTemplate ,
@@ -72,8 +72,14 @@ module.directive('grafanaPanel', function() {
72
72
var lastHasAlertRule ;
73
73
var lastAlertState ;
74
74
var hasAlertRule ;
75
+ var lastHeight = 0 ;
75
76
76
77
ctrl . events . on ( 'render' , ( ) => {
78
+ if ( lastHeight !== ctrl . containerHeight ) {
79
+ panelContainer . css ( { minHeight : ctrl . containerHeight } ) ;
80
+ lastHeight = ctrl . containerHeight ;
81
+ }
82
+
77
83
if ( transparentLastState !== ctrl . panel . transparent ) {
78
84
panelContainer . toggleClass ( 'panel-transparent' , ctrl . panel . transparent === true ) ;
79
85
transparentLastState = ctrl . panel . transparent ;
@@ -102,10 +108,13 @@ module.directive('grafanaPanel', function() {
102
108
}
103
109
} ) ;
104
110
105
- scope . $watchGroup ( [ 'ctrl.fullscreen' , 'ctrl.containerHeight' ] , function ( ) {
106
- panelContainer . css ( { minHeight : ctrl . containerHeight } ) ;
107
- elem . toggleClass ( 'panel-fullscreen' , ctrl . fullscreen ? true : false ) ;
108
- } ) ;
111
+ var lastFullscreen ;
112
+ $rootScope . onAppEvent ( 'panel-change-view' , function ( evt , payload ) {
113
+ if ( lastFullscreen !== ctrl . fullscreen ) {
114
+ elem . toggleClass ( 'panel-fullscreen' , ctrl . fullscreen ? true : false ) ;
115
+ lastFullscreen = ctrl . fullscreen ;
116
+ }
117
+ } , scope ) ;
109
118
}
110
119
} ;
111
120
} ) ;
@@ -171,11 +180,10 @@ module.directive('panelResizer', function($rootScope) {
171
180
lastPanel . span = Math . round ( lastPanel . span ) ;
172
181
}
173
182
174
- ctrl . row . panelSpanChanged ( ) ;
175
-
176
183
// first digest to propagate panel width change
177
184
// then render
178
185
$rootScope . $apply ( function ( ) {
186
+ ctrl . row . panelSpanChanged ( ) ;
179
187
setTimeout ( function ( ) {
180
188
$rootScope . $broadcast ( 'render' ) ;
181
189
} ) ;
0 commit comments