From e775a066ae1011c070d4376334fe5991d860d5a8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pau=20Ferrer=20Oca=C3=B1a?= Date: Thu, 16 May 2024 10:53:17 +0200 Subject: [PATCH 1/7] MOBILE-4470 quiz: Improve attempts summary page styles --- ...w-recent-conversations-and-contacts_22.png | Bin 27574 -> 27576 bytes .../mod/quiz/components/index/index.scss | 21 ++++++++---------- src/theme/components/ion-accordion.scss | 5 +++++ src/theme/theme.scss | 1 + 4 files changed, 15 insertions(+), 12 deletions(-) create mode 100644 src/theme/components/ion-accordion.scss diff --git a/src/addons/messages/tests/behat/snapshots/test-basic-usage-of-messages-in-app-view-recent-conversations-and-contacts_22.png b/src/addons/messages/tests/behat/snapshots/test-basic-usage-of-messages-in-app-view-recent-conversations-and-contacts_22.png index 961648d44467ce15b8d67f4a1a25e52a3f828b80..e85b3bcfc3349fc741b83df323f45b6d5d9bae7b 100644 GIT binary patch literal 27576 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 diff --git a/src/addons/mod/quiz/components/index/index.scss b/src/addons/mod/quiz/components/index/index.scss index b10c69da8..1bfbfd491 100644 --- a/src/addons/mod/quiz/components/index/index.scss +++ b/src/addons/mod/quiz/components/index/index.scss @@ -36,6 +36,9 @@ min-height: 60px; padding-top: var(--mdl-spacing-2); padding-bottom: var(--mdl-spacing-2); + @include margin-horizontal(var(--mdl-spacing-2), null); + + font: var(--mdl-typography-body-font-md); p { margin: 0px; @@ -44,13 +47,15 @@ } ion-accordion-group { - border-top: 1px solid var(--stroke); - .accordion-expanded .addon-mod_quiz-attempt-title-info, .accordion-expanding .addon-mod_quiz-attempt-title-info { visibility: hidden; } + h3 { + font: var(--mdl-typography-subtitle-font-md); + } + hr { background-color: var(--stroke); height: 1px; @@ -58,19 +63,11 @@ } ion-accordion:nth-child(odd) { - background-color: var(--core-table-odd-cell-background); - - ::ng-deep ion-item { - --background: var(--core-table-odd-cell-background); - } + --ion-item-background: var(--core-table-odd-cell-background); } ion-accordion:nth-child(even) { - background-color: var(--core-table-even-cell-background); - - ::ng-deep ion-item { - --background: var(--core-table-even-cell-background); - } + --ion-item-background: var(--core-table-even-cell-background); } } } diff --git a/src/theme/components/ion-accordion.scss b/src/theme/components/ion-accordion.scss new file mode 100644 index 000000000..a98b14b0e --- /dev/null +++ b/src/theme/components/ion-accordion.scss @@ -0,0 +1,5 @@ +ion-accordion { + .ion-accordion-toggle-icon[slot="start"] { + @include margin-horizontal(null, var(--mdl-spacing-4)); + } +} diff --git a/src/theme/theme.scss b/src/theme/theme.scss index 11ccfb456..c0b1d291f 100644 --- a/src/theme/theme.scss +++ b/src/theme/theme.scss @@ -28,6 +28,7 @@ /* Ionic components overrides */ html { + @import "components/ion-accordion.scss"; @import "components/ion-action-sheet.scss"; @import "components/ion-alert.scss"; @import "components/ion-back-button.scss"; From 5c099471f30c31ca5daa1d921f6a55455b0937da Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pau=20Ferrer=20Oca=C3=B1a?= Date: Thu, 16 May 2024 12:01:50 +0200 Subject: [PATCH 2/7] MOBILE-4470 quiz: Fix opacity and clickable elements on reviews --- .../component/addon-qtype-ddimageortext.html | 2 +- .../component/ddimageortext.scss | 27 ++++--- .../qtype/ddmarker/component/ddmarker.scss | 20 ++--- src/addons/qtype/ddwtos/component/ddwtos.scss | 23 +++--- .../component/addon-qtype-multichoice.html | 68 +++++++++-------- .../multichoice/component/multichoice.scss | 6 +- src/core/components/loading/loading.scss | 2 - src/core/features/question/question.scss | 6 -- src/theme/components/ion-checkbox.scss | 14 +++- src/theme/components/ion-input.scss | 5 ++ src/theme/components/ion-item.scss | 73 +++++-------------- src/theme/components/ion-radio.scss | 14 +++- src/theme/components/ion-select.scss | 4 + src/theme/helpers/custom.mixins.scss | 14 ++++ src/theme/theme.base.scss | 17 +++-- 15 files changed, 156 insertions(+), 139 deletions(-) diff --git a/src/addons/qtype/ddimageortext/component/addon-qtype-ddimageortext.html b/src/addons/qtype/ddimageortext/component/addon-qtype-ddimageortext.html index 40af91739..1dc30c312 100644 --- a/src/addons/qtype/ddimageortext/component/addon-qtype-ddimageortext.html +++ b/src/addons/qtype/ddimageortext/component/addon-qtype-ddimageortext.html @@ -15,7 +15,7 @@ [contextInstanceId]="contextInstanceId" [courseId]="courseId" (afterRender)="textRendered()" /> -
+
diff --git a/src/addons/qtype/ddimageortext/component/ddimageortext.scss b/src/addons/qtype/ddimageortext/component/ddimageortext.scss index de99dcda6..e8379b116 100644 --- a/src/addons/qtype/ddimageortext/component/ddimageortext.scss +++ b/src/addons/qtype/ddimageortext/component/ddimageortext.scss @@ -4,12 +4,20 @@ :host { --ddimageortext-border-drop: var(--medium); --ddimageortext-draghome-background: var(--core-dd-question-color-2); + --cursor: pointer; + + .readonly, + core-format-text ::ng-deep .readonly { + --cursor: auto; + } + } .addon-qtype-ddimageortext-container { min-height: 80px; // To display the loading. } + core-format-text ::ng-deep { div.ddarea { @@ -39,7 +47,7 @@ core-format-text ::ng-deep { div.draghome { border: 1px solid var(--core-dd-question-border); - cursor: pointer; + cursor: var(--cursor); background-color: var(--ddimageortext-draghome-background); display: inline-block; height: auto; @@ -78,23 +86,17 @@ core-format-text ::ng-deep { .drag { border: 1px solid var(--core-dd-question-border); - cursor: pointer; + cursor: var(--cursor); z-index: 2; } .drag.placed { border: 1px solid var(--ddimageortext-border-drop); } - .dragitems.readonly .drag { - cursor: auto; - } - .dragitems>div { + .dragitems > div { clear: both; } .dragitems { - cursor: pointer; - } - .dragitems.readonly { - cursor: auto; + cursor: var(--cursor); } .drag img { display: block; @@ -106,10 +108,7 @@ core-format-text ::ng-deep { border: 1px solid var(--ddimageortext-border-drop); position: absolute; z-index: 1; - cursor: pointer; - } - .readonly .dropzone { - cursor: auto; + cursor: var(--cursor); } div.dragitems div.draghome, div.dragitems div.drag { diff --git a/src/addons/qtype/ddmarker/component/ddmarker.scss b/src/addons/qtype/ddmarker/component/ddmarker.scss index 980cb3b54..992622012 100644 --- a/src/addons/qtype/ddmarker/component/ddmarker.scss +++ b/src/addons/qtype/ddmarker/component/ddmarker.scss @@ -1,4 +1,13 @@ // Style ddmarker content a bit. Almost all these styles are copied from Moodle. +:host { + --cursor: pointer; + + .readonly, + core-format-text ::ng-deep .readonly { + --cursor: auto; + } +} + .addon-qtype-ddmarker-container { min-height: 80px; // To display the loading. } @@ -33,18 +42,11 @@ core-format-text ::ng-deep { .dragitems, // Previous to 3.9. .draghomes { - &.readonly { - .dragitem, - .marker { - cursor: auto; - } - } - .dragitem, // Previous to 3.9. .draghome, .marker { vertical-align: top; - cursor: pointer; + cursor: var(--cursor); position: relative; margin: 10px; display: inline-block; @@ -70,7 +72,7 @@ core-format-text ::ng-deep { .droparea { .dragitem, .marker { - cursor: pointer; + cursor: var(--cursor); position: absolute; vertical-align: top; z-index: 2; diff --git a/src/addons/qtype/ddwtos/component/ddwtos.scss b/src/addons/qtype/ddwtos/component/ddwtos.scss index 557fc3f76..a20501041 100644 --- a/src/addons/qtype/ddwtos/component/ddwtos.scss +++ b/src/addons/qtype/ddwtos/component/ddwtos.scss @@ -1,6 +1,16 @@ @use "theme/globals" as *; // Style ddwtos content a bit. Almost all these styles are copied from Moodle. + +:host { + --cursor: pointer; + + .readonly, + core-format-text ::ng-deep .readonly { + --cursor: default; + } +} + .addon-qtype-ddwtos-container { min-height: 80px; // To display the loading. position: relative; @@ -27,7 +37,7 @@ core-format-text ::ng-deep, .drags ::ng-deep { border: 1px solid var(--core-dd-question-border); margin-bottom: 2px; border-radius: 5px; - cursor: pointer; + cursor: var(--cursor); } .draghome, .drag { display: inline-block; @@ -48,7 +58,7 @@ core-format-text ::ng-deep, .drags ::ng-deep { z-index: 2; border-radius: 5px; line-height: 25px; - cursor: pointer; + cursor: var(--cursor); } .drag.selected, .drop.selected { @@ -60,17 +70,10 @@ core-format-text ::ng-deep, .drags ::ng-deep { &.notreadonly .draghome, &.notreadonly .drop, &.notreadonly .answercontainer { - cursor: pointer; + cursor: var(--cursor); border-radius: 5px; } - &.readonly .drag, - &.readonly .draghome, - &.readonly .drop, - &.readonly .answercontainer { - cursor: default; - } - span.incorrect { background-color: var(--core-question-incorrect-color-bg); } diff --git a/src/addons/qtype/multichoice/component/addon-qtype-multichoice.html b/src/addons/qtype/multichoice/component/addon-qtype-multichoice.html index bd1b653ad..4e69f9ce5 100644 --- a/src/addons/qtype/multichoice/component/addon-qtype-multichoice.html +++ b/src/addons/qtype/multichoice/component/addon-qtype-multichoice.html @@ -16,25 +16,27 @@ - -
-
- -
-
- +
+ +
+
+ +
+ + +
+
+
- - - - +
+ @@ -42,23 +44,26 @@ - -
-
- -
-
- +
+ +
+
+ +
+ + +
+ +
+
- - - +
@@ -66,6 +71,7 @@ + diff --git a/src/addons/qtype/multichoice/component/multichoice.scss b/src/addons/qtype/multichoice/component/multichoice.scss index fea23fd97..5fd3ad0d4 100644 --- a/src/addons/qtype/multichoice/component/multichoice.scss +++ b/src/addons/qtype/multichoice/component/multichoice.scss @@ -1,9 +1,13 @@ +@use "theme/globals" as *; + :host ::ng-deep { .specificfeedback { background-color: var(--core-question-feedback-color-bg); color: var(--core-question-feedback-color); - display: inline; padding: 0 .7em; + font-size: var(--text-size); + + @include pointer-events-on-buttons(); } .d-flex { diff --git a/src/core/components/loading/loading.scss b/src/core/components/loading/loading.scss index 1c86d60ca..e9db2d2a8 100644 --- a/src/core/components/loading/loading.scss +++ b/src/core/components/loading/loading.scss @@ -31,12 +31,10 @@ --contents-display: block; @include core-transition(all, 200ms); - pointer-events: none; display: var(--contents-display); &.core-loading-loaded { position: static; - pointer-events: auto; --contents-display: contents; --internal-loading-inline-min-height: 0px; diff --git a/src/core/features/question/question.scss b/src/core/features/question/question.scss index 369bf2ea9..3ab801280 100644 --- a/src/core/features/question/question.scss +++ b/src/core/features/question/question.scss @@ -106,10 +106,4 @@ .fa.icon.questioncorrectnessicon { font-size: var(--mdl-typography-icon-fontSize-md); } - - .item.item-interactive.item-interactive-disabled ::ng-deep { - ion-label, ion-select, ion-checkbox { - opacity: 0.7; - } - } } diff --git a/src/theme/components/ion-checkbox.scss b/src/theme/components/ion-checkbox.scss index 1105a5550..80afa1d8f 100644 --- a/src/theme/components/ion-checkbox.scss +++ b/src/theme/components/ion-checkbox.scss @@ -16,12 +16,20 @@ input[type=checkbox] { } ion-checkbox { - &.md.checkbox-disabled::part(label), - &.ios.checkbox-disabled { - opacity: var(--mdl-input-disabled-opacity); + &.checkbox-disabled { + @include pointer-events-on-buttons(); + + &.md::part(label), + &.ios { + opacity: var(--mdl-input-disabled-opacity); + } } } .ios input[type=checkbox] { --outer-border-width: 1px; } + +input[type=checkbox][disabled] { + opacity: var(--mdl-input-disabled-opacity); +} diff --git a/src/theme/components/ion-input.scss b/src/theme/components/ion-input.scss index 6675453f4..24fef008b 100644 --- a/src/theme/components/ion-input.scss +++ b/src/theme/components/ion-input.scss @@ -3,3 +3,8 @@ ion-input { opacity: var(--mdl-input-disabled-opacity); } } + +input[disabled], +input[readonly] { + opacity: var(--mdl-input-disabled-opacity); +} diff --git a/src/theme/components/ion-item.scss b/src/theme/components/ion-item.scss index b7f13dd2b..80c2d492b 100644 --- a/src/theme/components/ion-item.scss +++ b/src/theme/components/ion-item.scss @@ -47,6 +47,10 @@ ion-item.item { &.item-has-interactive-control:focus-within { @include core-focus-outline(); } + + &.item-has-interactive-control.item-interactive-disabled { + pointer-events: none; + } } // Fake item. @@ -246,6 +250,22 @@ ion-item.item.item-file { [slot=end] { @include margin-horizontal(var(--mdl-spacing-4), null); } + + // Disabled items. + &.item-disabled, + &.item-interactive-disabled:not(.item-multiple-inputs) ion-label { + opacity: var(--mdl-item-disabled-opacity) !important; + } + + // No highlight on RTE. + &.item-rte { + --full-highlight-height: 0px !important; + } + + &.item-multiple-inputs.only-links a { + cursor: pointer; + } + } .item-dimmed { @@ -255,56 +275,3 @@ ion-item.item.item-file { --background: var(--light); } } - -// No highlight on RTE. -ion-item.item-rte { - --full-highlight-height: 0px !important; -} - -// Make links clickable when inside radio or checkbox items. Style part. -@media (hover: hover) { - ion-item.item-multiple-inputs:not(.item-rte):hover::part(native) { - color: var(--color-hover); - - &::after { - background: var(--background-hover); - opacity: var(--background-hover-opacity); - } - } - - ion-item.ion-color.item-multiple-inputs:hover::part(native) { - color: #{current-color(contrast)}; - - &::after { - background: #{current-color(contrast)}; - } - } -} - -// It fixes the click on links where ion-ripple-effect is present. -// Make links clickable when inside radio or checkbox items. Pointer and cursor part. -ion-item.item-multiple-inputs:not(.only-links):not(.item-rte), -ion-item.ion-activatable:not(.only-links) { - cursor: pointer; - ion-label { - z-index: 3; - pointer-events: none; - - ion-anchor, a, - ion-button, button, - ion-item.ion-focusable, - audio, video, select, input, iframe { - pointer-events: visible; - } - } - - ion-checkbox, ion-datetime, ion-radio, ion-select{ - position: static; - } -} - -ion-item.item-multiple-inputs.only-links { - a { - cursor: pointer; - } -} diff --git a/src/theme/components/ion-radio.scss b/src/theme/components/ion-radio.scss index 92b3ca081..3050b1711 100644 --- a/src/theme/components/ion-radio.scss +++ b/src/theme/components/ion-radio.scss @@ -57,8 +57,16 @@ input[type=radio], } ion-radio { - &.md.radio-disabled::part(label), - &.ios.radio-disabled { - opacity: var(--mdl-input-disabled-opacity); + &.radio-disabled { + @include pointer-events-on-buttons(); + + &.md::part(label), + &.ios { + opacity: var(--mdl-input-disabled-opacity); + } } } + +input[type=radio][disabled] { + opacity: var(--mdl-input-disabled-opacity); +} diff --git a/src/theme/components/ion-select.scss b/src/theme/components/ion-select.scss index d36e6ff4c..369445f9a 100644 --- a/src/theme/components/ion-select.scss +++ b/src/theme/components/ion-select.scss @@ -72,3 +72,7 @@ ion-select-popover { } } } + +select[disabled] { + opacity: var(--mdl-input-disabled-opacity); +} diff --git a/src/theme/helpers/custom.mixins.scss b/src/theme/helpers/custom.mixins.scss index b3e49d758..e15794e90 100644 --- a/src/theme/helpers/custom.mixins.scss +++ b/src/theme/helpers/custom.mixins.scss @@ -171,6 +171,20 @@ } } +@mixin pointer-events-on-buttons() { + a, + ion-button, + button, + audio, + video, + select, + input, + iframe, + [role="button"] { + pointer-events: visible; + } +} + /** * Same as item-push-svg-url but admits flip-rtl */ diff --git a/src/theme/theme.base.scss b/src/theme/theme.base.scss index 43e6b0cae..a25346d60 100644 --- a/src/theme/theme.base.scss +++ b/src/theme/theme.base.scss @@ -63,6 +63,17 @@ html[dir=rtl] { flex-direction: row; } + +.flex-column { + display: flex; + flex-direction: column; + width: 100%; +} + +.flex-grow { + flex-grow: 1; +} + .margin-bottom-sm { margin-bottom: 8px; } .margin-bottom-md { margin-bottom: 12px; } @@ -572,12 +583,6 @@ audio.core-media-adapt-width { width: 100%; } -// Disabled items. -ion-item.item-disabled, -ion-item.item-interactive-disabled:not(.item-multiple-inputs) ion-label { - opacity: var(--mdl-item-disabled-opacity) !important; -} - ion-item-divider.item, ion-item.item, td { From 91e9d443f18ec2f88e9afad3526ca42df62bfb8a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pau=20Ferrer=20Oca=C3=B1a?= Date: Thu, 16 May 2024 12:17:15 +0200 Subject: [PATCH 3/7] MOBILE-4470 styles: Sort some styles --- .../upcoming-events/upcoming-events.scss | 5 -- .../upcoming-events/upcoming-events.ts | 2 +- src/theme/components/ion-alert.scss | 30 +++++++ src/theme/components/ion-button.scss | 56 ++++++++++++ src/theme/theme.base.scss | 88 ------------------- 5 files changed, 87 insertions(+), 94 deletions(-) delete mode 100644 src/addons/calendar/components/upcoming-events/upcoming-events.scss diff --git a/src/addons/calendar/components/upcoming-events/upcoming-events.scss b/src/addons/calendar/components/upcoming-events/upcoming-events.scss deleted file mode 100644 index 0113d9512..000000000 --- a/src/addons/calendar/components/upcoming-events/upcoming-events.scss +++ /dev/null @@ -1,5 +0,0 @@ -:host { - .addon-calendar-event { - cursor: pointer; - } -} diff --git a/src/addons/calendar/components/upcoming-events/upcoming-events.ts b/src/addons/calendar/components/upcoming-events/upcoming-events.ts index 909169ad8..862712285 100644 --- a/src/addons/calendar/components/upcoming-events/upcoming-events.ts +++ b/src/addons/calendar/components/upcoming-events/upcoming-events.ts @@ -36,7 +36,7 @@ import { Translate } from '@singletons'; @Component({ selector: 'addon-calendar-upcoming-events', templateUrl: 'addon-calendar-upcoming-events.html', - styleUrls: ['../../calendar-common.scss', 'upcoming-events.scss'], + styleUrls: ['../../calendar-common.scss'], }) export class AddonCalendarUpcomingEventsComponent implements OnInit, DoCheck, OnDestroy { diff --git a/src/theme/components/ion-alert.scss b/src/theme/components/ion-alert.scss index 74c255a07..3c51f1847 100644 --- a/src/theme/components/ion-alert.scss +++ b/src/theme/components/ion-alert.scss @@ -73,3 +73,33 @@ ion-alert { padding-bottom: 0; } } + +ion-alert.core-alert-network-error .alert-head, +div.core-iframe-network-error { + position: relative; + content: " "; + background: url("/assets/fonts/font-awesome/solid/wifi.svg") no-repeat 50% 50%; + margin: 25px auto; + + h2 { + @include sr-only(); + } + + &::after { + content: " "; + position: absolute; + top: -20%; + right: -15%; + width: 50%; + height: 50%; + background-color: var(--danger); + -webkit-mask: url("/assets/fonts/font-awesome/solid/triangle-exclamation.svg") no-repeat 50% 50%; + mask: url("/assets/fonts/font-awesome/solid/triangle-exclamation.svg") no-repeat 50% 50%; + } +} + +[dir=rtl] ion-alert.core-alert-network-error .alert-head::after, +[dir=rtl] div.core-iframe-network-error::after { + right: unset; + left: -15%; +} diff --git a/src/theme/components/ion-button.scss b/src/theme/components/ion-button.scss index 5fd9e9628..690456df3 100644 --- a/src/theme/components/ion-button.scss +++ b/src/theme/components/ion-button.scss @@ -103,3 +103,59 @@ ion-button { } } } + +ion-button, +ion-fab-button, +button, +[role="button"] { + text-transform: none; + min-height: var(--a11y-sizing-minTargetSize); + min-width: var(--a11y-sizing-minTargetSize); + + &.button-large { + min-height: 2.8em; + min-width: 2.8em + } +} + +[role="button"], +.clickable { + cursor: pointer; + + + [disabled], + [aria-disabled="true"] { + cursor: default; + opacity: var(--mdl-button-disabled-opacity); + pointer-events: none; + } +} + +ion-button.core-button-as-link { + text-decoration: underline; + font-size: inherit; + font-weight: normal; + letter-spacing: normal; + white-space: break-spaces; +} + +button.as-link { + display: inline; + min-height: auto; + min-width: auto; + color: var(--core-link-color); + background: none; + border: 0; + line-height: inherit; + margin: 0; + padding: 0; + text-align: start; + font-size: inherit; +} + + +button[disabled] { + cursor: default; + opacity: var(--mdl-button-disabled-opacity); + pointer-events: none; +} diff --git a/src/theme/theme.base.scss b/src/theme/theme.base.scss index a25346d60..2223c7d5e 100644 --- a/src/theme/theme.base.scss +++ b/src/theme/theme.base.scss @@ -107,94 +107,6 @@ ion-footer { } } -// Buttons. -ion-button, -ion-fab-button, -button, -[role="button"] { - text-transform: none; - min-height: var(--a11y-sizing-minTargetSize); - min-width: var(--a11y-sizing-minTargetSize); - - &.button-large { - min-height: 2.8em; - min-width: 2.8em - } -} - -[role="button"], -.clickable { - cursor: pointer; - - - [disabled], - [aria-disabled="true"] { - cursor: default; - opacity: var(--mdl-button-disabled-opacity); - pointer-events: none; - } -} - -button[disabled] { - cursor: default; - opacity: var(--mdl-button-disabled-opacity); - pointer-events: none; -} - -ion-button.core-button-as-link { - text-decoration: underline; - font-size: inherit; - font-weight: normal; - letter-spacing: normal; - white-space: break-spaces; -} - -button.as-link { - display: inline; - min-height: auto; - min-width: auto; - color: var(--core-link-color); - background: none; - border: 0; - line-height: inherit; - margin: 0; - padding: 0; - text-align: start; - font-size: inherit; -} - - -// Ionic alert. -ion-alert.core-alert-network-error .alert-head, -div.core-iframe-network-error { - position: relative; - content: " "; - background: url("/assets/fonts/font-awesome/solid/wifi.svg") no-repeat 50% 50%; - margin: 25px auto; - - h2 { - @include sr-only(); - } - - &::after { - content: " "; - position: absolute; - top: -20%; - right: -15%; - width: 50%; - height: 50%; - background-color: var(--danger); - -webkit-mask: url("/assets/fonts/font-awesome/solid/triangle-exclamation.svg") no-repeat 50% 50%; - mask: url("/assets/fonts/font-awesome/solid/triangle-exclamation.svg") no-repeat 50% 50%; - } -} - -[dir=rtl] ion-alert.core-alert-network-error .alert-head::after, -[dir=rtl] div.core-iframe-network-error::after { - right: unset; - left: -15%; -} - // Ionic list. ion-list { padding: 0 !important; From a88147e5b06aa25876e1dc719344e286a769e50c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pau=20Ferrer=20Oca=C3=B1a?= Date: Thu, 16 May 2024 12:17:36 +0200 Subject: [PATCH 4/7] MOBILE-4470 styles: Remove temporal fix on popovers --- src/theme/theme.base.scss | 18 ------------------ 1 file changed, 18 deletions(-) diff --git a/src/theme/theme.base.scss b/src/theme/theme.base.scss index 2223c7d5e..b7e12df4e 100644 --- a/src/theme/theme.base.scss +++ b/src/theme/theme.base.scss @@ -690,24 +690,6 @@ video::-webkit-media-text-track-display { white-space: normal !important; } -/* -* This is to solve popver issue in chrome 114 -* For more info see: https://github.com/ionic-team/ionic-framework/issues/27599 -*/ -[popover].popover-viewport { - display: initial; - position: initial; - margin: initial; - border: initial; - background: initial; - padding: initial; - width: initial; - height: initial; - overflow: initial; - inset: initial; - color: initial; -} - /** * https://github.com/ionic-team/ionic-framework/blob/6ffbdbb3b2b69290cf25753d535bc7483bd7c6e8/BREAKING.md#css-utilities */ From ba7212057488eec5961e84086ee56025f7299f2b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pau=20Ferrer=20Oca=C3=B1a?= Date: Thu, 16 May 2024 13:05:41 +0200 Subject: [PATCH 5/7] MOBILE-4470 chore: ion-button input & textarea now supports ariaLabel --- .../myoverview/addon-block-myoverview.html | 6 +++--- .../blog/pages/edit-entry/edit-entry.html | 2 +- src/addons/blog/pages/index/index.html | 4 ++-- .../calendar/addon-calendar-calendar.html | 4 ++-- .../calendar/components/filter/filter.html | 2 +- src/addons/calendar/pages/day/day.html | 6 +++--- .../calendar/pages/edit-event/edit-event.html | 5 ++--- src/addons/calendar/pages/event/event.html | 2 +- src/addons/calendar/pages/index/index.html | 2 +- .../conversation-info/conversation-info.html | 2 +- .../messages/pages/contacts/contacts.html | 2 +- .../group-conversations.html | 4 ++-- .../edit-feedback-modal.html | 2 +- .../index/addon-mod-assign-index.html | 2 +- .../addon-mod-assign-submission.html | 2 +- .../addon-mod-assign-feedback-comments.html | 2 +- .../components/index/index.html | 2 +- .../components/index/addon-mod-book-index.html | 2 +- src/addons/mod/book/components/toc/toc.html | 2 +- .../mod/book/pages/contents/contents.html | 2 +- .../components/index/addon-mod-chat-index.html | 2 +- .../components/users-modal/users-modal.html | 2 +- src/addons/mod/chat/pages/chat/chat.html | 2 +- .../index/addon-mod-choice-index.html | 2 +- .../action/addon-mod-data-action.html | 15 +++++++-------- .../components/index/addon-mod-data-index.html | 4 ++-- .../mod/data/components/search/search.html | 4 ++-- src/addons/mod/data/pages/entry/entry.html | 5 ++--- .../index/addon-mod-feedback-index.html | 2 +- .../index/addon-mod-folder-index.html | 2 +- .../mod/forum/components/index/index.html | 6 +++--- src/addons/mod/forum/components/post/post.html | 4 ++-- .../index/addon-mod-glossary-index.html | 7 +++---- src/addons/mod/glossary/pages/entry/entry.html | 5 ++--- .../index/addon-mod-h5pactivity-index.html | 2 +- .../index/addon-mod-imscp-index.html | 2 +- src/addons/mod/imscp/components/toc/toc.html | 2 +- src/addons/mod/imscp/pages/view/view.html | 2 +- .../index/addon-mod-lesson-index.html | 2 +- .../components/menu-modal/menu-modal.html | 2 +- src/addons/mod/lesson/pages/player/player.html | 4 ++-- .../components/index/addon-mod-lti-index.html | 2 +- .../components/index/addon-mod-page-index.html | 2 +- .../components/index/addon-mod-quiz-index.html | 2 +- .../navigation-modal/navigation-modal.html | 2 +- .../preflight-modal/preflight-modal.html | 2 +- src/addons/mod/quiz/pages/player/player.html | 5 ++--- src/addons/mod/quiz/pages/review/review.html | 8 ++++---- .../index/addon-mod-resource-index.html | 2 +- .../index/addon-mod-scorm-index.html | 2 +- src/addons/mod/scorm/components/toc/toc.html | 2 +- src/addons/mod/scorm/pages/player/player.html | 2 +- .../index/addon-mod-survey-index.html | 2 +- .../components/index/addon-mod-url-index.html | 2 +- .../components/index/addon-mod-wiki-index.html | 6 +++--- src/addons/mod/wiki/components/map/map.html | 2 +- src/addons/mod/wiki/pages/edit/edit.html | 2 +- .../index/addon-mod-workshop-index.html | 2 +- .../mod/workshop/components/phase/phase.html | 2 +- .../pages/edit-submission/edit-submission.html | 2 +- .../workshop/pages/submission/submission.html | 2 +- src/addons/notes/components/add/add-modal.html | 4 ++-- src/addons/notes/pages/list/list.html | 7 +++---- .../essay/component/addon-qtype-essay.html | 2 +- .../component/addon-qtype-ordering.html | 4 ++-- .../pages/courses-storage/courses-storage.html | 2 +- .../attachments/core-attachments.html | 2 +- .../context-menu/core-context-menu.html | 2 +- .../core-download-refresh.html | 4 ++-- src/core/components/file/core-file.html | 4 ++-- .../core-horizontal-scroll-controls.html | 4 ++-- src/core/components/iframe/core-iframe.html | 2 +- .../components/local-file/core-local-file.html | 10 +++++----- src/core/components/message/message.html | 4 ++-- .../navigation-bar/core-navigation-bar.html | 4 ++-- .../password-modal/password-modal.html | 4 ++-- .../core-send-message-form.html | 2 +- .../show-password/core-show-password.html | 2 +- .../tabs-outlet/core-tabs-outlet.html | 4 ++-- src/core/components/tabs/core-tabs.html | 4 ++-- .../side-blocks-button/side-blocks-button.html | 2 +- .../components/side-blocks/side-blocks.html | 2 +- .../features/comments/pages/viewer/viewer.html | 2 +- .../choose-site-modal/choose-site-modal.html | 2 +- .../course-format/course-format.html | 6 +++--- .../components/course-index/course-index.html | 2 +- .../core-course-module-completion.html | 4 ++-- .../core-course-module-manual-completion.html | 4 ++-- .../module-summary/module-summary.html | 6 +++--- .../pages/course-summary/course-summary.html | 4 ++-- .../features/course/pages/index/index.html | 2 +- .../pages/module-preview/module-preview.html | 4 ++-- .../core-courses-course-list-item.html | 2 +- .../courses/pages/dashboard/dashboard.html | 2 +- .../components/contactdpo/contactdpo.html | 2 +- .../components/newrequest/newrequest.html | 2 +- .../capture-media/capture-media.html | 4 ++-- .../audio-recorder/audio-recorder.html | 13 ++++++------- .../components/h5p-player/core-h5p-player.html | 5 ++--- .../login-methods/login-methods.html | 4 ++-- .../login/components/site-help/site-help.html | 2 +- .../site-onboarding/site-onboarding.html | 4 ++-- .../components/sites-modal/sites-modal.html | 6 +++--- .../pages/change-password/change-password.html | 2 +- .../login/pages/credentials/credentials.html | 4 ++-- .../login/pages/email-signup/email-signup.html | 2 +- .../forgotten-password/forgotten-password.html | 2 +- .../login/pages/reconnect/reconnect.html | 4 ++-- src/core/features/login/pages/site/site.html | 2 +- src/core/features/login/pages/sites/sites.html | 6 +++--- .../components/user-menu/user-menu.html | 4 ++-- .../components/policy-modal/policy-modal.html | 2 +- .../policy/pages/acceptances/acceptances.html | 18 +++++++++--------- .../policy/pages/site-policy/site-policy.html | 4 ++-- .../components/ratings/ratings-modal.html | 2 +- .../components/set-button/set-button.html | 2 +- .../set-reminder-custom.html | 2 +- .../report-summary/report-summary.html | 2 +- .../reportbuilder/pages/report/report.html | 2 +- .../global-search-filters.html | 2 +- .../components/search-box/core-search-box.html | 6 +++--- src/core/features/settings/pages/dev/dev.html | 2 +- .../settings/pages/deviceinfo/deviceinfo.html | 2 +- .../settings/pages/error-log/error-log.html | 2 +- .../features/settings/pages/site/site.html | 2 +- .../pages/synchronization/synchronization.html | 6 +++--- .../components/list-modal/list-modal.html | 2 +- .../features/sitehome/pages/index/index.html | 2 +- .../core-siteplugins-module-index.html | 2 +- src/core/features/user/pages/about/about.html | 2 +- .../complete-profile/complete-profile.html | 2 +- .../viewer/components/image/image.html | 6 +++--- .../components/qr-scanner/qr-scanner.html | 2 +- .../features/viewer/components/text/text.html | 2 +- 134 files changed, 219 insertions(+), 228 deletions(-) diff --git a/src/addons/block/myoverview/components/myoverview/addon-block-myoverview.html b/src/addons/block/myoverview/components/myoverview/addon-block-myoverview.html index 8852c7a00..a204b78f6 100644 --- a/src/addons/block/myoverview/components/myoverview/addon-block-myoverview.html +++ b/src/addons/block/myoverview/components/myoverview/addon-block-myoverview.html @@ -6,7 +6,7 @@
+ [ariaLabel]="prefetchCoursesData.statusTranslatable | translate"> + [ariaLabel]="'addon.block_myoverview.aria:list' | translate"> + [ariaLabel]="'addon.block_myoverview.aria:card' | translate"> diff --git a/src/addons/blog/pages/edit-entry/edit-entry.html b/src/addons/blog/pages/edit-entry/edit-entry.html index 92be35280..6fbed99ba 100644 --- a/src/addons/blog/pages/edit-entry/edit-entry.html +++ b/src/addons/blog/pages/edit-entry/edit-entry.html @@ -73,7 +73,7 @@
} - {{ 'core.save' | translate }} diff --git a/src/addons/blog/pages/index/index.html b/src/addons/blog/pages/index/index.html index aa91a5df5..91d072d7f 100644 --- a/src/addons/blog/pages/index/index.html +++ b/src/addons/blog/pages/index/index.html @@ -41,8 +41,8 @@ @if (entry.userid === currentUserId && optionsAvailable) { - + } diff --git a/src/addons/calendar/components/calendar/addon-calendar-calendar.html b/src/addons/calendar/components/calendar/addon-calendar-calendar.html index 83438a0e6..5ab1fa14b 100644 --- a/src/addons/calendar/components/calendar/addon-calendar-calendar.html +++ b/src/addons/calendar/components/calendar/addon-calendar-calendar.html @@ -12,7 +12,7 @@ - + @@ -23,7 +23,7 @@ - + diff --git a/src/addons/calendar/components/filter/filter.html b/src/addons/calendar/components/filter/filter.html index a5732aebd..e2d2d97f6 100644 --- a/src/addons/calendar/components/filter/filter.html +++ b/src/addons/calendar/components/filter/filter.html @@ -1,7 +1,7 @@ - + diff --git a/src/addons/calendar/pages/day/day.html b/src/addons/calendar/pages/day/day.html index a8d4c9634..aa5123fa6 100644 --- a/src/addons/calendar/pages/day/day.html +++ b/src/addons/calendar/pages/day/day.html @@ -7,7 +7,7 @@

{{ 'addon.calendar.calendarevents' | translate }}

- + @@ -31,7 +31,7 @@ - + @@ -39,7 +39,7 @@

{{ periodName }}

- + diff --git a/src/addons/calendar/pages/edit-event/edit-event.html b/src/addons/calendar/pages/edit-event/edit-event.html index a26e827e9..b16a3baa0 100644 --- a/src/addons/calendar/pages/edit-event/edit-event.html +++ b/src/addons/calendar/pages/edit-event/edit-event.html @@ -117,8 +117,7 @@

{{ 'addon.calendar.reminders' | translate }}

- + @@ -126,7 +125,7 @@

{{ reminder.label }}

- + diff --git a/src/addons/calendar/pages/event/event.html b/src/addons/calendar/pages/event/event.html index 92128273f..6f21e79ef 100644 --- a/src/addons/calendar/pages/event/event.html +++ b/src/addons/calendar/pages/event/event.html @@ -149,7 +149,7 @@

{{ reminder.label }}

{{ reminder.sublabel }}

- diff --git a/src/addons/calendar/pages/index/index.html b/src/addons/calendar/pages/index/index.html index f07174d3f..a1ab5d73c 100644 --- a/src/addons/calendar/pages/index/index.html +++ b/src/addons/calendar/pages/index/index.html @@ -8,7 +8,7 @@

{{ 'addon.calendar.upcomingevents' | translate }}

- + diff --git a/src/addons/messages/components/conversation-info/conversation-info.html b/src/addons/messages/components/conversation-info/conversation-info.html index f18c17a89..0af889977 100644 --- a/src/addons/messages/components/conversation-info/conversation-info.html +++ b/src/addons/messages/components/conversation-info/conversation-info.html @@ -4,7 +4,7 @@

{{ 'addon.messages.groupinfo' | translate }}

- + diff --git a/src/addons/messages/pages/contacts/contacts.html b/src/addons/messages/pages/contacts/contacts.html index 613d674f0..c26c66b0f 100644 --- a/src/addons/messages/pages/contacts/contacts.html +++ b/src/addons/messages/pages/contacts/contacts.html @@ -7,7 +7,7 @@

{{ 'addon.messages.contacts' | translate }}

- + diff --git a/src/addons/messages/pages/group-conversations/group-conversations.html b/src/addons/messages/pages/group-conversations/group-conversations.html index db43ceb5c..49c292256 100644 --- a/src/addons/messages/pages/group-conversations/group-conversations.html +++ b/src/addons/messages/pages/group-conversations/group-conversations.html @@ -7,10 +7,10 @@

{{ 'addon.messages.messages' | translate }}

- + - + diff --git a/src/addons/mod/assign/components/edit-feedback-modal/edit-feedback-modal.html b/src/addons/mod/assign/components/edit-feedback-modal/edit-feedback-modal.html index 174c766bd..178152f64 100644 --- a/src/addons/mod/assign/components/edit-feedback-modal/edit-feedback-modal.html +++ b/src/addons/mod/assign/components/edit-feedback-modal/edit-feedback-modal.html @@ -4,7 +4,7 @@

{{ plugin.name }}

- + diff --git a/src/addons/mod/assign/components/index/addon-mod-assign-index.html b/src/addons/mod/assign/components/index/addon-mod-assign-index.html index cef082331..e037cb09b 100644 --- a/src/addons/mod/assign/components/index/addon-mod-assign-index.html +++ b/src/addons/mod/assign/components/index/addon-mod-assign-index.html @@ -1,6 +1,6 @@ - + diff --git a/src/addons/mod/assign/components/submission/addon-mod-assign-submission.html b/src/addons/mod/assign/components/submission/addon-mod-assign-submission.html index 0cf93f8f1..0ee574a3f 100644 --- a/src/addons/mod/assign/components/submission/addon-mod-assign-submission.html +++ b/src/addons/mod/assign/components/submission/addon-mod-assign-submission.html @@ -267,7 +267,7 @@

+ [ariaLabel]="'core.showadvanced' |translate"> diff --git a/src/addons/mod/assign/feedback/comments/component/addon-mod-assign-feedback-comments.html b/src/addons/mod/assign/feedback/comments/component/addon-mod-assign-feedback-comments.html index 6ad516896..5be4c93df 100644 --- a/src/addons/mod/assign/feedback/comments/component/addon-mod-assign-feedback-comments.html +++ b/src/addons/mod/assign/feedback/comments/component/addon-mod-assign-feedback-comments.html @@ -9,7 +9,7 @@
- +
diff --git a/src/addons/mod/bigbluebuttonbn/components/index/index.html b/src/addons/mod/bigbluebuttonbn/components/index/index.html index eb5ae623d..59ee6ec3d 100644 --- a/src/addons/mod/bigbluebuttonbn/components/index/index.html +++ b/src/addons/mod/bigbluebuttonbn/components/index/index.html @@ -1,6 +1,6 @@ - + diff --git a/src/addons/mod/book/components/index/addon-mod-book-index.html b/src/addons/mod/book/components/index/addon-mod-book-index.html index 6f60eaf28..8918c7daa 100644 --- a/src/addons/mod/book/components/index/addon-mod-book-index.html +++ b/src/addons/mod/book/components/index/addon-mod-book-index.html @@ -1,6 +1,6 @@ - + diff --git a/src/addons/mod/book/components/toc/toc.html b/src/addons/mod/book/components/toc/toc.html index 1cf3aeba0..12f84e5db 100644 --- a/src/addons/mod/book/components/toc/toc.html +++ b/src/addons/mod/book/components/toc/toc.html @@ -4,7 +4,7 @@

{{ 'addon.mod_book.toc' | translate }}

- + diff --git a/src/addons/mod/book/pages/contents/contents.html b/src/addons/mod/book/pages/contents/contents.html index b1169bfeb..d540f7b94 100644 --- a/src/addons/mod/book/pages/contents/contents.html +++ b/src/addons/mod/book/pages/contents/contents.html @@ -9,7 +9,7 @@ - + diff --git a/src/addons/mod/chat/components/index/addon-mod-chat-index.html b/src/addons/mod/chat/components/index/addon-mod-chat-index.html index 74b7c4e80..9ac6a6b51 100644 --- a/src/addons/mod/chat/components/index/addon-mod-chat-index.html +++ b/src/addons/mod/chat/components/index/addon-mod-chat-index.html @@ -1,6 +1,6 @@ - + diff --git a/src/addons/mod/chat/components/users-modal/users-modal.html b/src/addons/mod/chat/components/users-modal/users-modal.html index dd98dc8f9..98cfc8b70 100644 --- a/src/addons/mod/chat/components/users-modal/users-modal.html +++ b/src/addons/mod/chat/components/users-modal/users-modal.html @@ -4,7 +4,7 @@

{{ 'addon.mod_chat.currentusers' | translate }}

- + diff --git a/src/addons/mod/chat/pages/chat/chat.html b/src/addons/mod/chat/pages/chat/chat.html index fd15a114c..065c7324b 100644 --- a/src/addons/mod/chat/pages/chat/chat.html +++ b/src/addons/mod/chat/pages/chat/chat.html @@ -9,7 +9,7 @@ - + diff --git a/src/addons/mod/choice/components/index/addon-mod-choice-index.html b/src/addons/mod/choice/components/index/addon-mod-choice-index.html index fd8aa8e1d..b8ce3f97e 100644 --- a/src/addons/mod/choice/components/index/addon-mod-choice-index.html +++ b/src/addons/mod/choice/components/index/addon-mod-choice-index.html @@ -1,6 +1,6 @@ - + diff --git a/src/addons/mod/data/components/action/addon-mod-data-action.html b/src/addons/mod/data/components/action/addon-mod-data-action.html index 26315c8b0..af8482d39 100644 --- a/src/addons/mod/data/components/action/addon-mod-data-action.html +++ b/src/addons/mod/data/components/action/addon-mod-data-action.html @@ -1,34 +1,33 @@ + [ariaLabel]="'addon.mod_data.actionsmenu' | translate"> - + - + + [ariaLabel]="'core.delete' | translate"> + [ariaLabel]="'core.restore' | translate"> + [ariaLabel]="'addon.mod_data.approve' | translate"> + [ariaLabel]="'addon.mod_data.disapprove' | translate"> diff --git a/src/addons/mod/data/components/index/addon-mod-data-index.html b/src/addons/mod/data/components/index/addon-mod-data-index.html index 269610acf..ac4cf7ce9 100644 --- a/src/addons/mod/data/components/index/addon-mod-data-index.html +++ b/src/addons/mod/data/components/index/addon-mod-data-index.html @@ -1,6 +1,6 @@ - + @@ -10,7 +10,7 @@ (action)="gotoEntry(firstEntry)" /> - + diff --git a/src/addons/mod/data/components/search/search.html b/src/addons/mod/data/components/search/search.html index 94ce975de..8b7a5c7e1 100644 --- a/src/addons/mod/data/components/search/search.html +++ b/src/addons/mod/data/components/search/search.html @@ -4,7 +4,7 @@

{{ 'addon.mod_data.search' | translate }}

- + @@ -19,7 +19,7 @@
- diff --git a/src/addons/mod/data/pages/entry/entry.html b/src/addons/mod/data/pages/entry/entry.html index d536d0ee9..0c2b27f8e 100644 --- a/src/addons/mod/data/pages/entry/entry.html +++ b/src/addons/mod/data/pages/entry/entry.html @@ -48,15 +48,14 @@
- - + diff --git a/src/addons/mod/feedback/components/index/addon-mod-feedback-index.html b/src/addons/mod/feedback/components/index/addon-mod-feedback-index.html index dbeae8223..cef4e75c3 100644 --- a/src/addons/mod/feedback/components/index/addon-mod-feedback-index.html +++ b/src/addons/mod/feedback/components/index/addon-mod-feedback-index.html @@ -1,6 +1,6 @@ - + diff --git a/src/addons/mod/folder/components/index/addon-mod-folder-index.html b/src/addons/mod/folder/components/index/addon-mod-folder-index.html index 43ab829b3..705542928 100644 --- a/src/addons/mod/folder/components/index/addon-mod-folder-index.html +++ b/src/addons/mod/folder/components/index/addon-mod-folder-index.html @@ -1,6 +1,6 @@ - + diff --git a/src/addons/mod/forum/components/index/index.html b/src/addons/mod/forum/components/index/index.html index ed1795069..ee39d41a5 100644 --- a/src/addons/mod/forum/components/index/index.html +++ b/src/addons/mod/forum/components/index/index.html @@ -1,9 +1,9 @@ - + - + @@ -135,7 +135,7 @@ + [ariaLabel]="('core.displayoptions' | translate)" (click)="showOptionsMenu($event, discussion)" slot="end"> diff --git a/src/addons/mod/forum/components/post/post.html b/src/addons/mod/forum/components/post/post.html index d20baf0a8..1a35dd9eb 100644 --- a/src/addons/mod/forum/components/post/post.html +++ b/src/addons/mod/forum/components/post/post.html @@ -16,7 +16,7 @@ [attr.aria-label]="'addon.mod_forum.unread' | translate">