diff --git a/src/controls.js b/src/controls.js index f861da3b..57b5b1b7 100644 --- a/src/controls.js +++ b/src/controls.js @@ -509,10 +509,9 @@ class ClapperControls extends Gtk.Box : Misc.getCubicValue(settings.get_double('volume-last')); this.volumeScale.set_value(initialVolume); - player.widget.connect('resize', this._onPlayerResize.bind(this)); } - _onPlayerResize(widget, width, height) + _onPlayerResize(width, height) { const isMobile = (width < 560); if(this.isMobile === isMobile) diff --git a/src/widget.js b/src/widget.js index fc622d57..90f84c85 100644 --- a/src/widget.js +++ b/src/widget.js @@ -21,6 +21,7 @@ class ClapperWidget extends Gtk.Grid this.windowSize = JSON.parse(settings.get_string('window-size')); this.floatSize = JSON.parse(settings.get_string('float-size')); + this.layoutWidth = 0; this.fullscreenMode = false; this.floatingMode = false; @@ -549,6 +550,15 @@ class ClapperWidget extends Gtk.Grid debug(`interface in fullscreen mode: ${isFullscreen}`); } + _onLayoutUpdate(surface, width, height) + { + if(width === this.layoutWidth) + return; + + this.layoutWidth = width; + this.controls._onPlayerResize(width, height); + } + _onLeave(controller) { if( @@ -586,5 +596,6 @@ class ClapperWidget extends Gtk.Grid } surface.connect('notify::state', this._onStateNotify.bind(this)); + surface.connect('layout', this._onLayoutUpdate.bind(this)); } });