mirror of
https://github.com/FranP-code/wintile.git
synced 2025-10-13 00:33:46 +00:00
27
extension.js
27
extension.js
@@ -13,6 +13,9 @@ const PopupMenu = imports.ui.popupMenu;
|
||||
const St = imports.gi.St;
|
||||
const Tweener = imports.tweener && imports.tweener.tweener || imports.ui.tweener;
|
||||
|
||||
const Config = imports.misc.config;
|
||||
const SHELL_VERSION_MAJOR = parseInt(Config.PACKAGE_VERSION.split('.')[0]);
|
||||
|
||||
let onWindowGrabBegin, onWindowGrabEnd;
|
||||
let windowMoving = false;
|
||||
|
||||
@@ -65,7 +68,6 @@ updateSettings();
|
||||
// Watch the settings for changes
|
||||
let settingsChangedId = settings.connect('changed', updateSettings.bind());
|
||||
|
||||
const Config = imports.misc.config;
|
||||
window.wintile = {
|
||||
extdatadir: imports.misc.extensionUtils.getCurrentExtension().path,
|
||||
shell_version: parseInt(Config.PACKAGE_VERSION.split('.')[1], 10)
|
||||
@@ -647,7 +649,7 @@ function checkForMove(x, y, app) {
|
||||
}
|
||||
}
|
||||
|
||||
function windowGrabBegin(meta_display, meta_screen, meta_window, meta_grab_op, gpointer) {
|
||||
function windowGrabBegin(meta_window, meta_grab_op) {
|
||||
_log('windowGrabBegin')
|
||||
if (meta_window) {
|
||||
windowMoving = true;
|
||||
@@ -665,7 +667,7 @@ function windowGrabBegin(meta_display, meta_screen, meta_window, meta_grab_op, g
|
||||
}
|
||||
}
|
||||
|
||||
function windowGrabEnd(meta_display, meta_screen, meta_window, meta_grab_op, gpointer) {
|
||||
function windowGrabEnd(meta_window, meta_grab_op) {
|
||||
_log('windowGrabEnd')
|
||||
if (meta_window) {
|
||||
windowMoving = false;
|
||||
@@ -879,8 +881,23 @@ var enable = function() {
|
||||
keyManager.add("<Super>up", function() { requestMove("up") })
|
||||
keyManager.add("<Super>down", function() { requestMove("down") })
|
||||
});
|
||||
onWindowGrabBegin = global.display.connect('grab-op-begin', windowGrabBegin);
|
||||
onWindowGrabEnd = global.display.connect('grab-op-end', windowGrabEnd);
|
||||
|
||||
// Since GNOME 40 the meta_display argument isn't passed anymore to these callbacks.
|
||||
// We "translate" the parameters here so that things work on both GNOME 3 and 40.
|
||||
onWindowGrabBegin = global.display.connect('grab-op-begin', (meta_display, meta_screen, meta_window, meta_grab_op, gpointer) => {
|
||||
if (SHELL_VERSION_MAJOR >= 40) {
|
||||
windowGrabBegin(meta_screen, meta_window);
|
||||
} else {
|
||||
windowGrabBegin(meta_window, meta_grab_op);
|
||||
}
|
||||
});
|
||||
onWindowGrabEnd = global.display.connect('grab-op-end', (meta_display, meta_screen, meta_window, meta_grab_op, gpointer) => {
|
||||
if (SHELL_VERSION_MAJOR >= 40) {
|
||||
windowGrabEnd(meta_screen, meta_window);
|
||||
} else {
|
||||
windowGrabEnd(meta_window, meta_grab_op);
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user