diff --git a/cvat-ui/package-lock.json b/cvat-ui/package-lock.json
index a9e51e29..d2f77121 100644
--- a/cvat-ui/package-lock.json
+++ b/cvat-ui/package-lock.json
@@ -1,6 +1,6 @@
{
"name": "cvat-ui",
- "version": "1.11.5",
+ "version": "1.11.6",
"lockfileVersion": 1,
"requires": true,
"dependencies": {
diff --git a/cvat-ui/package.json b/cvat-ui/package.json
index 3a249347..cd48af57 100644
--- a/cvat-ui/package.json
+++ b/cvat-ui/package.json
@@ -1,6 +1,6 @@
{
"name": "cvat-ui",
- "version": "1.11.5",
+ "version": "1.11.6",
"description": "CVAT single-page application",
"main": "src/index.tsx",
"scripts": {
diff --git a/cvat-ui/src/components/annotation-page/standard-workspace/objects-side-bar/object-item-menu.tsx b/cvat-ui/src/components/annotation-page/standard-workspace/objects-side-bar/object-item-menu.tsx
index ca71ee40..0ab045b9 100644
--- a/cvat-ui/src/components/annotation-page/standard-workspace/objects-side-bar/object-item-menu.tsx
+++ b/cvat-ui/src/components/annotation-page/standard-workspace/objects-side-bar/object-item-menu.tsx
@@ -200,6 +200,7 @@ function RemoveItem(props: ItemProps): JSX.Element {
onClick={(): void => {
if (locked) {
Modal.confirm({
+ className: 'cvat-modal-confirm',
title: 'Object is locked',
content: 'Are you sure you want to remove it?',
onOk() {
diff --git a/cvat-ui/src/components/annotation-page/top-bar/player-buttons.tsx b/cvat-ui/src/components/annotation-page/top-bar/player-buttons.tsx
index 8716831e..22ca7c97 100644
--- a/cvat-ui/src/components/annotation-page/top-bar/player-buttons.tsx
+++ b/cvat-ui/src/components/annotation-page/top-bar/player-buttons.tsx
@@ -76,12 +76,16 @@ function PlayerButtons(props: Props): JSX.Element {
let prevButtonTooltipMessage = prevRegularText;
if (prevButtonType === 'filtered') {
prevButton = (
-
+
);
prevButtonTooltipMessage = prevFilteredText;
} else if (prevButtonType === 'empty') {
prevButton = (
-
+
);
prevButtonTooltipMessage = prevEmptyText;
}
@@ -90,11 +94,11 @@ function PlayerButtons(props: Props): JSX.Element {
let nextButtonTooltipMessage = nextRegularText;
if (nextButtonType === 'filtered') {
nextButton = (
-
+
);
nextButtonTooltipMessage = nextFilteredText;
} else if (nextButtonType === 'empty') {
- nextButton = ;
+ nextButton = ;
nextButtonTooltipMessage = nextEmptyText;
}
diff --git a/cvat-ui/src/components/cvat-app.tsx b/cvat-ui/src/components/cvat-app.tsx
index b3c742cd..7e361bdf 100644
--- a/cvat-ui/src/components/cvat-app.tsx
+++ b/cvat-ui/src/components/cvat-app.tsx
@@ -187,9 +187,11 @@ class CVATApplication extends React.PureComponent {
cy.openTaskJob(taskName);
});
- function goCheckFrameNumber(frameNum) {
- cy.get('.cvat-player-frame-selector').within(() => {
- cy.get('input[role="spinbutton"]').clear().type(`${frameNum}{Enter}`).should('have.value', frameNum);
- });
- }
-
describe(`Testing case "${caseId}"`, () => {
it('Create rectangle shape on first frame', () => {
- goCheckFrameNumber(frameNum);
+ cy.goCheckFrameNumber(frameNum);
cy.createRectangle(createRectangleShape2Points);
cy.get('#cvat_canvas_shape_1')
.should('have.attr', 'x')
@@ -52,7 +46,7 @@ context('Merge/split features', () => {
});
});
it('Create rectangle shape on third frame with another position', () => {
- goCheckFrameNumber(frameNum + 2);
+ cy.goCheckFrameNumber(frameNum + 2);
cy.createRectangle(createRectangleShape2PointsSecond);
cy.get('#cvat_canvas_shape_2')
.should('have.attr', 'x')
@@ -63,7 +57,7 @@ context('Merge/split features', () => {
it('Merge the objects with "Merge button"', () => {
cy.get('.cvat-merge-control').click();
cy.get('#cvat_canvas_shape_2').click();
- goCheckFrameNumber(frameNum);
+ cy.goCheckFrameNumber(frameNum);
cy.get('#cvat_canvas_shape_1').click();
cy.get('.cvat-merge-control').click();
});
@@ -75,7 +69,7 @@ context('Merge/split features', () => {
.within(() => {
cy.get('.cvat-object-item-button-keyframe-enabled').should('exist');
});
- goCheckFrameNumber(frameNum + 2);
+ cy.goCheckFrameNumber(frameNum + 2);
cy.get('#cvat_canvas_shape_3').should('exist').and('be.visible');
cy.get('#cvat-objects-sidebar-state-item-3')
.should('contain', '3')
@@ -85,13 +79,13 @@ context('Merge/split features', () => {
});
});
it('On the second frame and on the fourth frame the track is invisible', () => {
- goCheckFrameNumber(frameNum + 1);
+ cy.goCheckFrameNumber(frameNum + 1);
cy.get('#cvat_canvas_shape_3').should('exist').and('be.hidden');
- goCheckFrameNumber(frameNum + 3);
+ cy.goCheckFrameNumber(frameNum + 3);
cy.get('#cvat_canvas_shape_3').should('exist').and('be.hidden');
});
it('Go to the second frame and remove "outside" flag from the track. The track now visible.', () => {
- goCheckFrameNumber(frameNum + 1);
+ cy.goCheckFrameNumber(frameNum + 1);
cy.get('#cvat-objects-sidebar-state-item-3')
.should('contain', '3')
.and('contain', 'RECTANGLE TRACK')
@@ -120,7 +114,7 @@ context('Merge/split features', () => {
});
});
it('On the fourth frame remove "keyframe" flag from the track. The track now visible and "outside" flag is disabled.', () => {
- goCheckFrameNumber(frameNum + 3);
+ cy.goCheckFrameNumber(frameNum + 3);
cy.get('#cvat-objects-sidebar-state-item-3')
.should('contain', '3')
.and('contain', 'RECTANGLE TRACK')
diff --git a/tests/cypress/integration/actions_tasks_objects/case_23_canvas_grid_feature.js b/tests/cypress/integration/actions_tasks_objects/case_23_canvas_grid_feature.js
index 53eceb01..8c24dc46 100644
--- a/tests/cypress/integration/actions_tasks_objects/case_23_canvas_grid_feature.js
+++ b/tests/cypress/integration/actions_tasks_objects/case_23_canvas_grid_feature.js
@@ -10,7 +10,15 @@ context('Canvas grid feature', () => {
const caseId = '23';
const settingsGridSize = 50;
const gridColor = 'Black';
- const gridOpacity = 49;
+ const gridOpacity = 80;
+
+ function generateString(countPointsToMove) {
+ let action = '';
+ for (let i = 0; i < countPointsToMove; i++) {
+ action += '{leftarrow}';
+ }
+ return action;
+ }
before(() => {
cy.openTaskJob(taskName);
@@ -36,14 +44,13 @@ context('Canvas grid feature', () => {
cy.get(`.ant-select-item-option[title="${gridColor}"]`).click();
});
});
- it('Set "Grid opacity" to 49%.', () => {
- cy.get('.cvat-player-settings-grid-opacity-input')
- .click()
- .within(() => {
- cy.get('[role="slider"]').should('have.attr', 'aria-valuenow', gridOpacity);
- });
+ it('Set "Grid opacity" to 80%.', () => {
+ cy.get('.cvat-player-settings-grid-opacity-input').within(() => {
+ cy.get('[role="slider"]').type(generateString(20)); // Moving the slider to the left up to 80.
+ cy.get('[role="slider"]').should('have.attr', 'aria-valuenow', gridOpacity);
+ });
});
- it('Canvas has grid drawn, it is black, cells are 50x50px and it has 49% opacity.', () => {
+ it('Canvas has grid drawn, it is black, cells are 50x50px and it has 80% opacity.', () => {
cy.get('#cvat_canvas_grid')
.should('be.visible') // expected