Title: [282975] trunk/Source/WebCore
Revision
282975
Author
[email protected]
Date
2021-09-23 11:29:43 -0700 (Thu, 23 Sep 2021)

Log Message

[Media Controls] Allow for a brightness control
https://bugs.webkit.org/show_bug.cgi?id=230697
<rdar://problem/79956277>

Reviewed by Dean Jackson.

Add a new brightness button to control a new MediaControlsHost "brightness" property
which is currently only a stub.

* DerivedSources-input.xcfilelist:
* DerivedSources.make:
* Modules/mediacontrols/MediaControlsHost.h:
* Modules/mediacontrols/MediaControlsHost.idl:
* Modules/modern-media-controls/controls/brightness-button.js: Added.
(BrightnessButton):
* Modules/modern-media-controls/controls/icon-service.js:
* Modules/modern-media-controls/controls/media-controls.js:
* Modules/modern-media-controls/images/iOS/Brightness.svg: Added.
* Modules/modern-media-controls/images/macOS/Brightness.svg: Added.
* Modules/modern-media-controls/js-files:
* Modules/modern-media-controls/media/brightness-support.js: Added.
(BrightnessSupport.prototype.get control):
(BrightnessSupport.prototype.controlValueWillStartChanging):
(BrightnessSupport.prototype.controlValueDidChange):
(BrightnessSupport.prototype.controlValueDidStopChanging):
(BrightnessSupport):
* Modules/modern-media-controls/media/media-controller.js:
(MediaController.prototype._supportingObjectClasses):

Modified Paths

Added Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (282974 => 282975)


--- trunk/Source/WebCore/ChangeLog	2021-09-23 18:22:02 UTC (rev 282974)
+++ trunk/Source/WebCore/ChangeLog	2021-09-23 18:29:43 UTC (rev 282975)
@@ -1,3 +1,34 @@
+2021-09-23  Antoine Quint  <[email protected]>
+
+        [Media Controls] Allow for a brightness control
+        https://bugs.webkit.org/show_bug.cgi?id=230697
+        <rdar://problem/79956277>
+
+        Reviewed by Dean Jackson.
+
+        Add a new brightness button to control a new MediaControlsHost "brightness" property
+        which is currently only a stub.
+
+        * DerivedSources-input.xcfilelist:
+        * DerivedSources.make:
+        * Modules/mediacontrols/MediaControlsHost.h:
+        * Modules/mediacontrols/MediaControlsHost.idl:
+        * Modules/modern-media-controls/controls/brightness-button.js: Added.
+        (BrightnessButton):
+        * Modules/modern-media-controls/controls/icon-service.js:
+        * Modules/modern-media-controls/controls/media-controls.js:
+        * Modules/modern-media-controls/images/iOS/Brightness.svg: Added.
+        * Modules/modern-media-controls/images/macOS/Brightness.svg: Added.
+        * Modules/modern-media-controls/js-files:
+        * Modules/modern-media-controls/media/brightness-support.js: Added.
+        (BrightnessSupport.prototype.get control):
+        (BrightnessSupport.prototype.controlValueWillStartChanging):
+        (BrightnessSupport.prototype.controlValueDidChange):
+        (BrightnessSupport.prototype.controlValueDidStopChanging):
+        (BrightnessSupport):
+        * Modules/modern-media-controls/media/media-controller.js:
+        (MediaController.prototype._supportingObjectClasses):
+
 2021-09-23  Simon Fraser  <[email protected]>
 
         Unify more media-related WebCore source files

Modified: trunk/Source/WebCore/DerivedSources-input.xcfilelist (282974 => 282975)


--- trunk/Source/WebCore/DerivedSources-input.xcfilelist	2021-09-23 18:22:02 UTC (rev 282974)
+++ trunk/Source/WebCore/DerivedSources-input.xcfilelist	2021-09-23 18:29:43 UTC (rev 282975)
@@ -295,6 +295,8 @@
 $(PROJECT_DIR)/Modules/modern-media-controls/controls/background-click-delegate-notifier.js
 $(PROJECT_DIR)/Modules/modern-media-controls/controls/background-tint.css
 $(PROJECT_DIR)/Modules/modern-media-controls/controls/background-tint.js
