Bug 141689. Prevent multiple menus.

This commit is contained in:
Jim Norman 2006-01-06 23:08:58 +00:00
parent ef80fd0ac5
commit 95544542e0
2 changed files with 309 additions and 295 deletions

View File

@ -1,238 +1,242 @@
-------------------------------------------------------------------
Fri Jan 6 17:44:03 IST 2006 - smanojna@novell.com
- Added ADD/MODIFY/DELETE functionalites for Keyring and KWallet
stores and was integrated with the GUI.
- About dialog in the GUI was updated with the version info (1.6).
- KNOWN ISSUES:
1. Currently ADD-KEYS and DELETE-KEYS of existing secrets for Keyring
is not functional.
2. Creation of new secret in Keyring (ADD-SECRET) expects a key
with the name "GKPassword" whose value will be the password for
the respective secret. This key should not be deleted.
-------------------------------------------------------------------
Tue Jan 3 16:01:10 MST 2006 - cmashayekhi@novell.com
- Fixed link.lux files to use $ARC parameter to eliminate the
errors caused during the build with the rpath link parameter.
-------------------------------------------------------------------
Thu Dec 22 14:37:04 MST 2005 - jnorman@novell.com
- Removed creating sym links to CASAManager files
-------------------------------------------------------------------
Wed Dec 21 14:17:38 MST 2005 - jnorman@novell.com
- Bug 140056. Commented code to prevent login hangs in NDK.
-------------------------------------------------------------------
Tue Dec 20 11:17:38 MST 2005 - jnorman@novell.com
- Bug 133485. Set .miCASA files as hidden
-------------------------------------------------------------------
Tue Dec 20 10:40:38 MST 2005 - jnorman@novell.com
- Bug 140057. Disable destroying secrets when locked
-------------------------------------------------------------------
Tue Dec 20 10:23:38 MST 2005 - jnorman@novell.com
- Bug 140058. Update version number on GUI
-------------------------------------------------------------------
Sat Dec 17 08:23:38 MST 2005 - cmashayekhi@novell.com
- Merged in the CASA.changes from Patch_1.5
-------------------------------------------------------------------
Fri Dec 16 15:07:22 MST 2005 - cmashayekhi@novell.com
- Compile erros in gk_ad.c were fixed to build.
-------------------------------------------------------------------
Fri Dec 16 10:49:53 MST 2005 - cmashayekhi@novell.com
- Checked in for changes in ADLib for Add-Modify-Delete for
KWallet and Gnome Keyring.
-------------------------------------------------------------------
Fri Dec 16 08:55:06 MST 2005 - jluciani@novell.com
-Fixed compiler warnings in auth-token stuff.
-------------------------------------------------------------------
Wed Dec 14 10:57:46 MST 2005 - jnorman@novell.com
-Bug 138355. Delay persistence until home directory is created.
prevent closing session prematurely (pam_sscs.c)
-------------------------------------------------------------------
Wed Dec 14 10:22:46 MST 2005 - jluciani@novell.com
-Added authentication token stuff into the mix.
-------------------------------------------------------------------
Tue Dec 13 15:29:59 MST 2005 - cmashayekhi@novell.com
- Patch build revision number is set to 198.
-------------------------------------------------------------------
Tue Dec 13 15:20:53 MST 2005 - cmashayekhi@novell.com
- Bug 138355. Delay persistence until the users home directory
is created (SecretStore.cs). This was done for LUM integration
- On SessionClose in PAM (sscs_pam.c), change SSFlags to 0 on
CloseSecretStoreCache to prevent closing session early.
-------------------------------------------------------------------
Mon Dec 12 15:39:59 MST 2005 - cmashayekhi@novell.com
- FINAL Patch build revision number is set to 190.
-------------------------------------------------------------------
Mon Dec 12 15:29:59 MST 2005 - cmashayekhi@novell.com
- Patch build revision number is set to 189
-------------------------------------------------------------------
Mon Dec 12 09:29:59 MST 2005 - cmashayekhi@novell.com
- Added patch changes that Rudy made on Nov. 14th to
checkin to the stable branch.
- Changes made to CASA.spec and pam_sscs.c
- Fixed build in stable: add qt-bindir to PATH
- include syslog.h for LOG_ERR
-------------------------------------------------------------------
Tue Dec 6 15:43:46 MST 2005 - jnorman@novell.com
-Added AssemblyInfo files to all DotNET modules
-------------------------------------------------------------------
Tue Dec 6 09:43:46 MST 2005 - cmashayekhi@novell.com
-Reverting back to build 166 changes and updating the CASA.spec
to run pre and post script.
-------------------------------------------------------------------
Mon Dec 5 13:32:23 MST 2005 - jnorman@novell.com
- Bug 136523. Fix KWallet code to show KWallet secrets.
fix made in kwallets_rw.cpp
-------------------------------------------------------------------
Fri Dec 2 16:35:38 MST 2005 - jnorman@novell.com
- Bug 136527. Add handlers on KDEStore and GNOME Store code
-------------------------------------------------------------------
Fri Dec 2 15:11:49 MST 2005 - cmashayekhi@novell.com
- Bug 136221, workaround in CASA.spec file were removed because
they were not changes for supported intended use of the
product. Instead the readme was updated.
-------------------------------------------------------------------
Fri Dec 02 10:34:02 MST 2005 - jnorman@novell.com
- Bug 134096, add CASAManager.exe.config.
- Bug 136224, Document Readme for random crash on 64 bit.
- Bug 136226, Launch kde-open on kde desktops, and gnome-open on
gnome for help files
- Bug 136221, Attempt to prevent installing 32bit rpms on
64 bit platforms as a workaround.
- Added CASA_dbg.spec file to build debug RPMs on autobuild
-------------------------------------------------------------------
Wed Nov 30 10:34:02 MST 2005 - jnorman@novell.com
- Bug 134096, Fixed Wrapper code for proper structure marshaling.
-------------------------------------------------------------------
Tue Nov 29 17:01:09 MST 2005 - jnorman@novell.com
- Bug: 134096 Fix CASA gui for 64 bit
-------------------------------------------------------------------
Wed Nov 24 14:09:19 MST 2005 - jnorman@novell.com
- Bug fixes: 135387, 135393
-------------------------------------------------------------------
Wed Nov 23 07:18:23 MST 2005 - cmashayekhi@novell.com
- c_gui/CASAManager.sh was fixed to support lib64 directory.
- c_micasad/startup/micasad.sh was fixed to support lib64.
-------------------------------------------------------------------
Wed Nov 23 16:09:19 MST 2005 - jnorman@novell.com
- changed PAM Capture to find libmicasa in path
-------------------------------------------------------------------
Wed Nov 18 14:09:19 MST 2005 - jnorman@novell.com
- Change GUI dependency from gtk2-devel to gtk2.
-------------------------------------------------------------------
Wed Nov 16 13:42:19 MST 2005 - jnorman@novell.com
- Bug 133479. Clear Native information when destroying secrets or refreshing
-------------------------------------------------------------------
Tue Nov 15 14:54:19 MST 2005 - jnorman@novell.com
- Added gtk2-devel dependency to CASA-gui rpm
-------------------------------------------------------------------
Mon Nov 14 15:56:59 MST 2005 - cmashayekhi@novell.com
- Bug 133705 having to do with licenses in the source files
was fixed.
- CASA.spec was modified to accomodate for auto build scripts.
-------------------------------------------------------------------
Fri Nov 11 08:26:50 MST 2005 - jnorman@novell.com
- Added help files, and code to launch help files to GUI
-------------------------------------------------------------------
Thu Nov 10 12:32:38 MST 2005 - jnorman@novell.com
- Replaced changes.log with CASA.changes in the src tree to be
consistent with autobuild
-------------------------------------------------------------------
Mon Nov 7 16:44:00 MST 2005 - cameron@novell.com
- CASA.spec and versioning number was modified to support build
number as a part of the rpm version.
- lib*.so versioning was changed to support linux format versioning
numbers. CASA libs are at 1.1.1 now.
- Build scripts were modified to support $RPM_OPT_FLAGS.
- Added persistence without desktop credentials.
- Bug 130336 -- resevered escaped chars was fixed.
- Bug 130518 -- invalid param exception handling was
fixed.
- Support for extended ascii and double byte chars in
GUI was added.
- Finalized GUI cosmetic changes.
----------------------------------------------------------------
Thu Oct 27 11:40:20 MDT 2005 - cmashayekhi@novell.com
-The image version to 1.5.0
Files:
- Work area was cleaned up for the final build.
- CASA.spec was modified to requirement.
- Minor bug fixes were applied.
----------------------------------------------------------------
Thu Oct 19 14:46:33 MDT 2005 - cmashayekhi@novell.com
-The image version to 1.5.0
Files:
- Moving from version 1.0.0 to 1.5.0 as per PRD.
----------------------------------------------------------------
-------------------------------------------------------------------
Fri Jan 6 16:06:03 MST 2006 - jnorman@novell.com
- Bug 141689. Prevent multiple menus.
-------------------------------------------------------------------
Fri Jan 6 17:44:03 IST 2006 - smanojna@novell.com
- Added ADD/MODIFY/DELETE functionalites for Keyring and KWallet
stores and was integrated with the GUI.
- About dialog in the GUI was updated with the version info (1.6).
- KNOWN ISSUES:
1. Currently ADD-KEYS and DELETE-KEYS of existing secrets for Keyring
is not functional.
2. Creation of new secret in Keyring (ADD-SECRET) expects a key
with the name "GKPassword" whose value will be the password for
the respective secret. This key should not be deleted.
-------------------------------------------------------------------
Tue Jan 3 16:01:10 MST 2006 - cmashayekhi@novell.com
- Fixed link.lux files to use $ARC parameter to eliminate the
errors caused during the build with the rpath link parameter.
-------------------------------------------------------------------
Thu Dec 22 14:37:04 MST 2005 - jnorman@novell.com
- Removed creating sym links to CASAManager files
-------------------------------------------------------------------
Wed Dec 21 14:17:38 MST 2005 - jnorman@novell.com
- Bug 140056. Commented code to prevent login hangs in NDK.
-------------------------------------------------------------------
Tue Dec 20 11:17:38 MST 2005 - jnorman@novell.com
- Bug 133485. Set .miCASA files as hidden
-------------------------------------------------------------------
Tue Dec 20 10:40:38 MST 2005 - jnorman@novell.com
- Bug 140057. Disable destroying secrets when locked
-------------------------------------------------------------------
Tue Dec 20 10:23:38 MST 2005 - jnorman@novell.com
- Bug 140058. Update version number on GUI
-------------------------------------------------------------------
Sat Dec 17 08:23:38 MST 2005 - cmashayekhi@novell.com
- Merged in the CASA.changes from Patch_1.5
-------------------------------------------------------------------
Fri Dec 16 15:07:22 MST 2005 - cmashayekhi@novell.com
- Compile erros in gk_ad.c were fixed to build.
-------------------------------------------------------------------
Fri Dec 16 10:49:53 MST 2005 - cmashayekhi@novell.com
- Checked in for changes in ADLib for Add-Modify-Delete for
KWallet and Gnome Keyring.
-------------------------------------------------------------------
Fri Dec 16 08:55:06 MST 2005 - jluciani@novell.com
-Fixed compiler warnings in auth-token stuff.
-------------------------------------------------------------------
Wed Dec 14 10:57:46 MST 2005 - jnorman@novell.com
-Bug 138355. Delay persistence until home directory is created.
prevent closing session prematurely (pam_sscs.c)
-------------------------------------------------------------------
Wed Dec 14 10:22:46 MST 2005 - jluciani@novell.com
-Added authentication token stuff into the mix.
-------------------------------------------------------------------
Tue Dec 13 15:29:59 MST 2005 - cmashayekhi@novell.com
- Patch build revision number is set to 198.
-------------------------------------------------------------------
Tue Dec 13 15:20:53 MST 2005 - cmashayekhi@novell.com
- Bug 138355. Delay persistence until the users home directory
is created (SecretStore.cs). This was done for LUM integration
- On SessionClose in PAM (sscs_pam.c), change SSFlags to 0 on
CloseSecretStoreCache to prevent closing session early.
-------------------------------------------------------------------
Mon Dec 12 15:39:59 MST 2005 - cmashayekhi@novell.com
- FINAL Patch build revision number is set to 190.
-------------------------------------------------------------------
Mon Dec 12 15:29:59 MST 2005 - cmashayekhi@novell.com
- Patch build revision number is set to 189
-------------------------------------------------------------------
Mon Dec 12 09:29:59 MST 2005 - cmashayekhi@novell.com
- Added patch changes that Rudy made on Nov. 14th to
checkin to the stable branch.
- Changes made to CASA.spec and pam_sscs.c
- Fixed build in stable: add qt-bindir to PATH
- include syslog.h for LOG_ERR
-------------------------------------------------------------------
Tue Dec 6 15:43:46 MST 2005 - jnorman@novell.com
-Added AssemblyInfo files to all DotNET modules
-------------------------------------------------------------------
Tue Dec 6 09:43:46 MST 2005 - cmashayekhi@novell.com
-Reverting back to build 166 changes and updating the CASA.spec
to run pre and post script.
-------------------------------------------------------------------
Mon Dec 5 13:32:23 MST 2005 - jnorman@novell.com
- Bug 136523. Fix KWallet code to show KWallet secrets.
fix made in kwallets_rw.cpp
-------------------------------------------------------------------
Fri Dec 2 16:35:38 MST 2005 - jnorman@novell.com
- Bug 136527. Add handlers on KDEStore and GNOME Store code
-------------------------------------------------------------------
Fri Dec 2 15:11:49 MST 2005 - cmashayekhi@novell.com
- Bug 136221, workaround in CASA.spec file were removed because
they were not changes for supported intended use of the
product. Instead the readme was updated.
-------------------------------------------------------------------
Fri Dec 02 10:34:02 MST 2005 - jnorman@novell.com
- Bug 134096, add CASAManager.exe.config.
- Bug 136224, Document Readme for random crash on 64 bit.
- Bug 136226, Launch kde-open on kde desktops, and gnome-open on
gnome for help files
- Bug 136221, Attempt to prevent installing 32bit rpms on
64 bit platforms as a workaround.
- Added CASA_dbg.spec file to build debug RPMs on autobuild
-------------------------------------------------------------------
Wed Nov 30 10:34:02 MST 2005 - jnorman@novell.com
- Bug 134096, Fixed Wrapper code for proper structure marshaling.
-------------------------------------------------------------------
Tue Nov 29 17:01:09 MST 2005 - jnorman@novell.com
- Bug: 134096 Fix CASA gui for 64 bit
-------------------------------------------------------------------
Wed Nov 24 14:09:19 MST 2005 - jnorman@novell.com
- Bug fixes: 135387, 135393
-------------------------------------------------------------------
Wed Nov 23 07:18:23 MST 2005 - cmashayekhi@novell.com
- c_gui/CASAManager.sh was fixed to support lib64 directory.
- c_micasad/startup/micasad.sh was fixed to support lib64.
-------------------------------------------------------------------
Wed Nov 23 16:09:19 MST 2005 - jnorman@novell.com
- changed PAM Capture to find libmicasa in path
-------------------------------------------------------------------
Wed Nov 18 14:09:19 MST 2005 - jnorman@novell.com
- Change GUI dependency from gtk2-devel to gtk2.
-------------------------------------------------------------------
Wed Nov 16 13:42:19 MST 2005 - jnorman@novell.com
- Bug 133479. Clear Native information when destroying secrets or refreshing
-------------------------------------------------------------------
Tue Nov 15 14:54:19 MST 2005 - jnorman@novell.com
- Added gtk2-devel dependency to CASA-gui rpm
-------------------------------------------------------------------
Mon Nov 14 15:56:59 MST 2005 - cmashayekhi@novell.com
- Bug 133705 having to do with licenses in the source files
was fixed.
- CASA.spec was modified to accomodate for auto build scripts.
-------------------------------------------------------------------
Fri Nov 11 08:26:50 MST 2005 - jnorman@novell.com
- Added help files, and code to launch help files to GUI
-------------------------------------------------------------------
Thu Nov 10 12:32:38 MST 2005 - jnorman@novell.com
- Replaced changes.log with CASA.changes in the src tree to be
consistent with autobuild
-------------------------------------------------------------------
Mon Nov 7 16:44:00 MST 2005 - cameron@novell.com
- CASA.spec and versioning number was modified to support build
number as a part of the rpm version.
- lib*.so versioning was changed to support linux format versioning
numbers. CASA libs are at 1.1.1 now.
- Build scripts were modified to support $RPM_OPT_FLAGS.
- Added persistence without desktop credentials.
- Bug 130336 -- resevered escaped chars was fixed.
- Bug 130518 -- invalid param exception handling was
fixed.
- Support for extended ascii and double byte chars in
GUI was added.
- Finalized GUI cosmetic changes.
----------------------------------------------------------------
Thu Oct 27 11:40:20 MDT 2005 - cmashayekhi@novell.com
-The image version to 1.5.0
Files:
- Work area was cleaned up for the final build.
- CASA.spec was modified to requirement.
- Minor bug fixes were applied.
----------------------------------------------------------------
Thu Oct 19 14:46:33 MDT 2005 - cmashayekhi@novell.com
-The image version to 1.5.0
Files:
- Moving from version 1.0.0 to 1.5.0 as per PRD.
----------------------------------------------------------------

