Also, moved the filter indication label from the Alerts/Updates/Events page
to the main window because the Updates page top toolstrip looked too clattered.
Signed-off-by: Konstantina Chremmou <Konstantina.Chremmou@cloud.com>
- Removed DebugHelp. The user settings are normally not meant for debugging code.
- Moved HelpId logic from the main window to the tab pages.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
* Corrections and enhancements.
Fixed version compatibility check. Added context menu to the conversion list.
* Exclude templates and snapshots when looking for the conversion VM.
* Further corrections.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
For this purpose, call the DisconnectCommand instead of session.logout_subject_identifier.
Also:
- Add the new actions to the History synchronously on the main thread,
otherwise the warning dialog may not detect in time the new actions.
- Although the local root account is currently first in the list, checking whether
the first item is selected is a fragile way of establishing whether the local
root account is selected. Check the row's IsLocalRootRow property as in the
rest of the file.
- Added username detail to the logout action; fixed typo in message key.
- Some minor refactoring to make the code more efficient.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
Created a new base class for the Notifications pages (Alerts, Updates, Events). This can be used in the future to host more of the common code between these pages. For now, it implements a common mechanism for showing/hiding the page and ensures that the event handlers are deregistered when the page is hidden (i.e. when the user switches to a different view) and registered again when the page becomes visible
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
once for all the items to be removed, passing in their list as argument. This method,
and the method Clear calling it, are used for alerts, updates, events and connections,
hence changed the handling of the CollectionChanged event in these cases to expect
either a single item or a collection. In the case of alerts, updates and events
this means that we can rebuild the whole list instead of removing single rows which
causes the application to hang for big numbers of items.
Further changes
* implemented similar logic for the Commands too as those are keep on getting updates so affected
* moved these static fields to a class (at Images)
* used the same casing as in Resources once they have been moved
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
Changed code at a a few places where it made sense to limit how many times XenCenter asks the Resource Manager for a new instance(*1) of the same(*2) image.
*1: RM returns a new object each time
*2: they are the same as we don't change the locale of a thread and also we don't localise these images - by design
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
confirmations are displayed. Added checkboxes to the dialogs requesting confirmation
of dismissal of notifications so the user can opt to skip this step.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
Fixed the bug by subscribing to events of all actions and not only to the
ones that are displayed in the grid.
Besides this, the visibility of the row is being used instead of removing and
re-adding rows on status changes.
Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
In some cases calling Control.Invoke() from a background thread causes that thread to go in a "sleep, wait, or join" mode, while waiting for Invoke to happen, although the UI thread is running normally.
If the Control is the MainWindow, it works as expected, but we've seen it happening while connecting or disconnecting from a large pool, on calling Invoke on controls like NavigationView, AlertSummaryPage, HistoryPage, etc.
To fix this, we call the Invoke on the MainWindow in all the places where we've seen the issue.
With this changes, the previous fix for CA-148245 (call RequestRefreshTreeView on CacheClearing event) is not needed anymore, so I removed that call.
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
- In the Events view, offer a choice only to dismiss the visible ones instead of all
- Keep the filter buttons always enabled. This applies to all Notification views (Alerts, Updates & Events)
- Also refined the confirmation messages displayed when dismissing events
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
was available for non-dismissible alerts. Fixed wrong enabled state of the top
ToolStripSplitbutton Dismiss on the alerts and the events page. Refactored code
calculating dismissability of alerts and dismissing them. Events list should be
multi-selectable.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
Preserve last selected node when switching between views. Added labelling to the
unit tests run post-build. Minor tidy.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
For the time being show all entries. New filtering according to the entry location
will be implemented in a future commit.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
succeeded, failed; cancelled at the moment counts as failed, we may need to distinguish
in future). As a consequence the filter checkboxes from the top of the Log tab
were removed and some temporary changes were made to the drawing of action rows
(the controls will change completely in a subsequent commit).
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>
NewAction to use the Action<ActionBase> delegate instead of EventHandler. Thus
there is no need to fire them with Empty or null EventArgs and on several occasions
we avoid casting objects in the event handlers.
Signed-off-by: Konstantina Chremmou <konstantina.chremmou@citrix.com>