+$(PROJECT_DIR)/Modules/modern-media-controls/controls/brightness-button.css
+$(PROJECT_DIR)/Modules/modern-media-controls/controls/brightness-button.js
 $(PROJECT_DIR)/Modules/modern-media-controls/controls/button.css
 $(PROJECT_DIR)/Modules/modern-media-controls/controls/button.js
 $(PROJECT_DIR)/Modules/modern-media-controls/controls/buttons-container.css
@@ -355,6 +357,7 @@
 $(PROJECT_DIR)/Modules/modern-media-controls/main.js
 $(PROJECT_DIR)/Modules/modern-media-controls/media/airplay-support.js
 $(PROJECT_DIR)/Modules/modern-media-controls/media/audio-support.js
+$(PROJECT_DIR)/Modules/modern-media-controls/media/brightness-support.js
 $(PROJECT_DIR)/Modules/modern-media-controls/media/controls-visibility-support.js
 $(PROJECT_DIR)/Modules/modern-media-controls/media/fullscreen-support.js
 $(PROJECT_DIR)/Modules/modern-media-controls/media/media-controller-support.js

Modified: trunk/Source/WebCore/DerivedSources.make (282974 => 282975)


--- trunk/Source/WebCore/DerivedSources.make	2021-09-23 18:22:02 UTC (rev 282974)
+++ trunk/Source/WebCore/DerivedSources.make	2021-09-23 18:29:43 UTC (rev 282975)
@@ -1627,6 +1627,7 @@
     $(WebCore)/Modules/modern-media-controls/controls/overflow-button.js \
     $(WebCore)/Modules/modern-media-controls/controls/range-button.js \
     $(WebCore)/Modules/modern-media-controls/controls/volume-button.js \
+    $(WebCore)/Modules/modern-media-controls/controls/brightness-button.js \
     $(WebCore)/Modules/modern-media-controls/controls/buttons-container.js \
     $(WebCore)/Modules/modern-media-controls/controls/status-label.js \
     $(WebCore)/Modules/modern-media-controls/controls/controls-bar.js \
@@ -1649,6 +1650,7 @@
     $(WebCore)/Modules/modern-media-controls/media/media-controller-support.js \
     $(WebCore)/Modules/modern-media-controls/media/airplay-support.js \
     $(WebCore)/Modules/modern-media-controls/media/audio-support.js \
+    $(WebCore)/Modules/modern-media-controls/media/brightness-support.js \
     $(WebCore)/Modules/modern-media-controls/media/controls-visibility-support.js \
     $(WebCore)/Modules/modern-media-controls/media/fullscreen-support.js \
     $(WebCore)/Modules/modern-media-controls/media/mute-support.js \

Modified: trunk/Source/WebCore/Modules/mediacontrols/MediaControlsHost.h (282974 => 282975)


--- trunk/Source/WebCore/Modules/mediacontrols/MediaControlsHost.h	2021-09-23 18:22:02 UTC (rev 282974)
+++ trunk/Source/WebCore/Modules/mediacontrols/MediaControlsHost.h	2021-09-23 18:29:43 UTC (rev 282975)
@@ -56,6 +56,9 @@
 
     String layoutTraitsClassName() const;
 
+    double brightness() const { return 1; }
+    void setBrightness(double) { }
+
     Vector<RefPtr<TextTrack>> sortedTrackListForMenu(TextTrackList&);
     Vector<RefPtr<AudioTrack>> sortedTrackListForMenu(AudioTrackList&);
 

Modified: trunk/Source/WebCore/Modules/mediacontrols/MediaControlsHost.idl (282974 => 282975)


