bitmovin-player-ui
Advanced tools
Comparing version 3.49.0 to 3.50.0
@@ -7,2 +7,9 @@ # Change Log | ||
## [3.50.0] | ||
### Fixed | ||
- Settings panel does not close on single tap on mobile devices | ||
- Restoring volume on unmute not working when volume was changed through the player API | ||
- Gulp `watch` task not working | ||
## [3.49.0] | ||
@@ -9,0 +16,0 @@ |
@@ -24,2 +24,3 @@ "use strict"; | ||
var browserutils_1 = require("../browserutils"); | ||
var settingspanel_1 = require("./settingspanel"); | ||
/** | ||
@@ -46,2 +47,3 @@ * A container for main player control components, e.g. play toggle button, seek bar, volume control, fullscreen toggle | ||
var hoverStackCount = 0; | ||
var isSettingsPanelShown = false; | ||
// only enabling this for non-mobile platforms without touch input. enabling this | ||
@@ -68,2 +70,14 @@ // for touch devices causes the UI to not disappear after hideDelay seconds. | ||
} | ||
if (browserutils_1.BrowserUtils.isMobile) { | ||
uimanager.onComponentShow.subscribe(function (component) { | ||
if (component instanceof settingspanel_1.SettingsPanel) { | ||
isSettingsPanelShown = true; | ||
} | ||
}); | ||
uimanager.onComponentHide.subscribe(function (component) { | ||
if (component instanceof settingspanel_1.SettingsPanel) { | ||
isSettingsPanelShown = false; | ||
} | ||
}); | ||
} | ||
uimanager.onControlsShow.subscribe(function () { | ||
@@ -73,4 +87,4 @@ _this.show(); | ||
uimanager.onPreviewControlsHide.subscribe(function (sender, args) { | ||
// Cancel the hide event if hovered child components block hiding | ||
args.cancel = (hoverStackCount > 0); | ||
// Cancel the hide event if hovered child components block hiding or if the settings panel is active on mobile. | ||
args.cancel = args.cancel || (hoverStackCount > 0 || isSettingsPanelShown); | ||
}); | ||
@@ -77,0 +91,0 @@ uimanager.onControlsHide.subscribe(function () { |
@@ -5,3 +5,3 @@ "use strict"; | ||
exports.ReplayButton = exports.SettingsPanelItem = exports.SubtitleSettingsPanelPage = exports.SettingsPanelPageOpenButton = exports.SettingsPanelPageBackButton = exports.SettingsPanelPage = exports.AudioTrackListBox = exports.SubtitleListBox = exports.ListBox = exports.SubtitleSettingsResetButton = exports.WindowOpacitySelectBox = exports.WindowColorSelectBox = exports.SubtitleSettingsLabel = exports.SubtitleSettingSelectBox = exports.FontSizeSelectBox = exports.FontOpacitySelectBox = exports.FontFamilySelectBox = exports.FontColorSelectBox = exports.CharacterEdgeSelectBox = exports.BackgroundOpacitySelectBox = exports.BackgroundColorSelectBox = exports.Spacer = exports.PictureInPictureToggleButton = exports.VolumeSlider = exports.AirPlayToggleButton = exports.MetadataLabelContent = exports.MetadataLabel = exports.CloseButton = exports.PlaybackToggleOverlay = exports.CastUIContainer = exports.BufferingOverlay = exports.HugeReplayButton = exports.PlaybackSpeedSelectBox = exports.AdClickOverlay = exports.AdMessageLabel = exports.AdSkipButton = exports.ClickOverlay = void 0; | ||
exports.version = '3.49.0'; | ||
exports.version = '3.50.0'; | ||
// Management | ||
@@ -8,0 +8,0 @@ var uimanager_1 = require("./uimanager"); |
@@ -72,2 +72,3 @@ "use strict"; | ||
var uiVolume = playerMuted ? 0 : playerVolume; | ||
this.storeVolume(); | ||
this.events.onChanged.dispatch(this, { volume: uiVolume, muted: uiMuted }); | ||
@@ -74,0 +75,0 @@ }; |
@@ -212,3 +212,3 @@ var gulp = require('gulp'); | ||
// Watches files for changes and runs their build tasks | ||
gulp.task('watch', function() { | ||
gulp.task('watch', gulp.series('build', function() { | ||
// Watch for changed html files | ||
@@ -220,15 +220,8 @@ gulp.watch(paths.source.html).on('change', gulp.series('html')); | ||
// Watch JSON files | ||
// Watch JSON files | ||
gulp.watch(paths.source.json).on('change', gulp.series('browserify')); | ||
// Watch files for changes through Browserify with Watchify | ||
catchBrowserifyErrors = true; | ||
return browserifyInstance | ||
.plugin(watchify) | ||
// When a file has changed, rerun the browserify task to create an updated bundle | ||
.on('update', function() { | ||
gulp.start('browserify'); | ||
}) | ||
.bundle(); | ||
}); | ||
// Watch TypeScript files | ||
gulp.watch(paths.source.ts).on('change', gulp.series('browserify')); | ||
})); | ||
@@ -235,0 +228,0 @@ // Serves the project in the browser and updates it automatically on changes |
{ | ||
"name": "bitmovin-player-ui", | ||
"version": "3.49.0", | ||
"version": "3.50.0", | ||
"description": "Bitmovin Player UI Framework", | ||
@@ -5,0 +5,0 @@ "main": "./dist/js/framework/main.js", |
@@ -111,2 +111,3 @@ import { PlayerAPI, PlayerEvent } from 'bitmovin-player'; | ||
seek: jest.fn(), | ||
isMuted: jest.fn(), | ||
@@ -113,0 +114,0 @@ // Event faker |
@@ -8,2 +8,4 @@ import {ContainerConfig, Container} from './container'; | ||
import { BrowserUtils } from '../browserutils'; | ||
import {Component, ComponentConfig} from './component'; | ||
import {SettingsPanel} from './settingspanel'; | ||
@@ -39,2 +41,3 @@ /** | ||
let hoverStackCount = 0; | ||
let isSettingsPanelShown = false; | ||
@@ -63,2 +66,16 @@ // only enabling this for non-mobile platforms without touch input. enabling this | ||
if (BrowserUtils.isMobile) { | ||
uimanager.onComponentShow.subscribe((component: Component<ComponentConfig>) => { | ||
if (component instanceof SettingsPanel) { | ||
isSettingsPanelShown = true; | ||
} | ||
}); | ||
uimanager.onComponentHide.subscribe((component: Component<ComponentConfig>) => { | ||
if (component instanceof SettingsPanel) { | ||
isSettingsPanelShown = false; | ||
} | ||
}); | ||
} | ||
uimanager.onControlsShow.subscribe(() => { | ||
@@ -69,4 +86,4 @@ this.show(); | ||
uimanager.onPreviewControlsHide.subscribe((sender, args) => { | ||
// Cancel the hide event if hovered child components block hiding | ||
args.cancel = (hoverStackCount > 0); | ||
// Cancel the hide event if hovered child components block hiding or if the settings panel is active on mobile. | ||
args.cancel = args.cancel || (hoverStackCount > 0 || isSettingsPanelShown); | ||
}); | ||
@@ -73,0 +90,0 @@ |
@@ -91,2 +91,4 @@ import { Event, EventDispatcher } from './eventdispatcher'; | ||
this.storeVolume(); | ||
this.events.onChanged.dispatch(this, { volume: uiVolume, muted: uiMuted }); | ||
@@ -93,0 +95,0 @@ } |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is not supported yet
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
5830727
499
57148