grabHelper: Support optional parameters to pushModal()

https://bugzilla.gnome.org/show_bug.cgi?id=688202
This commit is contained in:
Florian Müllner 2012-08-20 22:05:00 +02:00
parent c2065cc3e2
commit 5f367248c5

View File

@ -23,6 +23,7 @@ function _navigateActor(actor) {
// GrabHelper: // GrabHelper:
// @owner: the actor that owns the GrabHelper // @owner: the actor that owns the GrabHelper
// @params: optional parameters to pass to Main.pushModal()
// //
// Creates a new GrabHelper object, for dealing with keyboard and pointer grabs // Creates a new GrabHelper object, for dealing with keyboard and pointer grabs
// associated with a set of actors. // associated with a set of actors.
@ -34,8 +35,9 @@ function _navigateActor(actor) {
const GrabHelper = new Lang.Class({ const GrabHelper = new Lang.Class({
Name: 'GrabHelper', Name: 'GrabHelper',
_init: function(owner) { _init: function(owner, params) {
this._owner = owner; this._owner = owner;
this._modalParams = params;
this._grabStack = []; this._grabStack = [];
@ -165,7 +167,7 @@ const GrabHelper = new Lang.Class({
_takeModalGrab: function() { _takeModalGrab: function() {
let firstGrab = (this._modalCount == 0); let firstGrab = (this._modalCount == 0);
if (firstGrab) { if (firstGrab) {
if (!Main.pushModal(this._owner)) if (!Main.pushModal(this._owner, this._modalParams))
return false; return false;
this._capturedEventId = global.stage.connect('captured-event', Lang.bind(this, this._onCapturedEvent)); this._capturedEventId = global.stage.connect('captured-event', Lang.bind(this, this._onCapturedEvent));