--- trunk/Source/WebCore/Modules/mediacontrols/MediaControlsHost.idl	2021-09-23 18:22:02 UTC (rev 282974)
+++ trunk/Source/WebCore/Modules/mediacontrols/MediaControlsHost.idl	2021-09-23 18:29:43 UTC (rev 282975)
@@ -35,6 +35,7 @@
     LegacyNoInterfaceObject,
 ] interface MediaControlsHost {
     readonly attribute DOMString layoutTraitsClassName;
+    attribute double brightness;
 
     sequence<TextTrack> sortedTrackListForMenu(TextTrackList trackList);
     sequence<AudioTrack> sortedTrackListForMenu(AudioTrackList trackList);
@@ -55,7 +56,7 @@
     readonly attribute DeviceType externalDeviceType;
 
     attribute boolean controlsDependOnPageScaleFactor;
-    
+
     undefined updateTextTrackContainer();
     undefined enteredFullscreen();
     undefined exitedFullscreen();

Added: trunk/Source/WebCore/Modules/modern-media-controls/controls/brightness-button.js (0 => 282975)


--- trunk/Source/WebCore/Modules/modern-media-controls/controls/brightness-button.js	                        (rev 0)
+++ trunk/Source/WebCore/Modules/modern-media-controls/controls/brightness-button.js	2021-09-23 18:29:43 UTC (rev 282975)
@@ -0,0 +1,38 @@
+/*
+ * Copyright (C) 2021 Apple Inc. All Rights Reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY APPLE INC. ``AS IS'' AND ANY
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL APPLE INC. OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+ * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+class BrightnessButton extends RangeButton
+{
+
+    constructor(layoutDelegate)
+    {
+        super({
+            cssClassName: "brightness",
+            iconName: Icons.Brightness,
+            layoutDelegate
+        });
+    }
+
+}

Modified: trunk/Source/WebCore/Modules/modern-media-controls/controls/icon-service.js (282974 => 282975)


--- trunk/Source/WebCore/Modules/modern-media-controls/controls/icon-service.js	2021-09-23 18:22:02 UTC (rev 282974)
+++ trunk/Source/WebCore/Modules/modern-media-controls/controls/icon-service.js	2021-09-23 18:29:43 UTC (rev 282975)
@@ -26,6 +26,7 @@
 const Icons = {
     Airplay         : { name: "Airplay", type: "svg", label: UIString("AirPlay") },
     AirplayPlacard  : { name: "airplay-placard", type: "png", label: UIString("AirPlay") },
+    Brightness      : { name: "Brightness", type: "svg", label: UIString("Adjust Brightness") },
     EnterFullscreen : { name: "EnterFullscreen", type: "svg", label: UIString("Enter Full Screen") },
     EnterPiP        : { name: "PipIn", type: "svg", label: UIString("Enter Picture in Picture") },
     ExitFullscreen  : { name: "ExitFullscreen", type: "svg", label: UIString("Exit Full Screen") },

Modified: trunk/Source/WebCore/Modules/modern-media-controls/controls/media-controls.js (282974 => 282975)


--- trunk/Source/WebCore/Modules/modern-media-controls/controls/media-controls.js	2021-09-23 18:22:02 UTC (rev 282974)
+++ trunk/Source/WebCore/Modules/modern-media-controls/controls/media-controls.js	2021-09-23 18:29:43 UTC (rev 282975)
@@ -45,6 +45,7 @@
         this.tracksButton = new TracksButton(this);
         this.overflowButton = new OverflowButton(this);
         this.volumeButton = new VolumeButton(this);
+        this.brightnessButton = new BrightnessButton(this);
 
         this.statusLabel = new StatusLabel(this);
         this.timeControl = new TimeControl(this);

Added: trunk/Source/WebCore/Modules/modern-media-controls/images/iOS/Brightness.svg (0 => 282975)


--- trunk/Source/WebCore/Modules/modern-media-controls/images/iOS/Brightness.svg	                        (rev 0)
+++ trunk/Source/WebCore/Modules/modern-media-controls/images/iOS/Brightness.svg	2021-09-23 18:29:43 UTC (rev 282975)
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="15" height="15" viewBox="0 0 110 110">
+  <g id="Regular-M" transform="matrix(1 0 0 1 -7 90)">
+   <path d="M61.5723-60.2051Q56.4453-60.2051 51.9531-58.252Q47.4609-56.2988 44.0186-52.8564Q40.5762-49.4141 38.623-44.8975Q36.6699-40.3809 36.6699-35.2539Q36.6699-30.127 38.623-25.6348Q40.5762-21.1426 44.0186-17.7002Q47.4609-14.2578 51.9531-12.3047Q56.4453-10.3516 61.5723-10.3516Q66.6504-10.3516 71.167-12.3047Q75.6836-14.2578 79.1016-17.7002Q82.5195-21.1426 84.4727-25.6348Q86.4258-30.127 86.4258-35.2539Q86.4258-40.3809 84.4727-44.8975Q82.5195-49.4141 79.1016-52.8564Q75.6836-56.2988 71.167-58.252Q66.6504-60.2051 61.5723-60.2051ZM65.8691-83.9844Q65.8691-85.7422 64.5996-87.0117Q63.3301-88.2812 61.5723-88.2812Q59.8633-88.2812 58.5938-87.0117Q57.3242-85.7422 57.3242-83.9844L57.3242-73.7305Q57.3242-72.0215 58.5938-70.752Q59.8633-69.4824 61.5723-69.4824Q63.3301-69.4824 64.5996-70.752Q65.8691-72.0215 65.8691-73.7305ZM85.6934-65.3809Q84.4727-64.1602 84.4727-62.3779Q84.4727-60.5957 85.6934-59.375Q86.9141-58.1543 88.6963-58.1299Q90.4785-58.1055 91.748-59.375L99.0234-66.6504Q100.244-67.
 8711 100.244-69.6777Q100.244-71.4844 99.0234-72.7051Q97.8027-73.9258 96.0449-73.9258Q94.2871-73.9258 93.0664-72.7051ZM110.156-31.0059Q111.914-31.0059 113.184-32.2754Q114.453-33.5449 114.453-35.2539Q114.453-37.0117 113.184-38.2568Q111.914-39.502 110.156-39.502L99.9512-39.502Q98.2422-39.502 96.9727-38.2568Q95.7031-37.0117 95.7031-35.2539Q95.7031-33.5449 96.9727-32.2754Q98.2422-31.0059 99.9512-31.0059ZM91.6992-11.084Q90.4785-12.3047 88.6963-12.3047Q86.9141-12.3047 85.6934-11.084Q84.4727-9.86328 84.4727-8.10547Q84.4727-6.34766 85.6934-5.07812L93.0664 2.24609Q94.2871 3.4668 96.0449 3.44238Q97.8027 3.41797 99.0234 2.19727Q100.244 0.976562 100.244-0.805664Q100.244-2.58789 99.0234-3.80859ZM65.8691 3.22266Q65.8691 1.46484 64.5996 0.195312Q63.3301-1.07422 61.5723-1.07422Q59.8633-1.07422 58.5938 0.195312Q57.3242 1.46484 57.3242 3.22266L57.3242 13.4766Q57.3242 15.1855 58.5938 16.4551Q59.8633 17.7246 61.5723 17.7246Q63.3301 17.7246 64.5996 16.4551Q65.8691 15.1855 65.8691 13.4766ZM24.1211-3.85742
 Q22.9004-2.63672 22.9004-0.854492Q22.9004 0.927734 24.0723 2.14844Q25.293 3.36914 27.0996 3.39355Q28.9062 3.41797 30.127 2.19727L37.4023-5.07812Q38.623-6.29883 38.6475-8.08105Q38.6719-9.86328 37.4512-11.084Q36.2305-12.3047 34.4238-12.3047Q32.6172-12.3047 31.3965-11.084ZM12.9883-39.502Q11.2793-39.502 10.0098-38.2568Q8.74023-37.0117 8.74023-35.2539Q8.74023-33.5449 10.0098-32.2754Q11.2793-31.0059 12.9883-31.0059L23.1934-31.0059Q24.9512-31.0059 26.2207-32.2754Q27.4902-33.5449 27.4902-35.2539Q27.4902-37.0117 26.2207-38.2568Q24.9512-39.502 23.1934-39.502ZM31.3965-59.375Q32.6172-58.1543 34.3994-58.1543Q36.1816-58.1543 37.4023-59.375Q38.623-60.5469 38.6475-62.3779Q38.6719-64.209 37.4512-65.3809L30.1758-72.7051Q29.0039-73.877 27.2217-73.9014Q25.4395-73.9258 24.1699-72.7051Q22.9492-71.4844 22.9492-69.7021Q22.9492-67.9199 24.1211-66.6992Z"/>
+  </g>
+</svg>

Added: trunk/Source/WebCore/Modules/modern-media-controls/images/macOS/Brightness.svg (0 => 282975)


--- trunk/Source/WebCore/Modules/modern-media-controls/images/macOS/Brightness.svg	                        (rev 0)
+++ trunk/Source/WebCore/Modules/modern-media-controls/images/macOS/Brightness.svg	2021-09-23 18:29:43 UTC (rev 282975)
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="15" height="15" viewBox="0 0 110 110">
+  <g id="Regular-M" transform="matrix(1 0 0 1 -7 90)">
+   <path d="M61.5723-60.2051Q56.4453-60.2051 51.9531-58.252Q47.4609-56.2988 44.0186-52.8564Q40.5762-49.4141 38.623-44.8975Q36.6699-40.3809 36.6699-35.2539Q36.6699-30.127 38.623-25.6348Q40.5762-21.1426 44.0186-17.7002Q47.4609-14.2578 51.9531-12.3047Q56.4453-10.3516 61.5723-10.3516Q66.6504-10.3516 71.167-12.3047Q75.6836-14.2578 79.1016-17.7002Q82.5195-21.1426 84.4727-25.6348Q86.4258-30.127 86.4258-35.2539Q86.4258-40.3809 84.4727-44.8975Q82.5195-49.4141 79.1016-52.8564Q75.6836-56.2988 71.167-58.252Q66.6504-60.2051 61.5723-60.2051ZM65.8691-83.9844Q65.8691-85.7422 64.5996-87.0117Q63.3301-88.2812 61.5723-88.2812Q59.8633-88.2812 58.5938-87.0117Q57.3242-85.7422 57.3242-83.9844L57.3242-73.7305Q57.3242-72.0215 58.5938-70.752Q59.8633-69.4824 61.5723-69.4824Q63.3301-69.4824 64.5996-70.752Q65.8691-72.0215 65.8691-73.7305ZM85.6934-65.3809Q84.4727-64.1602 84.4727-62.3779Q84.4727-60.5957 85.6934-59.375Q86.9141-58.1543 88.6963-58.1299Q90.4785-58.1055 91.748-59.375L99.0234-66.6504Q100.244-67.
 8711 100.244-69.6777Q100.244-71.4844 99.0234-72.7051Q97.8027-73.9258 96.0449-73.9258Q94.2871-73.9258 93.0664-72.7051ZM110.156-31.0059Q111.914-31.0059 113.184-32.2754Q114.453-33.5449 114.453-35.2539Q114.453-37.0117 113.184-38.2568Q111.914-39.502 110.156-39.502L99.9512-39.502Q98.2422-39.502 96.9727-38.2568Q95.7031-37.0117 95.7031-35.2539Q95.7031-33.5449 96.9727-32.2754Q98.2422-31.0059 99.9512-31.0059ZM91.6992-11.084Q90.4785-12.3047 88.6963-12.3047Q86.9141-12.3047 85.6934-11.084Q84.4727-9.86328 84.4727-8.10547Q84.4727-6.34766 85.6934-5.07812L93.0664 2.24609Q94.2871 3.4668 96.0449 3.44238Q97.8027 3.41797 99.0234 2.19727Q100.244 0.976562 100.244-0.805664Q100.244-2.58789 99.0234-3.80859ZM65.8691 3.22266Q65.8691 1.46484 64.5996 0.195312Q63.3301-1.07422 61.5723-1.07422Q59.8633-1.07422 58.5938 0.195312Q57.3242 1.46484 57.3242 3.22266L57.3242 13.4766Q57.3242 15.1855 58.5938 16.4551Q59.8633 17.7246 61.5723 17.7246Q63.3301 17.7246 64.5996 16.4551Q65.8691 15.1855 65.8691 13.4766ZM24.1211-3.85742
 Q22.9004-2.63672 22.9004-0.854492Q22.9004 0.927734 24.0723 2.14844Q25.293 3.36914 27.0996 3.39355Q28.9062 3.41797 30.127 2.19727L37.4023-5.07812Q38.623-6.29883 38.6475-8.08105Q38.6719-9.86328 37.4512-11.084Q36.2305-12.3047 34.4238-12.3047Q32.6172-12.3047 31.3965-11.084ZM12.9883-39.502Q11.2793-39.502 10.0098-38.2568Q8.74023-37.0117 8.74023-35.2539Q8.74023-33.5449 10.0098-32.2754Q11.2793-31.0059 12.9883-31.0059L23.1934-31.0059Q24.9512-31.0059 26.2207-32.2754Q27.4902-33.5449 27.4902-35.2539Q27.4902-37.0117 26.2207-38.2568Q24.9512-39.502 23.1934-39.502ZM31.3965-59.375Q32.6172-58.1543 34.3994-58.1543Q36.1816-58.1543 37.4023-59.375Q38.623-60.5469 38.6475-62.3779Q38.6719-64.209 37.4512-65.3809L30.1758-72.7051Q29.0039-73.877 27.2217-73.9014Q25.4395-73.9258 24.1699-72.7051Q22.9492-71.4844 22.9492-69.7021Q22.9492-67.9199 24.1211-66.6992Z"/>
+  </g>
+</svg>

Modified: trunk/Source/WebCore/Modules/modern-media-controls/js-files (282974 => 282975)


--- trunk/Source/WebCore/Modules/modern-media-controls/js-files	2021-09-23 18:22:02 UTC (rev 282974)
+++ trunk/Source/WebCore/Modules/modern-media-controls/js-files	2021-09-23 18:29:43 UTC (rev 282975)
@@ -26,6 +26,7 @@
 controls/overflow-button.js
 controls/range-button.js
 controls/volume-button.js
+controls/brightness-button.js
 controls/buttons-container.js
 controls/status-label.js
 controls/controls-bar.js
@@ -48,6 +49,7 @@
 media/media-controller-support.js
 media/airplay-support.js
 media/audio-support.js
+media/brightness-support.js
 media/controls-visibility-support.js
 media/fullscreen-support.js
 media/mute-and-volume-support.js

Added: trunk/Source/WebCore/Modules/modern-media-controls/media/brightness-support.js (0 => 282975)


--- trunk/Source/WebCore/Modules/modern-media-controls/media/brightness-support.js	                        (rev 0)
+++ trunk/Source/WebCore/Modules/modern-media-controls/media/brightness-support.js	2021-09-23 18:29:43 UTC (rev 282975)
@@ -0,0 +1,52 @@
+/*
+ * Copyright (C) 2021 Apple Inc. All Rights Reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY APPLE INC. ``AS IS'' AND ANY
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL APPLE INC. OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+ * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+class BrightnessSupport extends MediaControllerSupport
+{
+
+    // Protected
+
+    get control()
+    {
+        return this.mediaController.controls.brightnessButton;
+    }
+
+    controlValueWillStartChanging(control)
+    {
+        this.mediaController.controls.autoHideController.hasSecondaryUIAttached = true;
+    }
+
+    controlValueDidChange(control)
+    {
+        if (this.mediaController.host)
+            this.mediaController.host.brightness = control.value;
+    }
+
+    controlValueDidStopChanging(control)
+    {
+        this.mediaController.controls.autoHideController.hasSecondaryUIAttached = false;
+    }
+
+}

Modified: trunk/Source/WebCore/Modules/modern-media-controls/media/media-controller.js (282974 => 282975)


--- trunk/Source/WebCore/Modules/modern-media-controls/media/media-controller.js	2021-09-23 18:22:02 UTC (rev 282974)
+++ trunk/Source/WebCore/Modules/modern-media-controls/media/media-controller.js	2021-09-23 18:29:43 UTC (rev 282975)
@@ -213,7 +213,7 @@
         if (overridenSupportingObjectClasses)
             return overridenSupportingObjectClasses;
 
-        let classes = [AirplaySupport, AudioSupport, ControlsVisibilitySupport, FullscreenSupport, OverflowSupport, PiPSupport, PlacardSupport, PlaybackSupport, ScrubbingSupport, SeekBackwardSupport, SeekForwardSupport, SkipBackSupport, SkipForwardSupport, StartSupport, StatusSupport, TimeControlSupport, TracksSupport]
+        let classes = [AirplaySupport, AudioSupport, BrightnessSupport, ControlsVisibilitySupport, FullscreenSupport, OverflowSupport, PiPSupport, PlacardSupport, PlaybackSupport, ScrubbingSupport, SeekBackwardSupport, SeekForwardSupport, SkipBackSupport, SkipForwardSupport, StartSupport, StatusSupport, TimeControlSupport, TracksSupport]
 
         if (this.controls.usesSingleMuteAndVolumeButton)
             classes.push(MuteAndVolumeSupport);
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to