diff --git a/leksah.cabal b/leksah.cabal
--- a/leksah.cabal
+++ b/leksah.cabal
@@ -1,5 +1,5 @@
 name: leksah
-version: 0.4.4
+version: 0.4.4.1
 cabal-version: >=1.4
 build-type: Simple
 license: GPL
diff --git a/src/IDE/Package.hs b/src/IDE/Package.hs
--- a/src/IDE/Package.hs
+++ b/src/IDE/Package.hs
@@ -159,7 +159,9 @@
                             otherwise   ->  return False
                     else return False
             if wantToLoadSession
-                then triggerEvent ideR (LoadSession (ppath </> "IDE.session")) >> getActivePackage
+                then do
+                    triggerEvent ideR (LoadSession (ppath </> "IDE.session"))
+                    readIDE activePack
                 else activatePackage filePath
 
 activatePackage :: FilePath -> IDEM (Maybe IDEPackage)
@@ -240,7 +242,7 @@
 
 packageBuild :: Bool -> IDEAction
 packageBuild backgroundBuild = catchIDE (do
-        mbPackage   <- getActivePackage
+        mbPackage   <- if backgroundBuild then readIDE activePack else getActivePackage
         log         <- getLog
         ideR        <- ask
         prefs       <- readIDE prefs
diff --git a/src/IDE/Pane/PackageEditor.hs b/src/IDE/Pane/PackageEditor.hs
--- a/src/IDE/Pane/PackageEditor.hs
+++ b/src/IDE/Pane/PackageEditor.hs
@@ -126,7 +126,7 @@
 choosePackageFile :: Window -> IO (Maybe FilePath)
 choosePackageFile window = do
     dialog <- fileChooserDialogNew
-                    (Just $ "Select file of project")
+                    (Just $ "Select .cabal project file")
                     (Just window)
                 FileChooserActionOpen
                 [("gtk-cancel"
