Blob Blame History Raw
From 5bf1339ef1dbe48c68ea103c5a3753477ac33b92 Mon Sep 17 00:00:00 2001
From: Giovanni Campagna <gcampagna@src.gnome.org>
Date: Tue, 20 Dec 2011 17:59:20 +0000
Subject: dock: restore strut management

When configured not to auto-hide, the dock should modify struts
so that it doesn't cover maximized windows.
---
diff --git a/extensions/dock/extension.js b/extensions/dock/extension.js
index 387d784..2fe5147 100644
--- a/extensions/dock/extension.js
+++ b/extensions/dock/extension.js
@@ -381,7 +381,8 @@ Dock.prototype = {
         this._overviewHiddenId = Main.overview.connect('hidden', Lang.bind(this, function() {
             this.actor.show();
         }));
-        Main.layoutManager.addChrome(this.actor);
+        Main.layoutManager.addChrome(this.actor,
+                                     { affectsStruts: !this._settings.get_boolean(DOCK_HIDE_KEY) });
 
         //hidden
         this._settings.connect('changed::'+DOCK_POSITION_KEY, Lang.bind(this, function (){
@@ -406,6 +407,10 @@ Dock.prototype = {
                 if (!this._settings)
                     return;
 
+                Main.layoutManager.removeChrome(this.actor);
+                Main.layoutManager.addChrome(this.actor,
+                                             { affectsStruts: !this._settings.get_boolean(DOCK_HIDE_KEY) });
+
                 hideable = this._settings.get_boolean(DOCK_HIDE_KEY);
                 if (hideable){
                         hideDock=false;
--
cgit v0.9.0.2