mirror of
https://github.com/fergalmoran/ladybird.git
synced 2025-12-22 09:19:03 +00:00
LibWeb: Add Web::UIEvents::KeyCode and KeyModifier enums, drop Kernel
This was the last Kernel header we had. Move the definitions we need into a UIEvents header similar to MouseButton.
This commit is contained in:
committed by
Andreas Kling
parent
0c9dced888
commit
d90a9ab70c
@@ -1874,26 +1874,26 @@ void HTMLMediaElement::reject_pending_play_promises(ReadonlySpan<JS::NonnullGCPt
|
||||
WebIDL::reject_promise(realm, promise, error);
|
||||
}
|
||||
|
||||
WebIDL::ExceptionOr<void> HTMLMediaElement::handle_keydown(Badge<Web::EventHandler>, KeyCode key)
|
||||
WebIDL::ExceptionOr<void> HTMLMediaElement::handle_keydown(Badge<Web::EventHandler>, UIEvents::KeyCode key)
|
||||
{
|
||||
switch (key) {
|
||||
case KeyCode::Key_Space:
|
||||
case UIEvents::KeyCode::Key_Space:
|
||||
TRY(toggle_playback());
|
||||
break;
|
||||
|
||||
case KeyCode::Key_Home:
|
||||
case UIEvents::KeyCode::Key_Home:
|
||||
set_current_time(0);
|
||||
break;
|
||||
case KeyCode::Key_End:
|
||||
case UIEvents::KeyCode::Key_End:
|
||||
set_current_time(duration());
|
||||
break;
|
||||
|
||||
case KeyCode::Key_Left:
|
||||
case KeyCode::Key_Right: {
|
||||
case UIEvents::KeyCode::Key_Left:
|
||||
case UIEvents::KeyCode::Key_Right: {
|
||||
static constexpr double time_skipped_per_key_press = 5.0;
|
||||
auto current_time = this->current_time();
|
||||
|
||||
if (key == KeyCode::Key_Left)
|
||||
if (key == UIEvents::KeyCode::Key_Left)
|
||||
current_time = max(0.0, current_time - time_skipped_per_key_press);
|
||||
else
|
||||
current_time = min(duration(), current_time + time_skipped_per_key_press);
|
||||
@@ -1902,12 +1902,12 @@ WebIDL::ExceptionOr<void> HTMLMediaElement::handle_keydown(Badge<Web::EventHandl
|
||||
break;
|
||||
}
|
||||
|
||||
case KeyCode::Key_Up:
|
||||
case KeyCode::Key_Down: {
|
||||
case UIEvents::KeyCode::Key_Up:
|
||||
case UIEvents::KeyCode::Key_Down: {
|
||||
static constexpr double volume_change_per_key_press = 0.1;
|
||||
auto volume = this->volume();
|
||||
|
||||
if (key == KeyCode::Key_Up)
|
||||
if (key == UIEvents::KeyCode::Key_Up)
|
||||
volume = min(1.0, volume + volume_change_per_key_press);
|
||||
else
|
||||
volume = max(0.0, volume - volume_change_per_key_press);
|
||||
@@ -1916,7 +1916,7 @@ WebIDL::ExceptionOr<void> HTMLMediaElement::handle_keydown(Badge<Web::EventHandl
|
||||
break;
|
||||
}
|
||||
|
||||
case KeyCode::Key_M:
|
||||
case UIEvents::KeyCode::Key_M:
|
||||
set_muted(!muted());
|
||||
break;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user