Browse Source

Added FULL SCREEN JavaScript API for the Blazor UI

pull/5947/head
Halil İbrahim Kalkan 6 years ago
parent
commit
4e792e28d4
  1. 15
      framework/src/Volo.Abp.AspNetCore.Components.WebAssembly/Volo/Abp/AspNetCore/Components/WebAssembly/AbpUtilsService.cs
  2. 6
      framework/src/Volo.Abp.AspNetCore.Components.WebAssembly/Volo/Abp/AspNetCore/Components/WebAssembly/IAbpUtilsService.cs
  3. 59
      framework/src/Volo.Abp.AspNetCore.Components.WebAssembly/wwwroot/libs/abp/js/abp.js

15
framework/src/Volo.Abp.AspNetCore.Components.WebAssembly/Volo/Abp/AspNetCore/Components/WebAssembly/AbpUtilsService.cs

@ -32,5 +32,20 @@ namespace Volo.Abp.AspNetCore.Components.WebAssembly
{
return JsRuntime.InvokeVoidAsync("abp.utils.replaceLinkHrefById", linkId, hrefValue);
}
public ValueTask ToggleFullscreenAsync()
{
return JsRuntime.InvokeVoidAsync("abp.utils.toggleFullscreen");
}
public ValueTask RequestFullscreenAsync()
{
return JsRuntime.InvokeVoidAsync("abp.utils.requestFullscreen");
}
public ValueTask ExitFullscreenAsync()
{
return JsRuntime.InvokeVoidAsync("abp.utils.exitFullscreen");
}
}
}

6
framework/src/Volo.Abp.AspNetCore.Components.WebAssembly/Volo/Abp/AspNetCore/Components/WebAssembly/IAbpUtilsService.cs

@ -11,5 +11,11 @@ namespace Volo.Abp.AspNetCore.Components.WebAssembly
ValueTask<bool> HasClassOnTagAsync(string tagName, string className);
ValueTask ReplaceLinkHrefByIdAsync(string linkId, string hrefValue);
ValueTask ToggleFullscreenAsync();
ValueTask RequestFullscreenAsync();
ValueTask ExitFullscreenAsync();
}
}

59
framework/src/Volo.Abp.AspNetCore.Components.WebAssembly/wwwroot/libs/abp/js/abp.js

@ -123,4 +123,63 @@
link.href = hrefValue;
}
};
// FULL SCREEN /////////////////
abp.utils.toggleFullscreen = function() {
var elem = document.documentElement;
if (!document.fullscreenElement && !document.mozFullScreenElement &&
!document.webkitFullscreenElement && !document.msFullscreenElement) {
if (elem.requestFullscreen) {
elem.requestFullscreen();
} else if (elem.msRequestFullscreen) {
elem.msRequestFullscreen();
} else if (elem.mozRequestFullScreen) {
elem.mozRequestFullScreen();
} else if (elem.webkitRequestFullscreen) {
elem.webkitRequestFullscreen(Element.ALLOW_KEYBOARD_INPUT);
}
} else {
if (document.exitFullscreen) {
document.exitFullscreen();
} else if (document.msExitFullscreen) {
document.msExitFullscreen();
} else if (document.mozCancelFullScreen) {
document.mozCancelFullScreen();
} else if (document.webkitExitFullscreen) {
document.webkitExitFullscreen();
}
}
}
abp.utils.requestFullscreen = function() {
var elem = document.documentElement;
if (!document.fullscreenElement && !document.mozFullScreenElement &&
!document.webkitFullscreenElement && !document.msFullscreenElement) {
if (elem.requestFullscreen) {
elem.requestFullscreen();
} else if (elem.msRequestFullscreen) {
elem.msRequestFullscreen();
} else if (elem.mozRequestFullScreen) {
elem.mozRequestFullScreen();
} else if (elem.webkitRequestFullscreen) {
elem.webkitRequestFullscreen(Element.ALLOW_KEYBOARD_INPUT);
}
}
}
abp.utils.exitFullscreen = function() {
if (!(!document.fullscreenElement && !document.mozFullScreenElement &&
!document.webkitFullscreenElement && !document.msFullscreenElement)) {
if (document.exitFullscreen) {
document.exitFullscreen();
} else if (document.msExitFullscreen) {
document.msExitFullscreen();
} else if (document.mozCancelFullScreen) {
document.mozCancelFullScreen();
} else if (document.webkitExitFullscreen) {
document.webkitExitFullscreen();
}
}
}
})();

Loading…
Cancel
Save