ux(dashboard): fixes for changing panel tabs, #6442

This commit is contained in:
Torkel Ödegaard 2016-11-02 21:45:46 +01:00
parent 47aae7f1f2
commit cdea420285
5 changed files with 19 additions and 11 deletions

View File

@ -100,7 +100,10 @@ export class KeybindingSrv {
this.bind('e', () => {
if (dashboard.meta.focusPanelId && dashboard.meta.canEdit) {
this.$rootScope.appEvent('panel-change-view', {
fullscreen: true, edit: true, panelId: dashboard.meta.focusPanelId
fullscreen: true,
edit: true,
panelId: dashboard.meta.focusPanelId,
toggle: true
});
}
});
@ -108,7 +111,10 @@ export class KeybindingSrv {
this.bind('v', () => {
if (dashboard.meta.focusPanelId) {
this.$rootScope.appEvent('panel-change-view', {
fullscreen: true, edit: null, panelId: dashboard.meta.focusPanelId
fullscreen: true,
edit: null,
panelId: dashboard.meta.focusPanelId,
toggle: true,
});
}
});

View File

@ -84,9 +84,12 @@ function (angular, _, $) {
DashboardViewState.prototype.update = function(state) {
// implement toggle logic
if (this.state.fullscreen && state.fullscreen) {
if (this.state.edit === state.edit) {
state.fullscreen = !state.fullscreen;
if (state.toggle) {
delete state.toggle;
if (this.state.fullscreen && state.fullscreen) {
if (this.state.edit === state.edit) {
state.fullscreen = !state.fullscreen;
}
}
}
@ -163,7 +166,7 @@ function (angular, _, $) {
if (!render) { return false;}
$timeout(function() {
if (self.oldTimeRange && self.oldTimeRange !== ctrl.range) {
if (self.oldTimeRange !== ctrl.range) {
self.$scope.broadcastRefresh();
} else {
self.$scope.$broadcast('render');

View File

@ -111,7 +111,6 @@ export class PanelCtrl {
changeTab(newIndex) {
this.editorTabIndex = newIndex;
var route = this.$injector.get('$route');
route.current.params.tab = this.editorTabs[newIndex].title.toLowerCase();
route.updateParams();
}

View File

@ -247,7 +247,7 @@ a.dash-row-header-actions--tight {
.row-open {
margin-top: 1px;
left: -22px;
left: -24px;
position: absolute;
z-index: 100;
transition: .10s left;

View File

@ -33,9 +33,9 @@ module.exports = function(config, grunt) {
// copy ts file also used by source maps
//changes changed file source to that of the changed file
var option = 'typescript.build.src';
var result = filepath;
grunt.config(option, result);
grunt.config('typescript.build.src', filepath);
grunt.config('tslint.source.files.src', filepath);
grunt.task.run('typescript:build');
grunt.task.run('tslint');
}