Revision: 6602
http://squirrel-sql.svn.sourceforge.net/squirrel-sql/?rev=6602&view=rev
Author: gerdwagner
Date: 2012-03-15 19:50:49 +0000 (Thu, 15 Mar 2012)
Log Message:
-----------
When a Session tab is closed that is not the active tab the Session menu used to be disabled and keyboard shortcuts didn't work anymore for the active Session.
Modified Paths:
--------------
trunk/sql12/app/src/main/java/net/sourceforge/squirrel_sql/client/gui/desktopcontainer/SessionTabWidget.java
trunk/sql12/app/src/main/java/net/sourceforge/squirrel_sql/client/gui/mainframe/MainFrameToolBar.java
trunk/sql12/app/src/main/java/net/sourceforge/squirrel_sql/client/plugin/DefaultSessionPlugin.java
trunk/sql12/app/src/main/java/net/sourceforge/squirrel_sql/client/session/SessionManager.java
trunk/sql12/doc/src/main/resources/changes.txt
Modified: trunk/sql12/app/src/main/java/net/sourceforge/squirrel_sql/client/gui/desktopcontainer/SessionTabWidget.java
===================================================================
--- trunk/sql12/app/src/main/java/net/sourceforge/squirrel_sql/client/gui/desktopcontainer/SessionTabWidget.java 2012-03-15 19:12:31 UTC (rev 6601)
+++ trunk/sql12/app/src/main/java/net/sourceforge/squirrel_sql/client/gui/desktopcontainer/SessionTabWidget.java 2012-03-15 19:50:49 UTC (rev 6602)
@@ -1,15 +1,9 @@
package net.sourceforge.squirrel_sql.client.gui.desktopcontainer;
-import net.sourceforge.squirrel_sql.client.IApplication;
-import net.sourceforge.squirrel_sql.client.gui.session.SessionPanel;
import net.sourceforge.squirrel_sql.client.session.*;
import net.sourceforge.squirrel_sql.fw.util.StringManager;
import net.sourceforge.squirrel_sql.fw.util.StringManagerFactory;
-import javax.swing.*;
-import javax.swing.event.InternalFrameEvent;
-import javax.swing.event.InternalFrameAdapter;
-import java.awt.*;
import java.io.File;
public abstract class SessionTabWidget extends TabWidget implements ISessionWidget
@@ -133,7 +127,7 @@
public void widgetActivated(WidgetEvent e)
{
_session.setActiveSessionWindow((ISessionWidget) e.getWidget());
- _session.getApplication().getSessionManager().setActiveSession(_session);
+ _session.getApplication().getSessionManager().setActiveSession(_session, false);
}
}
Modified: trunk/sql12/app/src/main/java/net/sourceforge/squirrel_sql/client/gui/mainframe/MainFrameToolBar.java
===================================================================
--- trunk/sql12/app/src/main/java/net/sourceforge/squirrel_sql/client/gui/mainframe/MainFrameToolBar.java 2012-03-15 19:12:31 UTC (rev 6601)
+++ trunk/sql12/app/src/main/java/net/sourceforge/squirrel_sql/client/gui/mainframe/MainFrameToolBar.java 2012-03-15 19:50:49 UTC (rev 6602)
@@ -369,7 +369,7 @@
final Object obj = getSelectedItem();
if (obj instanceof ISession)
{
- _app.getSessionManager().setActiveSession((ISession)obj);
+ _app.getSessionManager().setActiveSession((ISession)obj, false);
}
}
}
Modified: trunk/sql12/app/src/main/java/net/sourceforge/squirrel_sql/client/plugin/DefaultSessionPlugin.java
===================================================================
--- trunk/sql12/app/src/main/java/net/sourceforge/squirrel_sql/client/plugin/DefaultSessionPlugin.java 2012-03-15 19:12:31 UTC (rev 6601)
+++ trunk/sql12/app/src/main/java/net/sourceforge/squirrel_sql/client/plugin/DefaultSessionPlugin.java 2012-03-15 19:50:49 UTC (rev 6602)
@@ -141,36 +141,8 @@
{
public void sessionActivated(SessionEvent evt)
{
- final ISession session = evt.getSession();
- EnableMenuTask task = new EnableMenuTask(session);
- session.getApplication().getThreadPool().addTask(task);
+ final boolean enable = isPluginSession(evt.getSession());
+ sessionMenu.setEnabled(enable);
}
}
-
- /**
- * A runnable that implements changing the enabled state of sessionMenu. This class ensures that UI state
- * change occurs in the Swing EDT.
- */
- private class EnableMenuTask implements Runnable
- {
-
- private ISession _session = null;
-
- public EnableMenuTask(ISession session)
- {
- _session = session;
- }
-
- public void run()
- {
- final boolean enable = isPluginSession(_session);
- GUIUtils.processOnSwingEventThread(new Runnable()
- {
- public void run()
- {
- sessionMenu.setEnabled(enable);
- }
- });
- }
- }
}
Modified: trunk/sql12/app/src/main/java/net/sourceforge/squirrel_sql/client/session/SessionManager.java
===================================================================
--- trunk/sql12/app/src/main/java/net/sourceforge/squirrel_sql/client/session/SessionManager.java 2012-03-15 19:12:31 UTC (rev 6601)
+++ trunk/sql12/app/src/main/java/net/sourceforge/squirrel_sql/client/session/SessionManager.java 2012-03-15 19:50:49 UTC (rev 6602)
@@ -26,14 +26,10 @@
import javax.swing.event.EventListenerList;
import net.sourceforge.squirrel_sql.client.IApplication;
-import net.sourceforge.squirrel_sql.client.mainframe.action.CloseAllButCurrentSessionsAction;
-import net.sourceforge.squirrel_sql.client.mainframe.action.CloseAllSessionsAction;
import net.sourceforge.squirrel_sql.client.gui.db.SQLAlias;
import net.sourceforge.squirrel_sql.client.gui.db.ISQLAliasExt;
import net.sourceforge.squirrel_sql.client.session.event.ISessionListener;
import net.sourceforge.squirrel_sql.client.session.event.SessionEvent;
-import net.sourceforge.squirrel_sql.client.session.action.CloseSessionWindowAction;
-import net.sourceforge.squirrel_sql.client.session.action.CloseSessionAction;
import net.sourceforge.squirrel_sql.fw.gui.Dialogs;
import net.sourceforge.squirrel_sql.fw.id.IIdentifier;
import net.sourceforge.squirrel_sql.fw.id.IntegerIdentifierFactory;
@@ -140,14 +136,14 @@
_sessionsById.put(sess.getIdentifier(), sess);
fireSessionAdded(sess);
- setActiveSession(sess);
+ setActiveSession(sess, false);
return sess;
}
- public void setActiveSession(ISession session)
+ public void setActiveSession(ISession session, boolean force)
{
- if (session != _activeSession)
+ if (session != _activeSession || force)
{
_activeSession = session;
fireSessionActivated(session);
@@ -313,13 +309,17 @@
{
if (!_sessionsList.isEmpty())
{
- setActiveSession(_sessionsList.getLast());
+ setActiveSession(_sessionsList.getLast(), false);
}
else
{
_activeSession = null;
}
}
+ else
+ {
+ setActiveSession(_activeSession, true);
+ }
_allowedSchemasBySessionID.remove(session.getIdentifier());
Modified: trunk/sql12/doc/src/main/resources/changes.txt
===================================================================
--- trunk/sql12/doc/src/main/resources/changes.txt 2012-03-15 19:12:31 UTC (rev 6601)
+++ trunk/sql12/doc/src/main/resources/changes.txt 2012-03-15 19:50:49 UTC (rev 6602)
@@ -61,6 +61,9 @@
Bug fixes:
+When a Session tab is closed that is not the active tab
+ the Session menu used to be disabled and keyboard shortcuts didn't work anymore for the active Session.
+
Graph Plugin: Query Builder: Mixed up ASC and DESC in SQL generation and "order by" panel
Hibernate Plugin: Fixed NullPointer that occurred in HQL execution concerning assisted but nonetheless initialized objects.
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|