Use St.Button for preview close buttons

Originally, we used St.Bin for the preview close buttons - using
St.Button instead adds support for pseudo classes to style different
button states.
This commit is contained in:
Florian Müllner 2010-02-18 05:15:10 +01:00
parent 3c8ba348c2
commit 0770fd5be5

View File

@ -371,22 +371,20 @@ WindowOverlay.prototype = {
this.title.text = w.title; this.title.text = w.title;
})); }));
let button = new St.Bin({ style_class: "window-close", let button = new St.Button({ style_class: "window-close" });
reactive: true });
button.connect('style-changed', button.connect('style-changed',
Lang.bind(this, this._onStyleChanged)); Lang.bind(this, this._onStyleChanged));
button._overlap = 0; button._overlap = 0;
this._idleToggleCloseId = 0;
button.connect('clicked', Lang.bind(this, this._closeWindow));
windowClone.actor.connect('destroy', Lang.bind(this, this._onDestroy)); windowClone.actor.connect('destroy', Lang.bind(this, this._onDestroy));
windowClone.actor.connect('enter-event', windowClone.actor.connect('enter-event',
Lang.bind(this, this._onEnter)); Lang.bind(this, this._onEnter));
windowClone.actor.connect('leave-event', windowClone.actor.connect('leave-event',
Lang.bind(this, this._onLeave)); Lang.bind(this, this._onLeave));
this._idleToggleCloseId = 0;
button.connect('button-release-event',
Lang.bind(this, this._closeWindow));
this._windowAddedId = 0; this._windowAddedId = 0;
windowClone.connect('zoom-start', Lang.bind(this, this.hide)); windowClone.connect('zoom-start', Lang.bind(this, this.hide));
windowClone.connect('zoom-end', Lang.bind(this, this.show)); windowClone.connect('zoom-end', Lang.bind(this, this.show));
@ -461,7 +459,7 @@ WindowOverlay.prototype = {
title.set_position(Math.floor(titleX), Math.floor(titleY)); title.set_position(Math.floor(titleX), Math.floor(titleY));
}, },
_closeWindow: function(actor, event) { _closeWindow: function(actor) {
let metaWindow = this._windowClone.metaWindow; let metaWindow = this._windowClone.metaWindow;
this._workspace = metaWindow.get_workspace(); this._workspace = metaWindow.get_workspace();
@ -469,7 +467,7 @@ WindowOverlay.prototype = {
Lang.bind(this, Lang.bind(this,
this._onWindowAdded)); this._onWindowAdded));
metaWindow.delete(event.get_time()); metaWindow.delete(global.get_current_time());
}, },
_onWindowAdded: function(workspace, win) { _onWindowAdded: function(workspace, win) {