From a6136c18bba881715a8651ef0736bd540d3f2969 Mon Sep 17 00:00:00 2001 From: Kenn Jacobsen Date: Fri, 3 May 2019 09:01:41 +0200 Subject: [PATCH 01/11] Make sure that the color picker labels are always shown --- .../directives/components/buttons/umbtoggle.directive.js | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/Umbraco.Web.UI.Client/src/common/directives/components/buttons/umbtoggle.directive.js b/src/Umbraco.Web.UI.Client/src/common/directives/components/buttons/umbtoggle.directive.js index 9390d64cdb..abcfbc3692 100644 --- a/src/Umbraco.Web.UI.Client/src/common/directives/components/buttons/umbtoggle.directive.js +++ b/src/Umbraco.Web.UI.Client/src/common/directives/components/buttons/umbtoggle.directive.js @@ -66,7 +66,7 @@ (function () { 'use strict'; - function ToggleDirective(localizationService, eventsService) { + function ToggleDirective(localizationService, eventsService, $timeout) { function link(scope, el, attr, ctrl) { @@ -75,7 +75,11 @@ function onInit() { setLabelText(); - eventsService.emit("toggleValue", { value: scope.checked }); + // must wait until the current digest cycle is finished before we emit this event on init, + // otherwise other property editors might not yet be ready to receive the event + $timeout(function () { + eventsService.emit("toggleValue", { value: scope.checked }); + }); } function setLabelText() { From a056c273dee413a4be88d1e6bcb7afaaec4ed9b8 Mon Sep 17 00:00:00 2001 From: Kenn Jacobsen Date: Fri, 3 May 2019 11:17:15 +0200 Subject: [PATCH 02/11] Support auto focus on ACE editor and use it for RTE code view --- .../common/directives/components/umbaceeditor.directive.js | 4 ++++ .../src/views/propertyeditors/rte/codeeditor.controller.js | 1 + 2 files changed, 5 insertions(+) diff --git a/src/Umbraco.Web.UI.Client/src/common/directives/components/umbaceeditor.directive.js b/src/Umbraco.Web.UI.Client/src/common/directives/components/umbaceeditor.directive.js index a215bca645..cd1b1d8181 100644 --- a/src/Umbraco.Web.UI.Client/src/common/directives/components/umbaceeditor.directive.js +++ b/src/Umbraco.Web.UI.Client/src/common/directives/components/umbaceeditor.directive.js @@ -281,6 +281,10 @@ opts.callbacks.unshift(options.onLoad); } + if (opts.autoFocus === true) { + acee.focus(); + } + // EVENTS // unbind old change listener diff --git a/src/Umbraco.Web.UI.Client/src/views/propertyeditors/rte/codeeditor.controller.js b/src/Umbraco.Web.UI.Client/src/views/propertyeditors/rte/codeeditor.controller.js index f455e99fe7..b0d0ab5b20 100644 --- a/src/Umbraco.Web.UI.Client/src/views/propertyeditors/rte/codeeditor.controller.js +++ b/src/Umbraco.Web.UI.Client/src/views/propertyeditors/rte/codeeditor.controller.js @@ -12,6 +12,7 @@ mode: "razor", theme: "chrome", showPrintMargin: false, + autoFocus: true, advanced: { fontSize: "14px", enableSnippets: false, //The Razor mode snippets are awful (Need a way to override these) From f07b9da2ef595cf572ef465608539f83347d4b68 Mon Sep 17 00:00:00 2001 From: Kenn Jacobsen Date: Mon, 6 May 2019 14:57:18 +0200 Subject: [PATCH 03/11] Add line wrap to RTE code editor --- .../src/views/propertyeditors/rte/codeeditor.controller.js | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/Umbraco.Web.UI.Client/src/views/propertyeditors/rte/codeeditor.controller.js b/src/Umbraco.Web.UI.Client/src/views/propertyeditors/rte/codeeditor.controller.js index b0d0ab5b20..841134fa5a 100644 --- a/src/Umbraco.Web.UI.Client/src/views/propertyeditors/rte/codeeditor.controller.js +++ b/src/Umbraco.Web.UI.Client/src/views/propertyeditors/rte/codeeditor.controller.js @@ -17,7 +17,8 @@ fontSize: "14px", enableSnippets: false, //The Razor mode snippets are awful (Need a way to override these) enableBasicAutocompletion: true, - enableLiveAutocompletion: false + enableLiveAutocompletion: false, + wrap: true }, onLoad: function(aceEditor) { vm.aceEditor = aceEditor; From 572dc119954d2beffd3d7f53dbe1422d9ece84e9 Mon Sep 17 00:00:00 2001 From: Kenn Jacobsen Date: Tue, 14 May 2019 18:43:57 +0200 Subject: [PATCH 04/11] Disable the escape key in the "confirm discard" dialog --- .../directives/components/overlays/umboverlay.directive.js | 4 ++-- .../common/directives/validation/valformmanager.directive.js | 1 + 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/src/Umbraco.Web.UI.Client/src/common/directives/components/overlays/umboverlay.directive.js b/src/Umbraco.Web.UI.Client/src/common/directives/components/overlays/umboverlay.directive.js index e65a3d238c..8c32d93c01 100644 --- a/src/Umbraco.Web.UI.Client/src/common/directives/components/overlays/umboverlay.directive.js +++ b/src/Umbraco.Web.UI.Client/src/common/directives/components/overlays/umboverlay.directive.js @@ -286,11 +286,11 @@ Opens an overlay to show a custom YSOD.
$(document).on("keydown.overlay-" + overlayNumber, function(event) { - if (event.which === 27) { + if (event.which === 27) { numberOfOverlays = overlayHelper.getNumberOfOverlays(); - if (numberOfOverlays === overlayNumber) { + if (numberOfOverlays === overlayNumber && !scope.model.disableEscKey) { scope.$apply(function () { scope.closeOverLay(); }); diff --git a/src/Umbraco.Web.UI.Client/src/common/directives/validation/valformmanager.directive.js b/src/Umbraco.Web.UI.Client/src/common/directives/validation/valformmanager.directive.js index 29920ebf00..a53fb75d93 100644 --- a/src/Umbraco.Web.UI.Client/src/common/directives/validation/valformmanager.directive.js +++ b/src/Umbraco.Web.UI.Client/src/common/directives/validation/valformmanager.directive.js @@ -165,6 +165,7 @@ function valFormManager(serverValidationManager, $rootScope, $timeout, $location "title": labels.unsavedChangesTitle, "content": labels.unsavedChangesContent, "disableBackdropClick": true, + "disableEscKey": true, "submitButtonLabel": labels.stayButton, "closeButtonLabel": labels.discardChangesButton, submit: function() { From 206f47bf52a72dcd9eeda3b877691ee9551aaf01 Mon Sep 17 00:00:00 2001 From: Bjarke Berg Date: Thu, 16 May 2019 14:24:09 +0200 Subject: [PATCH 05/11] Added missing nuget dependencies to the nuspec-file of UmbracoCms.Core --- build/NuSpecs/UmbracoCms.Core.nuspec | 2 ++ 1 file changed, 2 insertions(+) diff --git a/build/NuSpecs/UmbracoCms.Core.nuspec b/build/NuSpecs/UmbracoCms.Core.nuspec index e502271115..f3f8f47b57 100644 --- a/build/NuSpecs/UmbracoCms.Core.nuspec +++ b/build/NuSpecs/UmbracoCms.Core.nuspec @@ -39,6 +39,8 @@ + + From 5dbc95a604a52e11ebe4467a275d80a13847b4bd Mon Sep 17 00:00:00 2001 From: Stephan Date: Thu, 16 May 2019 14:47:33 +0200 Subject: [PATCH 06/11] Fix StandaloneTests --- src/Umbraco.Tests/Runtimes/StandaloneTests.cs | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/src/Umbraco.Tests/Runtimes/StandaloneTests.cs b/src/Umbraco.Tests/Runtimes/StandaloneTests.cs index 0f99b6b884..fc9e0e6166 100644 --- a/src/Umbraco.Tests/Runtimes/StandaloneTests.cs +++ b/src/Umbraco.Tests/Runtimes/StandaloneTests.cs @@ -29,6 +29,7 @@ using Umbraco.Tests.TestHelpers; using Umbraco.Tests.Testing.Objects.Accessors; using Umbraco.Web; using Umbraco.Web.Cache; +using Umbraco.Web.Macros; using Umbraco.Web.PublishedCache; using Umbraco.Web.Routing; using Umbraco.Web.Runtime; @@ -81,7 +82,7 @@ namespace Umbraco.Tests.Runtimes var composerTypes = typeLoader.GetTypes() // all of them .Where(x => !x.FullName.StartsWith("Umbraco.Tests.")) // exclude test components - .Where(x => x != typeof(WebInitialComposer)); // exclude web runtime + .Where(x => x != typeof(WebInitialComposer) && x != typeof(WebFinalComposer)); // exclude web runtime var composers = new Composers(composition, composerTypes, profilingLogger); composers.Compose(); @@ -101,6 +102,8 @@ namespace Umbraco.Tests.Runtimes composition.RegisterUnique(); composition.RegisterUnique(f => ExamineManager.Instance); composition.RegisterUnique(); + composition.RegisterUnique(); + composition.RegisterUnique(_ => new MediaUrlProviderCollection(Enumerable.Empty())); // initialize some components only/individually composition.WithCollectionBuilder() @@ -124,14 +127,15 @@ namespace Umbraco.Tests.Runtimes if (true || runtimeState.Level == RuntimeLevel.Install) { var path = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location); - var file = Path.Combine(path, "Umbraco.sdf"); + var file = databaseFactory.Configured ? Path.Combine(path, "UmbracoNPocoTests.sdf") : Path.Combine(path, "Umbraco.sdf"); if (File.Exists(file)) File.Delete(file); // create the database file // databaseBuilder.ConfigureEmbeddedDatabaseConnection() can do it too, // but then it wants to write the connection string to web.config = bad - using (var engine = new SqlCeEngine("Data Source=|DataDirectory|\\Umbraco.sdf;Flush Interval=1;")) + var connectionString = databaseFactory.Configured ? databaseFactory.ConnectionString : "Data Source=|DataDirectory|\\Umbraco.sdf;Flush Interval=1;"; + using (var engine = new SqlCeEngine(connectionString)) { engine.CreateDatabase(); } @@ -140,7 +144,8 @@ namespace Umbraco.Tests.Runtimes //databaseFactory.Configure(DatabaseBuilder.EmbeddedDatabaseConnectionString, Constants.DbProviderNames.SqlCe); //databaseBuilder.CreateDatabaseSchemaAndData(); - databaseFactory.Configure(DatabaseBuilder.EmbeddedDatabaseConnectionString, Constants.DbProviderNames.SqlCe); + if (!databaseFactory.Configured) + databaseFactory.Configure(DatabaseBuilder.EmbeddedDatabaseConnectionString, Constants.DbProviderNames.SqlCe); var scopeProvider = factory.GetInstance(); using (var scope = scopeProvider.CreateScope()) @@ -154,6 +159,8 @@ namespace Umbraco.Tests.Runtimes // done installing runtimeState.Level = RuntimeLevel.Run; + components.Initialize(); + // instantiate to register events // should be done by Initialize? // should we invoke Initialize? From ee3105009b77591603dc843257d50c7052c763c6 Mon Sep 17 00:00:00 2001 From: Bjarne Fyrstenborg Date: Sat, 18 May 2019 13:33:16 +0200 Subject: [PATCH 07/11] Add back 100% height to make drawer positioned at bottom in overlays. --- src/Umbraco.Web.UI.Client/src/less/components/overlays.less | 1 + 1 file changed, 1 insertion(+) diff --git a/src/Umbraco.Web.UI.Client/src/less/components/overlays.less b/src/Umbraco.Web.UI.Client/src/less/components/overlays.less index f5050fad85..685a6ebaf3 100644 --- a/src/Umbraco.Web.UI.Client/src/less/components/overlays.less +++ b/src/Umbraco.Web.UI.Client/src/less/components/overlays.less @@ -12,6 +12,7 @@ display: flex; flex-wrap: nowrap; flex-direction: column; + height: 100%; } .umb-overlay .umb-overlay-header { From 00768fdfa7fe7fabb978b041a02fff8bef6cacea Mon Sep 17 00:00:00 2001 From: Bjarne Fyrstenborg Date: Sat, 18 May 2019 13:33:43 +0200 Subject: [PATCH 08/11] Remove empty style --- src/Umbraco.Web.UI.Client/src/less/components/overlays.less | 6 ------ 1 file changed, 6 deletions(-) diff --git a/src/Umbraco.Web.UI.Client/src/less/components/overlays.less b/src/Umbraco.Web.UI.Client/src/less/components/overlays.less index 685a6ebaf3..c8f0195ea5 100644 --- a/src/Umbraco.Web.UI.Client/src/less/components/overlays.less +++ b/src/Umbraco.Web.UI.Client/src/less/components/overlays.less @@ -24,8 +24,6 @@ padding: 20px 30px 0; } - - .umb-overlay__section-header { width: 100%; margin-top:30px; @@ -114,10 +112,6 @@ padding: 30px 30px 0; } -.umb-overlay.umb-overlay-center .umb-overlay__form { - -} - .umb-overlay.umb-overlay-center .umb-overlay-drawer { border: none; background: transparent; From 65d8be45a1e44a16b78fa9ebab4c03864bd5a6e9 Mon Sep 17 00:00:00 2001 From: Bjarne Fyrstenborg Date: Sat, 18 May 2019 14:27:51 +0200 Subject: [PATCH 09/11] Show box shadow when hover user avatar --- .../less/components/users/umb-user-cards.less | 5 ++++- .../less/components/users/umb-user-table.less | 17 ++++++++++++++--- 2 files changed, 18 insertions(+), 4 deletions(-) diff --git a/src/Umbraco.Web.UI.Client/src/less/components/users/umb-user-cards.less b/src/Umbraco.Web.UI.Client/src/less/components/users/umb-user-cards.less index 3bc431e01f..ecc0875e92 100644 --- a/src/Umbraco.Web.UI.Client/src/less/components/users/umb-user-cards.less +++ b/src/Umbraco.Web.UI.Client/src/less/components/users/umb-user-cards.less @@ -63,12 +63,15 @@ .umb-user-card__goToUser { &:hover, &:focus { text-decoration: none; + .umb-user-card__name { text-decoration: underline; color: @ui-option-type-hover; } + .umb-avatar { - border: 1px solid @ui-option-type-hover; + //border: 1px solid @ui-option-type-hover; + box-shadow: 0px 1px 3px rgba(0, 0, 0, .5); } } } diff --git a/src/Umbraco.Web.UI.Client/src/less/components/users/umb-user-table.less b/src/Umbraco.Web.UI.Client/src/less/components/users/umb-user-table.less index 0c61a5d113..d841be4576 100644 --- a/src/Umbraco.Web.UI.Client/src/less/components/users/umb-user-table.less +++ b/src/Umbraco.Web.UI.Client/src/less/components/users/umb-user-table.less @@ -3,16 +3,27 @@ .umb-user-table-col-avatar { flex: 0 0 32px; padding: 15px 0; - + + > a { + overflow: visible; + } + .umb-checkmark { margin-left:5px; } } - + .umb-table-cell a { + + .umb-avatar { + //border: 1px solid @ui-option-type-hover; + box-shadow: 0px 1px 3px transparent; + } + &:hover, &:focus { .umb-avatar { - border: 1px solid @ui-option-type-hover; + //border: 1px solid @ui-option-type-hover; + box-shadow: 0px 1px 3px rgba(0, 0, 0, .5); } } } From 21e8a6faf4f13c65a04078bafafbe722b021ef99 Mon Sep 17 00:00:00 2001 From: Bjarne Fyrstenborg Date: Sat, 18 May 2019 14:40:35 +0200 Subject: [PATCH 10/11] Cleanup styles --- .../src/less/components/users/umb-user-cards.less | 1 - .../src/less/components/users/umb-user-table.less | 6 ------ 2 files changed, 7 deletions(-) diff --git a/src/Umbraco.Web.UI.Client/src/less/components/users/umb-user-cards.less b/src/Umbraco.Web.UI.Client/src/less/components/users/umb-user-cards.less index ecc0875e92..7c327bfb88 100644 --- a/src/Umbraco.Web.UI.Client/src/less/components/users/umb-user-cards.less +++ b/src/Umbraco.Web.UI.Client/src/less/components/users/umb-user-cards.less @@ -70,7 +70,6 @@ } .umb-avatar { - //border: 1px solid @ui-option-type-hover; box-shadow: 0px 1px 3px rgba(0, 0, 0, .5); } } diff --git a/src/Umbraco.Web.UI.Client/src/less/components/users/umb-user-table.less b/src/Umbraco.Web.UI.Client/src/less/components/users/umb-user-table.less index d841be4576..31b126e77c 100644 --- a/src/Umbraco.Web.UI.Client/src/less/components/users/umb-user-table.less +++ b/src/Umbraco.Web.UI.Client/src/less/components/users/umb-user-table.less @@ -15,14 +15,8 @@ .umb-table-cell a { - .umb-avatar { - //border: 1px solid @ui-option-type-hover; - box-shadow: 0px 1px 3px transparent; - } - &:hover, &:focus { .umb-avatar { - //border: 1px solid @ui-option-type-hover; box-shadow: 0px 1px 3px rgba(0, 0, 0, .5); } } From 7a8a1a37055549d74be7f44b10630000ae721ad0 Mon Sep 17 00:00:00 2001 From: Kenn Jacobsen Date: Tue, 21 May 2019 11:48:02 +0200 Subject: [PATCH 11/11] Add a bit of a wait to the toggle initialization --- .../common/directives/components/buttons/umbtoggle.directive.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Umbraco.Web.UI.Client/src/common/directives/components/buttons/umbtoggle.directive.js b/src/Umbraco.Web.UI.Client/src/common/directives/components/buttons/umbtoggle.directive.js index abcfbc3692..0ea5006c4a 100644 --- a/src/Umbraco.Web.UI.Client/src/common/directives/components/buttons/umbtoggle.directive.js +++ b/src/Umbraco.Web.UI.Client/src/common/directives/components/buttons/umbtoggle.directive.js @@ -79,7 +79,7 @@ // otherwise other property editors might not yet be ready to receive the event $timeout(function () { eventsService.emit("toggleValue", { value: scope.checked }); - }); + }, 100); } function setLabelText() {