mirror of
https://github.com/Rafostar/clapper.git
synced 2025-08-29 23:32:04 +02:00
Add more WebSocket API actions
This commit is contained in:
@@ -388,11 +388,24 @@ class ClapperPlayer extends GstClapper.Clapper
|
|||||||
case 'pause':
|
case 'pause':
|
||||||
this[action]();
|
this[action]();
|
||||||
break;
|
break;
|
||||||
|
case 'seek':
|
||||||
case 'set_playlist':
|
case 'set_playlist':
|
||||||
case 'append_playlist':
|
case 'append_playlist':
|
||||||
case 'set_subtitles':
|
case 'set_subtitles':
|
||||||
this[action](value);
|
this[action](value);
|
||||||
break;
|
break;
|
||||||
|
case 'change_playlist_item':
|
||||||
|
this.playlistWidget.changeActiveRow(value);
|
||||||
|
break;
|
||||||
|
case 'toggle_fullscreen':
|
||||||
|
case 'volume_up':
|
||||||
|
case 'volume_down':
|
||||||
|
case 'next_track':
|
||||||
|
case 'prev_track':
|
||||||
|
case 'next_chapter':
|
||||||
|
case 'prev_chapter':
|
||||||
|
this.widget.activate_action(`app.${action}`, null);
|
||||||
|
break;
|
||||||
case 'toggle_maximized':
|
case 'toggle_maximized':
|
||||||
action = 'toggle-maximized';
|
action = 'toggle-maximized';
|
||||||
case 'minimize':
|
case 'minimize':
|
||||||
@@ -400,16 +413,7 @@ class ClapperPlayer extends GstClapper.Clapper
|
|||||||
this.widget.activate_action(`window.${action}`, null);
|
this.widget.activate_action(`window.${action}`, null);
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
const clapperWidget = this.widget.get_ancestor(Gtk.Grid);
|
warn(`unhandled WebSocket action: ${action}`);
|
||||||
|
|
||||||
switch(action) {
|
|
||||||
case 'toggle_fullscreen':
|
|
||||||
clapperWidget.toggleFullscreen();
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
debug(`unhandled WebSocket action: ${action}`);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -91,6 +91,17 @@ class ClapperPlaylistWidget extends Gtk.ListBox
|
|||||||
button.icon_name = 'list-remove-symbolic';
|
button.icon_name = 'list-remove-symbolic';
|
||||||
}
|
}
|
||||||
|
|
||||||
|
changeActiveRow(rowId)
|
||||||
|
{
|
||||||
|
const row = this.get_row_at_index(rowId);
|
||||||
|
if(!row)
|
||||||
|
return false;
|
||||||
|
|
||||||
|
row.activate();
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
changeRepeatMode(mode)
|
changeRepeatMode(mode)
|
||||||
{
|
{
|
||||||
const lastMode = Object.keys(RepeatMode).length - 1;
|
const lastMode = Object.keys(RepeatMode).length - 1;
|
||||||
@@ -117,18 +128,7 @@ class ClapperPlaylistWidget extends Gtk.ListBox
|
|||||||
? this.activeRowId - 1
|
? this.activeRowId - 1
|
||||||
: this.activeRowId + 1;
|
: this.activeRowId + 1;
|
||||||
|
|
||||||
return this._changeActiveRow(rowId);
|
return this.changeActiveRow(rowId);
|
||||||
}
|
|
||||||
|
|
||||||
_changeActiveRow(rowId)
|
|
||||||
{
|
|
||||||
const row = this.get_row_at_index(rowId);
|
|
||||||
if(!row)
|
|
||||||
return false;
|
|
||||||
|
|
||||||
row.activate();
|
|
||||||
|
|
||||||
return true;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
_onRowActivated(listBox, row)
|
_onRowActivated(listBox, row)
|
||||||
@@ -165,7 +165,7 @@ class ClapperPlaylistWidget extends Gtk.ListBox
|
|||||||
return true;
|
return true;
|
||||||
|
|
||||||
if(this.repeatMode === RepeatMode.PLAYLIST)
|
if(this.repeatMode === RepeatMode.PLAYLIST)
|
||||||
return this._changeActiveRow(0);
|
return this.changeActiveRow(0);
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user