diff --git a/docs/en_US/event_trigger_dialog.rst b/docs/en_US/event_trigger_dialog.rst index 18a2e4e53..9d7330761 100644 --- a/docs/en_US/event_trigger_dialog.rst +++ b/docs/en_US/event_trigger_dialog.rst @@ -35,15 +35,15 @@ Click the *Definition* tab to continue. Use the fields in the *Definition* tab to define the event trigger: -* Select a radio button in the *Enabled Status* field to specify a status for - the trigger: *Enable* *Disable*, *Replica* *Always*. +* Select a value from the drop down of *Trigger Enabled* field to specify a status + for the trigger: *Enable* *Disable*, *Replica* *Always*. * Use the drop-down listbox next to *Trigger function* to specify an existing function. A trigger function takes an empty argument list, and returns a value of type event_trigger. -* Select a radio button in the *Events* field to specify when the event trigger - will fire: *DDL COMMAND START*, *DDL COMMAND END*, or *SQL DROP*. -* Use the *When* field to write a condition for the event trigger that must be - satisfied before the event trigger can execute. +* Select a value from the drop down of *Events* field to specify when the event + trigger will fire: *DDL COMMAND START*, *DDL COMMAND END*, or *SQL DROP*. +* Use the *When TAG in* field to enter filter values for TAG for which the trigger + will be executed. The values must be in single quotes separated by comma. Click the *Security Labels* tab to continue. diff --git a/docs/en_US/images/event_trigger_definition.png b/docs/en_US/images/event_trigger_definition.png old mode 100755 new mode 100644 index 3217babce..36fa81740 Binary files a/docs/en_US/images/event_trigger_definition.png and b/docs/en_US/images/event_trigger_definition.png differ diff --git a/docs/en_US/release_notes_4_19.rst b/docs/en_US/release_notes_4_19.rst index d7a7650bf..57e730513 100644 --- a/docs/en_US/release_notes_4_19.rst +++ b/docs/en_US/release_notes_4_19.rst @@ -16,12 +16,17 @@ Housekeeping ************ | `Issue #5088 `_ - Improve code coverage and API test cases for the Event Trigger module. +| `Issue #5133 `_ - Improvements in the UI for both default and dark themes. | `Issue #5176 `_ - Enhance logging by tracking stdout and stderr of subprocess when log level set to DEBUG. | `Issue #5185 `_ - Added option to override the class name of a label tag for select2 control. Bug fixes ********* +| `Issue #4955 `_ - Changed the color of selected and hovered item for Select2 dropdown. +| `Issue #4996 `_ - Improve the style of the highlighted code after query execution for Dark mode. | `Issue #5058 `_ - Ensure that AlertifyJS should not be visible as a title for alert dialog. +| `Issue #5077 `_ - Changed background pattern for geometry viewer to use #fff for all themes. | `Issue #5107 `_ - Set proper focus on tab navigation for file manager dialog. -| `Issue #5115 `_ - Fix an issue where command and statements were parsed incorrectly for Rules. \ No newline at end of file +| `Issue #5115 `_ - Fix an issue where command and statements were parsed incorrectly for Rules. +| `Issue #5184 `_ - Fixed Firefox monospaced issue by updating the font to the latest version. \ No newline at end of file diff --git a/web/pgadmin/browser/server_groups/servers/databases/event_triggers/static/js/event_trigger.js b/web/pgadmin/browser/server_groups/servers/databases/event_triggers/static/js/event_trigger.js index 8a9b5b71e..983389df6 100644 --- a/web/pgadmin/browser/server_groups/servers/databases/event_triggers/static/js/event_trigger.js +++ b/web/pgadmin/browser/server_groups/servers/databases/event_triggers/static/js/event_trigger.js @@ -108,28 +108,30 @@ define('pgadmin.node.event_trigger', [ },{ id: 'comment', label: gettext('Comment'), type: 'multiline', },{ - id: 'enabled', label: gettext('Enabled?'), - type:'radio', group: gettext('Definition'), mode: ['properties', 'edit','create'], + id: 'enabled', label: gettext('Trigger enabled?'), + group: gettext('Definition'), mode: ['properties', 'edit','create'], options: [ {label: 'Enable', value: 'O'}, {label: 'Disable', value: 'D'}, {label: 'Replica', value: 'R'}, {label: 'Always', value: 'A'}, ], + control: 'select2', select2: { allowClear: false, width: '100%' }, },{ id: 'eventfunname', label: gettext('Trigger function'), type: 'text', control: 'node-ajax-options', group: gettext('Definition'), url:'fopts', cache_node: 'trigger_function', },{ - id: 'eventname', label: gettext('Events'), - type:'radio', group: gettext('Definition'), cell: 'string', + id: 'eventname', label: gettext('Event'), + group: gettext('Definition'), cell: 'string', options: [ {label: 'DDL COMMAND START', value: 'DDL_COMMAND_START'}, {label: 'DDL COMMAND END', value: 'DDL_COMMAND_END'}, {label: 'SQL DROP', value: 'SQL_DROP'}, ], + control: 'select2', select2: { allowClear: false, width: '100%' }, },{ - id: 'when', label: gettext('When'), cell: 'string', + id: 'when', label: gettext('When TAG in'), cell: 'string', type: 'text', group: gettext('Definition'), control: Backform.SqlFieldControl, extraClasses:['custom_height_css_class'], diff --git a/web/pgadmin/browser/server_groups/servers/databases/schemas/synonyms/static/js/synonym.js b/web/pgadmin/browser/server_groups/servers/databases/schemas/synonyms/static/js/synonym.js index 372fa01c4..1731ce3a0 100644 --- a/web/pgadmin/browser/server_groups/servers/databases/schemas/synonyms/static/js/synonym.js +++ b/web/pgadmin/browser/server_groups/servers/databases/schemas/synonyms/static/js/synonym.js @@ -183,7 +183,7 @@ define('pgadmin.node.synonym', [ id: 'is_public_synonym', label: gettext('Public synonym?'), type: 'switch', mode: ['properties'], cell: 'switch', options: { onText: gettext('Yes'), offText: gettext('No'), onColor: 'success', - offColor: 'primary', size: 'mini'}, + offColor: 'ternary', size: 'mini'}, }, ], validate: function() { diff --git a/web/pgadmin/browser/server_groups/servers/databases/schemas/tables/columns/static/js/column.js b/web/pgadmin/browser/server_groups/servers/databases/schemas/tables/columns/static/js/column.js index 92af1d606..cef365d7d 100644 --- a/web/pgadmin/browser/server_groups/servers/databases/schemas/tables/columns/static/js/column.js +++ b/web/pgadmin/browser/server_groups/servers/databases/schemas/tables/columns/static/js/column.js @@ -219,7 +219,7 @@ define('pgadmin.node.column', [ deps:['name'], cellHeaderClasses:'width_percent_5', options: { onText: gettext('Yes'), offText: gettext('No'), - onColor: 'success', offColor: 'primary', + onColor: 'success', offColor: 'ternary', }, visible: function(m) { return _.isUndefined( @@ -524,7 +524,7 @@ define('pgadmin.node.column', [ id: 'attnotnull', label: gettext('Not NULL?'), cell: 'switch', type: 'switch', cellHeaderClasses:'width_percent_20', group: gettext('Constraints'), editable: 'editable_check_for_table', - options: { onText: gettext('Yes'), offText: gettext('No'), onColor: 'success', offColor: 'primary' }, + options: { onText: gettext('Yes'), offText: gettext('No'), onColor: 'success', offColor: 'ternary' }, deps: ['colconstype'], disabled: function(m) { if (m.get('colconstype') == 'i') { diff --git a/web/pgadmin/browser/server_groups/servers/roles/static/js/role.js b/web/pgadmin/browser/server_groups/servers/roles/static/js/role.js index 317a83913..47500caf7 100644 --- a/web/pgadmin/browser/server_groups/servers/roles/static/js/role.js +++ b/web/pgadmin/browser/server_groups/servers/roles/static/js/role.js @@ -105,7 +105,12 @@ define('pgadmin.node.role', [ ' ', ' <%= opttext %>', ' <% if (checkbox) { %>', - ' />', + '
', + ' ', + ' ', + '
', ' <% } %>', '
', ].join('\n')), diff --git a/web/pgadmin/browser/server_groups/servers/static/js/privilege.js b/web/pgadmin/browser/server_groups/servers/static/js/privilege.js index 2ef1890da..94a4de721 100644 --- a/web/pgadmin/browser/server_groups/servers/static/js/privilege.js +++ b/web/pgadmin/browser/server_groups/servers/static/js/privilege.js @@ -328,16 +328,20 @@ define(['sources/gettext', 'underscore', 'jquery', 'backbone', 'backform', template: _.template([ '">', ' ', - ' ', + '
', + ' />', + ' ', + '
', ' ', ' ', - ' ', + '
', + ' <%= enable_with_grant ? "" : \'disabled\'%>/>', + ' ', + '
', ' ', ''].join(' '), null, {variable: null}), @@ -359,6 +363,7 @@ define(['sources/gettext', 'underscore', 'jquery', 'backbone', 'backform', // For each privilege generate html template. // List down all the Privilege model. + var checkbox_id = _.uniqueId(); collection.each(function(m) { var d = m.toJSON(); @@ -372,6 +377,7 @@ define(['sources/gettext', 'underscore', 'jquery', 'backbone', 'backform', 'privilege_label': self.Labels[d.privilege_type], 'with_grant': (self.model.get('grantee') != 'PUBLIC' && d.with_grant), 'enable_with_grant': (self.model.get('grantee') != 'PUBLIC' && d.privilege), + 'checkbox_id': d.privilege_type + '' + checkbox_id, }); privilege = (privilege && d.privilege); with_grant = (with_grant && privilege && d.with_grant); @@ -389,6 +395,7 @@ define(['sources/gettext', 'underscore', 'jquery', 'backbone', 'backform', 'with_grant': (self.model.get('grantee') != 'PUBLIC' && with_grant), 'enable_with_grant': (self.model.get('grantee') != 'PUBLIC' && privilege), 'header': true, + 'checkbox_id': 'all' + '' + checkbox_id, })); } self.$el.find('input[type=checkbox]').first().trigger('focus'); diff --git a/web/pgadmin/browser/server_groups/servers/templates/servers/password.html b/web/pgadmin/browser/server_groups/servers/templates/servers/password.html index 97c8907aa..a41b3f0b1 100644 --- a/web/pgadmin/browser/server_groups/servers/templates/servers/password.html +++ b/web/pgadmin/browser/server_groups/servers/templates/servers/password.html @@ -3,18 +3,20 @@
- +
- +  
- - +
+ + +
{% if errmsg %} diff --git a/web/pgadmin/browser/server_groups/servers/templates/servers/tunnel_password.html b/web/pgadmin/browser/server_groups/servers/templates/servers/tunnel_password.html index 7ac05cd8a..5ae7d2fde 100644 --- a/web/pgadmin/browser/server_groups/servers/templates/servers/tunnel_password.html +++ b/web/pgadmin/browser/server_groups/servers/templates/servers/tunnel_password.html @@ -13,10 +13,12 @@
- - +
+ + +
{% endif %} @@ -28,12 +30,13 @@
-
- - +
+ + +
{% endif %} diff --git a/web/pgadmin/browser/static/js/browser.js b/web/pgadmin/browser/static/js/browser.js index 64e949b14..e5f74548f 100644 --- a/web/pgadmin/browser/static/js/browser.js +++ b/web/pgadmin/browser/static/js/browser.js @@ -201,7 +201,7 @@ define('pgadmin.browser', [ isCloseable: false, isPrivate: true, elContainer: true, - content: '
' + select_object_msg + '
', + content: '
' + select_object_msg + '
', events: panelEvents, onCreate: function(myPanel, $container) { $container.addClass('pg-no-overflow'); @@ -215,7 +215,7 @@ define('pgadmin.browser', [ width: 500, isCloseable: false, isPrivate: true, - content: '
' + select_object_msg + '
', + content: '
' + select_object_msg + '
', events: panelEvents, }), // Reversed engineered SQL for the object @@ -236,7 +236,7 @@ define('pgadmin.browser', [ width: 500, isCloseable: false, isPrivate: true, - content: '
' + select_object_msg + '
', + content: '
' + select_object_msg + '
', events: panelEvents, }), // Dependents of the object @@ -247,7 +247,7 @@ define('pgadmin.browser', [ width: 500, isCloseable: false, isPrivate: true, - content: '
' + select_object_msg + '
', + content: '
' + select_object_msg + '
', events: panelEvents, }), }, diff --git a/web/pgadmin/browser/static/js/collection.js b/web/pgadmin/browser/static/js/collection.js index 89beb6ca1..e2e9c462e 100644 --- a/web/pgadmin/browser/static/js/collection.js +++ b/web/pgadmin/browser/static/js/collection.js @@ -162,13 +162,18 @@ define([ }, render: function() { let model = this.model.toJSON(); - // canDrop can be set to false for individual row from the server side to disable the checkbox - if ('canDrop' in model && model.canDrop === false) - this.$el.empty().append(''); - else - this.$el.empty().append(''); + let disabled = ('canDrop' in model && model.canDrop === false); + let id = `row-${_.uniqueId(model.oid || model.name)}`; + this.$el.empty().append(` +
+ + +
+ `); this.delegateEvents(); return this; }, @@ -216,7 +221,7 @@ define([ j.empty(); j.data('obj-view', gridView); - $msgContainer = '
' + + $msgContainer = '
' + gettext('Retrieving data from the server...') + '
'; $msgContainer = $($msgContainer).appendTo(j); diff --git a/web/pgadmin/browser/static/js/node.js b/web/pgadmin/browser/static/js/node.js index 3ffb29afe..224caa33b 100644 --- a/web/pgadmin/browser/static/js/node.js +++ b/web/pgadmin/browser/static/js/node.js @@ -396,7 +396,7 @@ define('pgadmin.browser.node', [ if (!newModel.isNew()) { // This is definetely not in create mode - var msgDiv = '
' + + var msgDiv = '
' + gettext('Retrieving data from the server...') + '
', $msgDiv = $(msgDiv); var timer = setTimeout(function(ctx) { @@ -500,7 +500,7 @@ define('pgadmin.browser.node', [ isPrivate: true, isLayoutMember: false, elContainer: true, - content: '
' + gettext('Please wait while we fetch information about the node from the server...') + '
', + content: '
' + gettext('Please wait while we fetch information about the node from the server...') + '
', onCreate: function(myPanel, $container) { $container.addClass('pg-no-overflow'); }, diff --git a/web/pgadmin/browser/static/js/wizard.js b/web/pgadmin/browser/static/js/wizard.js index 5e2a27dd8..72590c9e5 100644 --- a/web/pgadmin/browser/static/js/wizard.js +++ b/web/pgadmin/browser/static/js/wizard.js @@ -100,7 +100,7 @@ define([ ' <% } %>' + '
' + - ' <% if ( typeof show_description != "undefined"){ %>' + + ' <% if ( typeof show_description != "undefined" && show_description != ""){ %>' + '
' + ' <%= show_description %>' + '
' + diff --git a/web/pgadmin/dashboard/static/js/dashboard.js b/web/pgadmin/dashboard/static/js/dashboard.js index 1255ca807..64b770b57 100644 --- a/web/pgadmin/dashboard/static/js/dashboard.js +++ b/web/pgadmin/dashboard/static/js/dashboard.js @@ -248,7 +248,7 @@ define('pgadmin.dashboard', [ ajaxHook(); } else { $(div).html( - '' + '' ); } } @@ -256,7 +256,7 @@ define('pgadmin.dashboard', [ }); }; $(div).html( - '' + '' ); ajaxHook(); @@ -379,7 +379,7 @@ define('pgadmin.dashboard', [ ajaxHook(); } else { $(div).html( - '' + '' ); } } @@ -387,7 +387,7 @@ define('pgadmin.dashboard', [ }); }; $(div).html( - '' + '' ); ajaxHook(); $(dashboardPanel).data('server_status', true); @@ -402,7 +402,7 @@ define('pgadmin.dashboard', [ self.clearChartFromStore(); } $(div).html( - '' + '' ); $(dashboardPanel).data('server_status', false); } @@ -602,7 +602,7 @@ define('pgadmin.dashboard', [ } } else { msg = gettext('An error occurred whilst rendering the graph.'); - cls = 'danger'; + cls = 'error'; } } @@ -610,7 +610,7 @@ define('pgadmin.dashboard', [ let chart_obj = chart_store[chart_name].chart_obj; $(chart_obj.getContainer()).addClass('graph-error'); $(chart_obj.getContainer()).html( - '' + '' ); } }) @@ -737,7 +737,7 @@ define('pgadmin.dashboard', [ } } else { msg = gettext('An error occurred whilst rendering the table.'); - cls = 'danger'; + cls = 'error'; } } @@ -748,7 +748,7 @@ define('pgadmin.dashboard', [ } $(container).html( - '' + '' ); // Try again diff --git a/web/pgadmin/dashboard/static/scss/_dashboard.scss b/web/pgadmin/dashboard/static/scss/_dashboard.scss index 9f94b5e70..3959ce439 100644 --- a/web/pgadmin/dashboard/static/scss/_dashboard.scss +++ b/web/pgadmin/dashboard/static/scss/_dashboard.scss @@ -17,7 +17,7 @@ } .graph-error { - background-color: $color-gray-lighter; + background-color: inherit; padding-top: 20px } diff --git a/web/pgadmin/misc/statistics/static/js/statistics.js b/web/pgadmin/misc/statistics/static/js/statistics.js index 50a460bb5..657d47463 100644 --- a/web/pgadmin/misc/statistics/static/js/statistics.js +++ b/web/pgadmin/misc/statistics/static/js/statistics.js @@ -103,7 +103,7 @@ define('misc.statistics', [ onText: gettext('True'), offText: gettext('False'), onColor: 'success', - offColor: 'primary', + offColor: 'ternary', size: 'mini', } ); diff --git a/web/pgadmin/preferences/static/js/preferences.js b/web/pgadmin/preferences/static/js/preferences.js index b28437a6f..7e097233e 100644 --- a/web/pgadmin/preferences/static/js/preferences.js +++ b/web/pgadmin/preferences/static/js/preferences.js @@ -214,7 +214,7 @@ define('pgadmin.preferences', [ onText: gettext('True'), offText: gettext('False'), onColor: 'success', - offColor: 'primary', + offColor: 'ternary', size: 'mini', }; return 'switch'; @@ -223,7 +223,7 @@ define('pgadmin.preferences', [ onText: gettext('Show'), offText: gettext('Hide'), onColor: 'success', - offColor: 'primary', + offColor: 'ternary', size: 'mini', width: '56', }; diff --git a/web/pgadmin/static/fonts/SourceCodePro-Bold.ttf b/web/pgadmin/static/fonts/SourceCodePro-Bold.ttf old mode 100755 new mode 100644 index a56f1fa5d..c790e045b Binary files a/web/pgadmin/static/fonts/SourceCodePro-Bold.ttf and b/web/pgadmin/static/fonts/SourceCodePro-Bold.ttf differ diff --git a/web/pgadmin/static/fonts/SourceCodePro-Regular.ttf b/web/pgadmin/static/fonts/SourceCodePro-Regular.ttf index b2cff928e..3563e7347 100644 Binary files a/web/pgadmin/static/fonts/SourceCodePro-Regular.ttf and b/web/pgadmin/static/fonts/SourceCodePro-Regular.ttf differ diff --git a/web/pgadmin/static/js/backform.pgadmin.js b/web/pgadmin/static/js/backform.pgadmin.js index 4a1df4e7e..06b2159d5 100644 --- a/web/pgadmin/static/js/backform.pgadmin.js +++ b/web/pgadmin/static/js/backform.pgadmin.js @@ -468,14 +468,42 @@ define([ helpMessage: '', name: '', }, + events: _.extend({}, Backform.InputControl.prototype.events, { + 'click label.btn': 'toggle', + }), + toggle: function(e) { + /* Toggle the other buttons to unchecked and current to checked */ + let $curr = $(e.currentTarget), + $btn_group = $curr.closest('.btn-group'); + + $btn_group.find('.btn') + .removeClass('btn-primary') + .addClass('btn-secondary') + .find('.fa') + .addClass('visibility-hidden') + .siblings('input') + .prop('checked', false); + + $curr.removeClass('btn-secondary') + .addClass('btn-primary') + .find('.fa') + .removeClass('visibility-hidden') + .siblings('input') + .prop('checked', true) + .trigger('change'); + + e.preventDefault(); + e.stopPropagation(); + }, template: _.template([ '', '
', - '
', + '
', ' <% for (var i=0; i < options.length; i++) { %>', ' <% var option = options[i]; %>', - '
', @@ -539,7 +567,7 @@ define([ onText: gettext('Yes'), offText: gettext('No'), onColor: 'success', - offColor: 'primary', + offColor: 'ternary', size: 'mini', width: null, height: null, @@ -3237,16 +3265,19 @@ define([ '', '
', ' ', '
', ].join('\n')), onButtonClick: function(e) { if (e.target.nodeName !== 'BUTTON') return; - var $el = this.$el.find('input[type=checkbox]'); - $el.prop('checked', !$el.prop('checked')); + this.$el.find('input[type=checkbox]').trigger('click'); }, }); diff --git a/web/pgadmin/static/js/backgrid.pgadmin.js b/web/pgadmin/static/js/backgrid.pgadmin.js index 5eaa167d4..4ce46d0bf 100644 --- a/web/pgadmin/static/js/backgrid.pgadmin.js +++ b/web/pgadmin/static/js/backgrid.pgadmin.js @@ -621,7 +621,7 @@ define([ onText: gettext('Yes'), offText: gettext('No'), onColor: 'success', - offColor: 'primary', + offColor: 'ternary', size: 'mini', width: null, height: null, diff --git a/web/pgadmin/static/js/sqleditor/history/query_history.js b/web/pgadmin/static/js/sqleditor/history/query_history.js index c1472a902..2e4228058 100644 --- a/web/pgadmin/static/js/sqleditor/history/query_history.js +++ b/web/pgadmin/static/js/sqleditor/history/query_history.js @@ -59,7 +59,7 @@ export default class QueryHistory { this.parentNode.empty() .removeClass('d-flex') .append( - `
${gettext( + `
${gettext( 'No history found' )}
` ); diff --git a/web/pgadmin/static/js/sqleditor/history/query_history_entries.js b/web/pgadmin/static/js/sqleditor/history/query_history_entries.js index 8e8702f4d..fcc20812e 100644 --- a/web/pgadmin/static/js/sqleditor/history/query_history_entries.js +++ b/web/pgadmin/static/js/sqleditor/history/query_history_entries.js @@ -2,6 +2,7 @@ import moment from 'moment'; import $ from 'jquery'; import _ from 'underscore'; import 'bootstrap.toggle'; +import gettext from 'sources/gettext'; const ARROWUP = 38; const ARROWDOWN = 40; @@ -71,7 +72,7 @@ export class QueryHistoryItem { `
  • - + ${_.escape(this.entry.query)}
    @@ -251,12 +252,12 @@ export class QueryHistoryEntries {
    + data-size="mini" data-on="${gettext('Yes')}" data-off="${gettext('No')}" + data-onstyle="success" data-offstyle="ternary" checked>
    diff --git a/web/pgadmin/static/scss/_aci_tree.overrides.scss b/web/pgadmin/static/scss/_aci_tree.overrides.scss index 806798065..adabf1ac7 100644 --- a/web/pgadmin/static/scss/_aci_tree.overrides.scss +++ b/web/pgadmin/static/scss/_aci_tree.overrides.scss @@ -20,7 +20,7 @@ } .aciTree .aciTreeText { font-family: $font-family-primary; - font-size: 0.815rem; + font-size: $tree-font-size; } .aciTree .aciTreeSelected > .aciTreeLine { diff --git a/web/pgadmin/static/scss/_backgrid.overrides.scss b/web/pgadmin/static/scss/_backgrid.overrides.scss index 8613171bf..4f87cc1be 100644 --- a/web/pgadmin/static/scss/_backgrid.overrides.scss +++ b/web/pgadmin/static/scss/_backgrid.overrides.scss @@ -103,6 +103,10 @@ background-color: $color-gray-light; } +.backgrid:not(.presentation) td.renderable.editable:not(.delete-cell):not(.edit-cell) { + background-color: $input-bg; +} + .sql-editor-grid-container .backgrid > thead > th.renderable, .sql-editor-grid-container .backgrid > tbody > td.renderable { white-space: pre-wrap; @@ -144,8 +148,8 @@ table.backgrid { /* Latest backgrid adds column name like `label` to td element, override color*/ .backgrid td.label { - color: $color-gray-dark; - font-size: 14px; + color: $color-fg; + font-size: $font-size-base; font-weight: normal; } @@ -325,3 +329,18 @@ table.backgrid { table tr th button { font-weight: bold; } + +.custom-control.custom-checkbox.custom-checkbox-no-label { + padding-left: 0; + + .custom-control-label { + // set same width/height as before and after + width: 1em; + height: 1em; + + &::before, + &::after { + left: 0; + } + } +} diff --git a/web/pgadmin/static/scss/_bootstrap.overrides.scss b/web/pgadmin/static/scss/_bootstrap.overrides.scss index b9aa5fea9..c09465d60 100644 --- a/web/pgadmin/static/scss/_bootstrap.overrides.scss +++ b/web/pgadmin/static/scss/_bootstrap.overrides.scss @@ -103,6 +103,14 @@ legend { @include button-variant($color-secondary, $btn-secondary-border, $btn-secondary-hover-bg); } +/** Overriding secondary button of bootstrap **/ +/* Used Bootstrap 4 Mixin button-variant + * Refer file : bootstrap/scss/mixins/_buttons.scss + */ +.btn-ternary { + @include button-variant($color-ternary, $btn-ternary-border, $btn-ternary-hover-bg); +} + .form-group fieldset { background-color: $color-gray-lighter; border-color: $color-gray-lighter; @@ -331,3 +339,10 @@ td.switch-cell > div.toggle { .btn-group.pgadmin-controls-radio-none > label.btn.btn-primary.disabled { pointer-events: none; } + +/* Bootstrap custom controls */ +.custom-control-input { + &:focus:checked ~ .custom-control-label::before { + border-color: $custom-control-indicator-focus-border-color; + } +} diff --git a/web/pgadmin/static/scss/_codemirror.overrides.scss b/web/pgadmin/static/scss/_codemirror.overrides.scss index d7c0ceda1..ed2541a7c 100644 --- a/web/pgadmin/static/scss/_codemirror.overrides.scss +++ b/web/pgadmin/static/scss/_codemirror.overrides.scss @@ -172,7 +172,7 @@ } } -.CodeMirror-focused .CodeMirror-selected { +.CodeMirror .CodeMirror-selected { background: $color-primary-light !important; } diff --git a/web/pgadmin/static/scss/_pgadmin.style.scss b/web/pgadmin/static/scss/_pgadmin.style.scss index ca3944785..f04cea8f9 100644 --- a/web/pgadmin/static/scss/_pgadmin.style.scss +++ b/web/pgadmin/static/scss/_pgadmin.style.scss @@ -290,6 +290,17 @@ margin: 0 auto; position: relative; text-align: center; + + &:before { + font-family: $font-family-icon; + content: "\f05a" !important; + font-size: 1rem; + margin-right: 0.5rem; + } + + &.pg-panel-error:before { + content: "\f06a" !important; + } } .pgadmin-control { @@ -519,11 +530,17 @@ fieldset.inline-fieldset > div { } } -.pgadmin-controls input[type="checkbox"]{ +.pgadmin-controls input[type=checkbox]{ margin-left: 0 !important; margin-top: 10px !important; } +/* custom-control-label is used for checkbox */ +.pgadmin-controls .custom-control-label{ + margin-left: 0 !important; + margin-top: 5px !important; +} + .pgadmin-controls.sql_field_layout { margin: 0; padding: 0; @@ -668,7 +685,7 @@ div.rolmembership { .inline-tab-panel { float: left; width: 100%; - background-color: $color-primary-fg; + background-color: $header-bg; border: 1px solid $border-color; border-radius: $card-border-radius; } @@ -761,8 +778,15 @@ table tr td { } } -.privilege_label{ - font-size: 10px!important; +.privilege-checkbox{ + & .custom-control-label { + font-size: 0.7rem; + line-height: 1.7; + &:before, &:after { + height: 0.8rem; + width: 0.8rem; + } + } } span.button-label { @@ -1081,3 +1105,8 @@ select:-webkit-autofill:focus { -webkit-box-shadow: 0 0 0px 1000px $color-primary-light inset; transition: background-color 5000s ease-in-out 0s; } + +/* Left side has a check icon, right side corrected */ +.btn-radiomodern { + padding-right: 1.75*$input-btn-padding-x !important; +} diff --git a/web/pgadmin/static/scss/_select2.overrides.scss b/web/pgadmin/static/scss/_select2.overrides.scss index 0cbdce801..31cf90c14 100644 --- a/web/pgadmin/static/scss/_select2.overrides.scss +++ b/web/pgadmin/static/scss/_select2.overrides.scss @@ -3,20 +3,33 @@ color: $input-color; } -.select2-container--default .select2-results__option--highlighted[aria-selected], .select2-container--default .select2-results__option[aria-selected=true] { - background-color: $dropdown-link-hover-bg; - color: $dropdown-link-hover-color; + background-color: $tree-bg-selected; + color: $tree-fg-selected; +} + +.select2-container--default .select2-results__option--highlighted { + background-color: $tree-bg-hover !important; + color: $tree-fg-hover !important; } .select2-container--default .select2-selection--multiple { background-color: $input-bg; color: $input-color; + + } .select2-container--default .select2-selection--multiple .select2-selection__choice { - background-color: $dropdown-link-hover-bg; - color: $dropdown-link-hover-color; + background-color: $tree-bg-selected; + color: $tree-fg-selected; + border: $input-border-width solid $dropdown-link-hover-bg; + line-height: 2; + + & .select2-selection__choice__remove { + color: $dropdown-link-hover-bg; + margin-right: 0.25rem; + } } .select2-container--default .select2-search--inline .select2-search__field { diff --git a/web/pgadmin/static/scss/resources/_default.variables.scss b/web/pgadmin/static/scss/resources/_default.variables.scss index e13cf08ba..14db912f0 100644 --- a/web/pgadmin/static/scss/resources/_default.variables.scss +++ b/web/pgadmin/static/scss/resources/_default.variables.scss @@ -1,5 +1,5 @@ /** Dividing a pixel var with 1px or rem var with 1rem removes the unit px/rem **/ -$enable-flex: true ; +$enable-flex: true; $white: #fff; $black: #000; @@ -15,6 +15,9 @@ $color-primary-dark: #295c85 !default; $color-secondary: $white !default; +$color-ternary: #5b6d7c !default; +$color-ternary-fg: $white !default; + $color-danger: #e53935 !default; $color-danger-fg: $white !default; $color-danger-light: #F39999 !default; @@ -60,6 +63,7 @@ $border-radius: 0.25rem; $text-muted: $color-gray-dark !default; $header-bg: $color-bg !default; +$tree-font-size: 0.815rem; $navbar-bg: $color-primary; $navbar-font-size: 0.925rem; @@ -135,7 +139,7 @@ $table-head-color: $color-primary-fg; $input-bg: $white !default; $input-color: $color-fg !default; $input-placeholder-color: $text-muted; -$input-border-color: $border-color; +$input-border-color: $border-color !default; $input-border-radius: $border-radius; $input-disabled-bg: $color-gray-lighter !default; $input-btn-border-width: $border-width; @@ -200,7 +204,7 @@ $table-hover-bg-color: $color-primary-light; $datagrid-bg: $color-gray-light; $tree-fg-hover: $color-fg; -$tree-bg-hover: $color-gray-lighter; +$tree-bg-hover: $color-gray-light; $tree-fg-selected: $color-fg; $tree-bg-selected: $color-primary-light; @@ -210,8 +214,8 @@ $sql-grid-title-cell-fg: $input-color; $sql-grid-title-cell-bg: $input-bg; $sql-title-padding: 3px; -$sql-title-bg: #5b6d7c; -$sql-title-fg: $white; +$sql-title-bg: $color-ternary; +$sql-title-fg: $color-ternary-fg; // Toolbar + editor title heights + title bottom border $sql-editor-panel-top: $title-height + $text-height-calc*16px + $sql-title-padding*2 + $panel-border-width - 0.5px; $sql-gutters-bg: $negative-bg; @@ -241,6 +245,9 @@ $alertify-borderremove-margin: $panel-border-width; $btn-secondary-border: $color-gray; $btn-secondary-hover-bg: $color-gray-light; +$btn-ternary-border: $color-ternary !default; +$btn-ternary-hover-bg: darken($color-ternary, 7.5%) !default; + $card-header-padding : 0.25rem 0.5rem; $no-border-radius: 0px !important; @@ -261,6 +268,11 @@ $loader-icon-small: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='ut /***************/ -$schemadiff-diff-row-color: #fff9c4; -$schemadiff-source-row-color: #ffebee; -$schemadiff-target-row-color: #fbe3bf; +$schemadiff-diff-row-color: #fff9c4 !default; +$schemadiff-source-row-color: #ffebee !default; +$schemadiff-target-row-color: #fbe3bf !default; + +/* Custom controls bootstrap changes */ +$custom-forms-transition: none; +$custom-control-indicator-focus-border-color: $input-focus-border-color; +$custom-control-indicator-border-color: $input-border-color; diff --git a/web/pgadmin/static/scss/resources/_theme.variables.scss.sample b/web/pgadmin/static/scss/resources/_theme.variables.scss.sample index b35d53805..e3f37278c 100644 --- a/web/pgadmin/static/scss/resources/_theme.variables.scss.sample +++ b/web/pgadmin/static/scss/resources/_theme.variables.scss.sample @@ -1,59 +1,40 @@ $color-bg: $white; $color-fg: #222222; - -$color-bg: #fff; -$color-fg: #222; - $color-primary: #326690; $color-primary-fg: $white; $color-primary-light: #d6effc; $color-primary-light-fg: $color-primary; $color-primary-dark: #295c85; - $color-secondary: $white; - +$color-ternary: #5b6d7c; +$color-ternary-fg: $white; $color-danger: #e53935; $color-danger-fg: $white; $color-danger-light: #F39999; -$color-danger-lighter: #F39999; - +$color-danger-lighter: #FAECEC; $color-success: #43a047; $color-success-fg: $black; $color-success-light: #DDF1DE; - $color-warning: #eea236; $color-warning-fg: $black; $color-warning-light: #fce5c5;; - -/* Used at highest level in places like tooltip backgroud */ $color-gray-dark: #848ea0; -/* Used for text colors at certain places */ $color-gray: #bac1cd; -/* Used mostly for panel background empty spaces */ $color-gray-light: #ebeef3; -/* Used mostly for disabled input backgrounds */ $color-gray-lighter: #f3f5f9; - -$color-brand: $white; - +$color-brand: $color-primary; $border-color: #dde0e6; $shadow-base-color: $color-gray-dark; - $text-muted: $color-gray-dark; +$header-bg: $color-bg; +$negative-bg: $color-gray-light; +$popover-bg: $color-gray-dark; +$popover-body-color: $white; $input-bg: $white; $input-color: $color-fg; +$input-border-color: $border-color; $input-disabled-bg: $color-gray-lighter; - -$popover-bg: $color-bg; -$popover-body-color: $color-fg; - -$active-color: $color-primary; - -$header-bg: $color-gray-lighter; - -$table-bg: $color-gray-lighter; - -$color-editor-fg: $color-fg; +$color-editor-fg: $input-color; $color-editor-keyword: #908; $color-editor-number: #964; $color-editor-string: #a11; @@ -65,18 +46,18 @@ $color-editor-bracket: #997; $color-editor-operator: $color-fg; $color-editor-foldmarker: #0000FF; $color-editor-activeline: #50B0F0; - +$active-color: $color-primary; +$table-bg: $color-bg; $explain-sev-2-bg: #FFEE88; $explain-sev-3-bg: #EE8800; $explain-sev-4-bg: #880000; $explain-sev-3-color: #FFFFFF; $explain-sev-4-color: #FFFFFF; - -$negative-bg: $color-gray-light; - -/* Works only with chromium browsers */ -$scrollbar-color: $color-gray-lighter!default; -$scrollbar-hover-color: #666666 !default; - -$loader-icon : url("data:image/svg+xml;charset=UTF-8,%3c?xml version='1.0' encoding='utf-8'?%3e%3csvg version='1.1' id='Layer_1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 38 38' style='enable-background:new 0 0 38 38;' xml:space='preserve'%3e%3cstyle type='text/css'%3e .st0%7bfill:none;stroke:%23ebeef3;stroke-width:2;%7d .st1%7bfill:none;stroke:%23326690;stroke-width:2;%7d %3c/style%3e%3cg%3e%3cg transform='translate(1 1)'%3e%3ccircle class='st0' cx='18' cy='18' r='18'/%3e%3cpath class='st1' d='M36,18c0-9.9-8.1-18-18-18 '%3e%3canimateTransform accumulate='none' additive='replace' attributeName='transform' calcMode='linear' dur='0.7s' fill='remove' from='0 18 18' repeatCount='indefinite' restart='always' to='360 18 18' type='rotate'%3e%3c/animateTransform%3e%3c/path%3e%3c/g%3e%3c/g%3e%3c/svg%3e ") !default; -$loader-icon-small: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='utf-8'%3F%3E%3C!-- Generator: Adobe Illustrator 23.1.1, SVG Export Plug-In . SVG Version: 6.00 Build 0) --%3E%3Csvg version='1.1' id='Layer_1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 38 38' style='enable-background:new 0 0 38 38;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0%7Bfill:none;stroke:%23EBEEF3;stroke-width:5;%7D .st1%7Bfill:none;stroke:%23222222;stroke-width:5;%7D%0A%3C/style%3E%3Cg%3E%3Cg transform='translate(1 1)'%3E%3Ccircle class='st0' cx='18' cy='18' r='16'/%3E%3Cpath class='st1' d='M34,18c0-8.8-7.2-16-16-16 '%3E%3CanimateTransform accumulate='none' additive='replace' attributeName='transform' calcMode='linear' dur='0.7s' fill='remove' from='0 18 18' repeatCount='indefinite' restart='always' to='360 18 18' type='rotate'%3E%3C/animateTransform%3E%3C/path%3E%3C/g%3E%3C/g%3E%3C/svg%3E%0A") !default; +$btn-ternary-border: $color-ternary; +$btn-ternary-hover-bg: darken($color-ternary, 7.5%); +$scrollbar-base-color: #bac1cd; +$loader-icon : url("data:image/svg+xml;charset=UTF-8,%3c?xml version='1.0' encoding='utf-8'?%3e%3csvg version='1.1' id='Layer_1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 38 38' style='enable-background:new 0 0 38 38;' xml:space='preserve'%3e%3cstyle type='text/css'%3e .st0%7bfill:none;stroke:%23ebeef3;stroke-width:2;%7d .st1%7bfill:none;stroke:%23326690;stroke-width:2;%7d %3c/style%3e%3cg%3e%3cg transform='translate(1 1)'%3e%3ccircle class='st0' cx='18' cy='18' r='18'/%3e%3cpath class='st1' d='M36,18c0-9.9-8.1-18-18-18 '%3e%3canimateTransform accumulate='none' additive='replace' attributeName='transform' calcMode='linear' dur='0.7s' fill='remove' from='0 18 18' repeatCount='indefinite' restart='always' to='360 18 18' type='rotate'%3e%3c/animateTransform%3e%3c/path%3e%3c/g%3e%3c/g%3e%3c/svg%3e "); +$loader-icon-small: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='utf-8'%3F%3E%3C!-- Generator: Adobe Illustrator 23.1.1, SVG Export Plug-In . SVG Version: 6.00 Build 0) --%3E%3Csvg version='1.1' id='Layer_1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 38 38' style='enable-background:new 0 0 38 38;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0%7Bfill:none;stroke:%23EBEEF3;stroke-width:5;%7D .st1%7Bfill:none;stroke:%23326690;stroke-width:5;%7D%0A%3C/style%3E%3Cg%3E%3Cg transform='translate(1 1)'%3E%3Ccircle class='st0' cx='18' cy='18' r='16'/%3E%3Cpath class='st1' d='M34,18c0-8.8-7.2-16-16-16 '%3E%3CanimateTransform accumulate='none' additive='replace' attributeName='transform' calcMode='linear' dur='0.7s' fill='remove' from='0 18 18' repeatCount='indefinite' restart='always' to='360 18 18' type='rotate'%3E%3C/animateTransform%3E%3C/path%3E%3C/g%3E%3C/g%3E%3C/svg%3E%0A"); +$schemadiff-diff-row-color: #fff9c4; +$schemadiff-source-row-color: #ffebee; +$schemadiff-target-row-color: #fbe3bf; diff --git a/web/pgadmin/static/scss/resources/dark/_theme.variables.scss b/web/pgadmin/static/scss/resources/dark/_theme.variables.scss index 5be687ec9..e82640eba 100644 --- a/web/pgadmin/static/scss/resources/dark/_theme.variables.scss +++ b/web/pgadmin/static/scss/resources/dark/_theme.variables.scss @@ -35,10 +35,11 @@ $color-brand: #1b71b5; $border-color: #4a4a4a; $shadow-base-color: #111111; -$text-muted: #9d9fa1; -$input-bg: $color-gray-light; +$text-muted: #6b6b6b; +$input-bg: $color-bg; $input-color: $color-fg; -$input-disabled-bg: $color-bg; +$input-border-color: #6b6b6b; +$input-disabled-bg: inherit; $popover-bg: $color-bg; $popover-body-color: $color-fg; @@ -74,3 +75,7 @@ $scrollbar-base-color: #616161; $loader-icon : url("data:image/svg+xml;charset=UTF-8,%3c?xml version='1.0' encoding='utf-8'?%3e%3csvg version='1.1' id='Layer_1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 38 38' style='enable-background:new 0 0 38 38;' xml:space='preserve'%3e%3cstyle type='text/css'%3e .st0%7bfill:none;stroke:%23ebeef3;stroke-width:2;%7d .st1%7bfill:none;stroke:%2340617d;stroke-width:2;%7d %3c/style%3e%3cg%3e%3cg transform='translate(1 1)'%3e%3ccircle class='st0' cx='18' cy='18' r='18'/%3e%3cpath class='st1' d='M36,18c0-9.9-8.1-18-18-18 '%3e%3canimateTransform accumulate='none' additive='replace' attributeName='transform' calcMode='linear' dur='0.7s' fill='remove' from='0 18 18' repeatCount='indefinite' restart='always' to='360 18 18' type='rotate'%3e%3c/animateTransform%3e%3c/path%3e%3c/g%3e%3c/g%3e%3c/svg%3e ") !default; $loader-icon-small: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='utf-8'%3F%3E%3C!-- Generator: Adobe Illustrator 23.1.1, SVG Export Plug-In . SVG Version: 6.00 Build 0) --%3E%3Csvg version='1.1' id='Layer_1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 38 38' style='enable-background:new 0 0 38 38;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0%7Bfill:none;stroke:%23EBEEF3;stroke-width:5;%7D .st1%7Bfill:none;stroke:%2340617d;stroke-width:5;%7D%0A%3C/style%3E%3Cg%3E%3Cg transform='translate(1 1)'%3E%3Ccircle class='st0' cx='18' cy='18' r='16'/%3E%3Cpath class='st1' d='M34,18c0-8.8-7.2-16-16-16 '%3E%3CanimateTransform accumulate='none' additive='replace' attributeName='transform' calcMode='linear' dur='0.7s' fill='remove' from='0 18 18' repeatCount='indefinite' restart='always' to='360 18 18' type='rotate'%3E%3C/animateTransform%3E%3C/path%3E%3C/g%3E%3C/g%3E%3C/svg%3E%0A") !default; + +$schemadiff-diff-row-color: #807a48 !default; +$schemadiff-source-row-color: #402025 !default; +$schemadiff-target-row-color: #6b5438 !default; diff --git a/web/pgadmin/static/vendor/backform/backform.js b/web/pgadmin/static/vendor/backform/backform.js index 445fbd607..646167f39 100644 --- a/web/pgadmin/static/vendor/backform/backform.js +++ b/web/pgadmin/static/vendor/backform/backform.js @@ -547,12 +547,14 @@ id: _.uniqueId('bf_') }, template: _.template([ - '', + '
    <%=controlLabel%>
    ', '
    ', - '
    ', - ' <%=disabled ? "disabled" : ""%> <%=readonly ? "readonly" : ""%> <%=required ? "required" : ""%> />', + '
    ">', + ' <%=disabled ? "disabled" : ""%> <%=readonly ? "readonly" : ""%> <%=required ? "required" : ""%> />', ' <% if (label && label.length) { %>', - ' ', + ' ', + ' <% } else { %>', + ' ', ' <% } %>', '
    ', '
    ' @@ -578,9 +580,9 @@ ' <% for (var i=0; i < options.length; i++) { %>', ' <% var option = options[i]; %>', ' <% var id = _.uniqueId("bf_"); %>', - '
    ', - ' <%=disabled ? "disabled" : ""%> <%=readonly ? "disabled" : ""%> <%=required ? "required" : ""%> />', - ' ', + '
    ', + ' <%=disabled ? "disabled" : ""%> <%=readonly ? "disabled" : ""%> <%=required ? "required" : ""%> />', + ' ', '
    ', ' <% } %>', ' <% if (helpMessage && helpMessage.length) { %>', diff --git a/web/pgadmin/static/vendor/backgrid/backgrid-select-all.js b/web/pgadmin/static/vendor/backgrid/backgrid-select-all.js index 5fa915964..6f3d2db52 100644 --- a/web/pgadmin/static/vendor/backgrid/backgrid-select-all.js +++ b/web/pgadmin/static/vendor/backgrid/backgrid-select-all.js @@ -122,7 +122,15 @@ Renders a checkbox in a table cell. */ render: function () { - this.$el.empty().append(''); + let id = `selectall-${_.uniqueId(this.column.get('name'))}`; + this.$el.empty().append(` +
    + + +
    + `); this.delegateEvents(); return this; } diff --git a/web/pgadmin/tools/datagrid/templates/datagrid/index.html b/web/pgadmin/tools/datagrid/templates/datagrid/index.html index 285d5c13c..21c38525c 100644 --- a/web/pgadmin/tools/datagrid/templates/datagrid/index.html +++ b/web/pgadmin/tools/datagrid/templates/datagrid/index.html @@ -192,7 +192,7 @@
    -
    - -
    '); self.grid_width = $('#schema-diff-grid').width(); self.grid_height = this.panel_obj.height(); diff --git a/web/pgadmin/tools/schema_diff/static/scss/_schema_diff.scss b/web/pgadmin/tools/schema_diff/static/scss/_schema_diff.scss index 800449655..3d2e177aa 100644 --- a/web/pgadmin/tools/schema_diff/static/scss/_schema_diff.scss +++ b/web/pgadmin/tools/schema_diff/static/scss/_schema_diff.scss @@ -4,23 +4,18 @@ right: 0; top: 0; bottom: 0; - padding-top: 10px; background-color: $color-gray-light; } #schema-diff-grid { - background: $color-bg; - outline: 0; - font-size: 9pt; - margin-top: 28px; - background: none; - background-color: $color-gray-light; + font-family: $font-family-primary; + font-size: $tree-font-size; } #schema-diff-grid .slick-header .slick-header-columns { background: $color-bg; height: 40px; - border-bottom: $panel-border; + border-bottom: none; } #schema-diff-grid .slick-header .slick-header-column.ui-state-default { @@ -29,6 +24,17 @@ border-right: $panel-border; } +#schema-diff-grid { + .ui-widget-content { + background-color: $input-bg; + color: $input-color; + } + + .ui-state-default { + color: $color-fg; + } +} + .slick-row:hover .slick-cell{ border-top: $table-hover-border; border-bottom: $table-hover-border; @@ -46,12 +52,11 @@ } #schema-diff-grid .slick-row .slick-cell.l0.r0.selected { - background-color: $color-primary; - color: $color-primary-fg; + background-color: inherit; } -#schema-diff-grid .slick-row > .slick-cell:not(.l0):not(.r0).selected { - background-color: $table-hover-bg-color; +#schema-diff-grid .slick-row > .slick-cell.selected { + background-color: $table-hover-bg-color !important; border-top: $table-hover-border; border-bottom: $table-hover-border; } @@ -60,14 +65,14 @@ background: $color-bg; border-bottom: none; border-right: none; - border-top: none; + border-top: $panel-border; } #schema-diff-grid .different { background-color: $schemadiff-diff-row-color !important; } #schema-diff-grid .source { - background-color: $schemadiff-source-row-color !important; + background-color: $schemadiff-source-row-color; } #schema-diff-grid .target { background-color: $schemadiff-target-row-color !important; @@ -83,3 +88,11 @@ background-color: $color-bg !important; overflow-y: hidden; } + +#schema-diff-grid .slick-group-select-checkbox { + width: 13px; + height: 13px; + margin-right: 1rem; + vertical-align: middle; + display: inline-block; +} diff --git a/web/pgadmin/tools/schema_diff/templates/schema_diff/index.html b/web/pgadmin/tools/schema_diff/templates/schema_diff/index.html index 9788264d9..ef687b8e8 100644 --- a/web/pgadmin/tools/schema_diff/templates/schema_diff/index.html +++ b/web/pgadmin/tools/schema_diff/templates/schema_diff/index.html @@ -2,10 +2,14 @@ {% block init_script %} try { require( - ['sources/generated/schema_diff', 'sources/generated/slickgrid', 'sources/generated/codemirror', 'sources/generated/browser_nodes'], - function(pgSchemaDiffHook) { - var pgSchemaDiffHook = pgSchemaDiffHook || pgAdmin.Tools.SchemaDiffHook; - pgSchemaDiffHook.load({{trans_id}}); + ['sources/generated/slickgrid', 'sources/generated/codemirror', 'sources/generated/browser_nodes'], + function() { + require(['sources/generated/schema_diff'], function(pgSchemaDiffHook) { + var pgSchemaDiffHook = pgSchemaDiffHook || pgAdmin.Tools.SchemaDiffHook; + pgSchemaDiffHook.load({{trans_id}}); + }, function() { + console.log(arguments); + }); }, function() { console.log(arguments); diff --git a/web/pgadmin/tools/sqleditor/static/css/sqleditor.css b/web/pgadmin/tools/sqleditor/static/css/sqleditor.css index 031a87444..52b821d8b 100644 --- a/web/pgadmin/tools/sqleditor/static/css/sqleditor.css +++ b/web/pgadmin/tools/sqleditor/static/css/sqleditor.css @@ -337,6 +337,10 @@ input.editor-checkbox:focus { width: 100%; height: 100%; background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAYAAADED76LAAAANElEQVQoU2O8e/fuf2VlZUYGLAAkB5bApggmBteJrAiZjWI0SAJkIrKVxCvAawVeRxLyJgB+Ajc1cwux9wAAAABJRU5ErkJggg==); + /* Let's keep the background as fff irrespective of theme + * make geometry viewer look clean + */ + background-color: #fff; } diff --git a/web/pgadmin/tools/sqleditor/static/scss/_sqleditor.scss b/web/pgadmin/tools/sqleditor/static/scss/_sqleditor.scss index ae12ce41e..94dac6ada 100644 --- a/web/pgadmin/tools/sqleditor/static/scss/_sqleditor.scss +++ b/web/pgadmin/tools/sqleditor/static/scss/_sqleditor.scss @@ -349,3 +349,8 @@ div.strikeout:after { .sql-editor-grid-container.has-no-footer { height: 100%; } + + +/* Setting it to hardcoded white as the SVG generated is having white bg + * Need to check what can be done. + */