Revert "Allow the user to close the dashboard panel. Fixes #2506"
This reverts commit a87ee6d059
.
REL-1_X
parent
1b49bb8b22
commit
96412b3219
|
@ -7,8 +7,7 @@ function(_, pgAdmin) {
|
|||
pgAdmin.Browser.Panel = function(options) {
|
||||
var defaults = [
|
||||
'name', 'title', 'width', 'height', 'showTitle', 'isCloseable',
|
||||
'isPrivate', 'content', 'icon', 'events', 'onCreate', 'elContainer',
|
||||
'canHide', 'limit'
|
||||
'isPrivate', 'content', 'icon', 'events', 'onCreate', 'elContainer'
|
||||
];
|
||||
_.extend(this, _.pick(options, defaults));
|
||||
}
|
||||
|
@ -26,14 +25,12 @@ function(_, pgAdmin) {
|
|||
panel: null,
|
||||
onCreate: null,
|
||||
elContainer: false,
|
||||
limit: null,
|
||||
load: function(docker, title) {
|
||||
var that = this;
|
||||
if (!that.panel) {
|
||||
docker.registerPanelType(that.name, {
|
||||
title: that.title,
|
||||
isPrivate: that.isPrivate,
|
||||
limit: that.limit,
|
||||
onCreate: function(myPanel) {
|
||||
$(myPanel).data('pgAdminName', that.name);
|
||||
myPanel.initSize(that.width, that.height);
|
||||
|
@ -88,14 +85,6 @@ function(_, pgAdmin) {
|
|||
});
|
||||
that.resizedContainer.apply(myPanel);
|
||||
}
|
||||
|
||||
// Bind events only if they are configurable
|
||||
if (that.canHide) {
|
||||
_.each([wcDocker.EVENT.CLOSED, wcDocker.EVENT.VISIBILITY_CHANGED],
|
||||
function(ev) {
|
||||
myPanel.on(ev, that.handleVisibility.bind(myPanel, ev));
|
||||
});
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
@ -145,32 +134,7 @@ function(_, pgAdmin) {
|
|||
100
|
||||
);
|
||||
}
|
||||
},
|
||||
handleVisibility: function(eventName) {
|
||||
// Currently this function only works with dashboard panel but
|
||||
// as per need it can be extended
|
||||
if (this._type != 'dashboard')
|
||||
return;
|
||||
|
||||
if (eventName == 'panelClosed') {
|
||||
pgBrowser.save_current_layout(pgBrowser);
|
||||
pgAdmin.Dashboard.toggleVisibility(false);
|
||||
}
|
||||
else if (eventName == 'panelVisibilityChanged') {
|
||||
if (pgBrowser.tree) {
|
||||
pgBrowser.save_current_layout(pgBrowser);
|
||||
var selectedNode = pgBrowser.tree.selected();
|
||||
// Discontinue this event after first time visible
|
||||
this.off(wcDocker.EVENT.VISIBILITY_CHANGED);
|
||||
if (!_.isUndefined(pgAdmin.Dashboard))
|
||||
pgAdmin.Dashboard.toggleVisibility(true);
|
||||
// Explicitly trigger tree selected event when we add the tab.
|
||||
pgBrowser.Events.trigger('pgadmin-browser:tree:selected', selectedNode,
|
||||
pgBrowser.tree.itemData(selectedNode), pgBrowser.Node);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
return pgAdmin.Browser.Panel;
|
||||
|
|
|
@ -178,9 +178,7 @@ define(
|
|||
showTitle: {% if panel_item.showTitle %}true{% else %}false{% endif %},
|
||||
isCloseable: {% if panel_item.isCloseable %}true{% else %}false{% endif %},
|
||||
isPrivate: {% if panel_item.isPrivate %}true{% else %}false{% endif %},
|
||||
content: '{{ panel_item.content }}',
|
||||
canHide: {% if panel_item.canHide %}true{% else %}false{% endif %}{% if panel_item.limit is not none %},
|
||||
limit: {{ panel_item.limit }}{% endif %}{% if panel_item.events is not none %},
|
||||
content: '{{ panel_item.content }}'{% if panel_item.events is not none %},
|
||||
events: {{ panel_item.events }} {% endif %}
|
||||
}){% endif %}{% endfor %}
|
||||
},
|
||||
|
@ -367,17 +365,15 @@ define(
|
|||
|
||||
// Listen to panel attach/detach event so that last layout will be remembered
|
||||
_.each(obj.panels, function(panel, name) {
|
||||
if (panel.panel) {
|
||||
panel.panel.on(wcDocker.EVENT.ATTACHED, function() {
|
||||
obj.save_current_layout(obj);
|
||||
});
|
||||
panel.panel.on(wcDocker.EVENT.DETACHED, function() {
|
||||
obj.save_current_layout(obj);
|
||||
});
|
||||
panel.panel.on(wcDocker.EVENT.MOVE_ENDED, function() {
|
||||
obj.save_current_layout(obj);
|
||||
});
|
||||
}
|
||||
panel.panel.on(wcDocker.EVENT.ATTACHED, function() {
|
||||
obj.save_current_layout(obj);
|
||||
});
|
||||
panel.panel.on(wcDocker.EVENT.DETACHED, function() {
|
||||
obj.save_current_layout(obj);
|
||||
});
|
||||
panel.panel.on(wcDocker.EVENT.MOVE_ENDED, function() {
|
||||
obj.save_current_layout(obj);
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
|
|
|
@ -58,11 +58,9 @@ class DashboardModule(PgAdminModule):
|
|||
title=gettext('Dashboard'),
|
||||
icon='fa fa-tachometer',
|
||||
content='',
|
||||
isCloseable=True,
|
||||
isPrivate=False,
|
||||
limit=1,
|
||||
isIframe=False,
|
||||
canHide=True)
|
||||
isCloseable=False,
|
||||
isPrivate=True,
|
||||
isIframe=False)
|
||||
]
|
||||
|
||||
def register_preferences(self):
|
||||
|
|
|
@ -11,8 +11,6 @@ function(r, $, pgAdmin, _, Backbone, gettext) {
|
|||
if (pgAdmin.Dashboard)
|
||||
return;
|
||||
|
||||
var dashboardVisible = true;
|
||||
|
||||
pgAdmin.Dashboard = {
|
||||
init: function() {
|
||||
if (this.initialized)
|
||||
|
@ -57,7 +55,7 @@ function(r, $, pgAdmin, _, Backbone, gettext) {
|
|||
|
||||
// Handle treeview clicks
|
||||
object_selected: function(item, itemData, node) {
|
||||
if (itemData && itemData._type && dashboardVisible) {
|
||||
if (itemData && itemData._type) {
|
||||
var treeHierarchy = node.getTreeNodeHierarchy(item),
|
||||
url = '{{ url_for('dashboard.index') }}',
|
||||
sid = -1, did = -1, b = pgAdmin.Browser,
|
||||
|
@ -126,9 +124,6 @@ function(r, $, pgAdmin, _, Backbone, gettext) {
|
|||
// { data: [[0, y0], [1, y1]...], label: 'Label 3', [options] }
|
||||
// ]
|
||||
|
||||
if (!dashboardVisible)
|
||||
return;
|
||||
|
||||
y = 0;
|
||||
if (dataset.length == 0) {
|
||||
if (counter == true)
|
||||
|
@ -867,9 +862,6 @@ function(r, $, pgAdmin, _, Backbone, gettext) {
|
|||
}
|
||||
});
|
||||
|
||||
},
|
||||
toggleVisibility: function(flag) {
|
||||
dashboardVisible = flag;
|
||||
}
|
||||
};
|
||||
|
||||
|
|
|
@ -379,7 +379,7 @@ define([
|
|||
newWin.document.title = grid_title;
|
||||
});
|
||||
} else {
|
||||
var dashboardPanel = pgBrowser.docker.findPanels('properties');
|
||||
var dashboardPanel = pgBrowser.docker.findPanels('dashboard');
|
||||
var dataGridPanel = pgBrowser.docker.addPanel('frm_datagrid', wcDocker.DOCK.STACKED, dashboardPanel[0]);
|
||||
|
||||
// Set panel title and icon
|
||||
|
@ -495,7 +495,7 @@ define([
|
|||
/* On successfully initialization find the dashboard panel,
|
||||
* create new panel and add it to the dashboard panel.
|
||||
*/
|
||||
var dashboardPanel = pgBrowser.docker.findPanels('properties');
|
||||
var dashboardPanel = pgBrowser.docker.findPanels('dashboard');
|
||||
var queryToolPanel = pgBrowser.docker.addPanel('frm_datagrid', wcDocker.DOCK.STACKED, dashboardPanel[0]);
|
||||
|
||||
// Set panel title and icon
|
||||
|
|
|
@ -562,7 +562,7 @@ define([
|
|||
});
|
||||
|
||||
// Create the debugger panel as per the data received from user input dialog.
|
||||
var dashboardPanel = pgBrowser.docker.findPanels('properties'),
|
||||
var dashboardPanel = pgBrowser.docker.findPanels('dashboard'),
|
||||
panel = pgBrowser.docker.addPanel(
|
||||
'frm_debugger', wcDocker.DOCK.STACKED, dashboardPanel[0]
|
||||
);
|
||||
|
|
|
@ -18,7 +18,7 @@ class MenuItem(object):
|
|||
class Panel(object):
|
||||
def __init__(self, name, title, content='', width=500, height=600, isIframe=True,
|
||||
showTitle=True, isCloseable=True, isPrivate=False, priority=None,
|
||||
icon=None, data=None, events=None, limit=None, canHide=False):
|
||||
icon=None, data=None, events=None):
|
||||
self.name = name
|
||||
self.title = title
|
||||
self.content = content
|
||||
|
@ -31,8 +31,6 @@ class Panel(object):
|
|||
self.icon = icon
|
||||
self.data = data
|
||||
self.events = events
|
||||
self.limit = limit
|
||||
self.canHide = canHide
|
||||
if priority is None:
|
||||
global PRIORITY
|
||||
PRIORITY += 100
|
||||
|
|
Loading…
Reference in New Issue