View File

@ -29,6 +29,7 @@ namespace Novell.CASA.GUI
#endif
private static CasaMain mCasaMain = null;
private Menu popupMenu = null;
public CasaTray(CasaMain casaInstance)
{
@ -114,75 +115,84 @@ namespace Novell.CASA.GUI
private void ShowContextMenu()
{
Menu popupMenu = new Menu(); // creates the menu
if (popupMenu != null && popupMenu.Visible)
{
popupMenu.Destroy();
}
if (popupMenu == null || !popupMenu.Visible)
{
popupMenu = new Menu(); // creates the menu
MenuItem miSep = new MenuItem();
MenuItem miSep2 = new MenuItem();
MenuItem miSep3 = new MenuItem();
MenuItem miSep = new MenuItem();
MenuItem miSep2 = new MenuItem();
MenuItem miSep3 = new MenuItem();
ImageMenuItem menuLaunchGUI = new ImageMenuItem ("Manage Secrets");
Image appimg = new Image(Stock.New, IconSize.Menu);
menuLaunchGUI.Image = appimg; // sets the menu item's image
menuLaunchGUI.Activated +=new EventHandler(menuLaunchGUI_Activated);
popupMenu.Add(menuLaunchGUI);
popupMenu.Add(miSep);
ImageMenuItem menuLaunchGUI = new ImageMenuItem ("Manage Secrets");
Image appimg = new Image(Stock.New, IconSize.Menu);
menuLaunchGUI.Image = appimg; // sets the menu item's image
menuLaunchGUI.Activated +=new EventHandler(menuLaunchGUI_Activated);
popupMenu.Add(menuLaunchGUI);
popupMenu.Add(miSep);
ImageMenuItem menuLockMiCasa = new ImageMenuItem ("Lock Secrets");
ImageMenuItem menuLockMiCasa = new ImageMenuItem ("Lock Secrets");
//appimg = new Image(Stock.Close, IconSize.Menu);
appimg = new Image("gtk-dialog-authentication", IconSize.Menu);
menuLockMiCasa.Image = appimg; // sets the menu item's image
menuLockMiCasa.Activated +=new EventHandler(menuLockMiCasa_Activated);
//appimg = new Image(Stock.Close, IconSize.Menu);
appimg = new Image("gtk-dialog-authentication", IconSize.Menu);
menuLockMiCasa.Image = appimg; // sets the menu item's image
menuLockMiCasa.Activated +=new EventHandler(menuLockMiCasa_Activated);
ImageMenuItem menuUnLockMiCasa = new ImageMenuItem ("Unlock Secrets...");
appimg = new Image(Stock.Open, IconSize.Menu);
menuUnLockMiCasa.Image = appimg; // sets the menu item's image
menuUnLockMiCasa.Activated +=new EventHandler(menuLockMiCasa_Activated);
ImageMenuItem menuUnLockMiCasa = new ImageMenuItem ("Unlock Secrets...");
appimg = new Image(Stock.Open, IconSize.Menu);
menuUnLockMiCasa.Image = appimg; // sets the menu item's image
menuUnLockMiCasa.Activated +=new EventHandler(menuLockMiCasa_Activated);
popupMenu.Add(menuLockMiCasa);
popupMenu.Add(menuUnLockMiCasa);
popupMenu.Add(menuLockMiCasa);
popupMenu.Add(menuUnLockMiCasa);
popupMenu.Add(miSep2);
popupMenu.Add(miSep2);
ImageMenuItem menuDestroyMiCasa = new ImageMenuItem ("Destroy Secrets");
appimg = new Image(Stock.Delete, IconSize.Menu);
menuDestroyMiCasa.Image = appimg; // sets the menu item's image
menuDestroyMiCasa.Activated +=new EventHandler(menuDestroyMiCasa_Activated);
popupMenu.Add(menuDestroyMiCasa);
ImageMenuItem menuDestroyMiCasa = new ImageMenuItem ("Destroy Secrets");
appimg = new Image(Stock.Delete, IconSize.Menu);
menuDestroyMiCasa.Image = appimg; // sets the menu item's image
menuDestroyMiCasa.Activated +=new EventHandler(menuDestroyMiCasa_Activated);
popupMenu.Add(menuDestroyMiCasa);
if (MiCASAStore.IsLocked())
{
menuLockMiCasa.Sensitive = false;
menuDestroyMiCasa.Sensitive = false;
if (MiCASAStore.IsLocked())
{
menuLockMiCasa.Sensitive = false;
menuDestroyMiCasa.Sensitive = false;
}
else
{
menuUnLockMiCasa.Sensitive = false;
menuDestroyMiCasa.Sensitive = true;
}
ImageMenuItem menuOptionsMiCasa = new ImageMenuItem ("Options ....");
menuOptionsMiCasa.Sensitive = false;
popupMenu.Add(menuOptionsMiCasa);
popupMenu.Add(miSep3);
// creates a menu item with no image as default
ImageMenuItem menuPopup1 = new ImageMenuItem ("Exit");
appimg = new Image(Stock.Quit, IconSize.Menu);
menuPopup1.Image = appimg; // sets the menu item's image
popupMenu.Add(menuPopup1); // adds the menu item to the menu
// hooks a event when the user clicks the icon
menuPopup1.Activated += new EventHandler(this.OnPopupClick);
popupMenu.ShowAll(); // shows everything
// pops up the actual menu when the user right clicks
//popupMenu.Popup(null, null, null, IntPtr.Zero, args.Event.Button, args.Event.Time);
popupMenu.Popup();
}
else
{
menuUnLockMiCasa.Sensitive = false;
menuDestroyMiCasa.Sensitive = true;
}
ImageMenuItem menuOptionsMiCasa = new ImageMenuItem ("Options ....");
menuOptionsMiCasa.Sensitive = false;
popupMenu.Add(menuOptionsMiCasa);
popupMenu.Add(miSep3);
// creates a menu item with no image as default
ImageMenuItem menuPopup1 = new ImageMenuItem ("Exit");
appimg = new Image(Stock.Quit, IconSize.Menu);
menuPopup1.Image = appimg; // sets the menu item's image
popupMenu.Add(menuPopup1); // adds the menu item to the menu
// hooks a event when the user clicks the icon
menuPopup1.Activated += new EventHandler(this.OnPopupClick);
popupMenu.ShowAll(); // shows everything
// pops up the actual menu when the user right clicks
//popupMenu.Popup(null, null, null, IntPtr.Zero, args.Event.Button, args.Event.Time);
popupMenu.Popup();
}
private void OnImageClick (object o, ButtonPressEventArgs args) // handler for mouse click