Author: humdinger Date: 2010-06-08 18:43:14 +0200 (Tue, 08 Jun 2010) New Revision: 37063 Changeset: http://dev.haiku-os.org/changeset/37063/haiku Ticket: http://dev.haiku-os.org/ticket/6051 Modified: haiku/trunk/src/add-ons/input_server/devices/keyboard/TeamMonitorWindow.cpp haiku/trunk/src/add-ons/input_server/devices/keyboard/TeamMonitorWindow.h Log: Improved TeamManager default button behaviour, closing #6051. Modified: haiku/trunk/src/add-ons/input_server/devices/keyboard/TeamMonitorWindow.cpp =================================================================== --- haiku/trunk/src/add-ons/input_server/devices/keyboard/TeamMonitorWindow.cpp 2010-06-08 16:18:57 UTC (rev 37062) +++ haiku/trunk/src/add-ons/input_server/devices/keyboard/TeamMonitorWindow.cpp 2010-06-08 16:43:14 UTC (rev 37063) @@ -115,16 +115,17 @@ fRestartButton = new BButton("restart", "Restart the Desktop", new BMessage(TM_RESTART_DESKTOP)); - fRestartButton->Hide(); + SetDefaultButton(fRestartButton); groupView->GroupLayout()->AddView(fRestartButton); glue = BSpaceLayoutItem::CreateGlue(); glue->SetExplicitMinSize(BSize(inset, -1)); groupView->GroupLayout()->AddItem(glue); - BButton *cancel = new BButton("cancel", "Cancel", + fCancelButton = new BButton("cancel", "Cancel", new BMessage(TM_CANCEL)); - groupView->GroupLayout()->AddView(cancel); + SetDefaultButton(fCancelButton); + groupView->GroupLayout()->AddView(fCancelButton); BSize preferredSize = layout->View()->PreferredSize(); if (preferredSize.width > Bounds().Width()) @@ -143,6 +144,8 @@ SetSizeLimits(Bounds().Width(), Bounds().Width() * 2, Bounds().Height(), screenFrame.Height()); + fRestartButton->Hide(); + AddShortcut('T', B_COMMAND_KEY | B_OPTION_KEY, new BMessage(kMsgLaunchTerminal)); AddShortcut('W', B_COMMAND_KEY, new BMessage(B_QUIT_REQUESTED)); @@ -181,6 +184,7 @@ case TM_FORCE_REBOOT: _kern_shutdown(true); break; + case TM_KILL_APPLICATION: { TeamListItem* item = (TeamListItem*)fListView->ItemAt( @@ -197,6 +201,8 @@ be_roster->Launch(kTrackerSignature); if (!be_roster->IsRunning(kDeskbarSignature)) be_roster->Launch(kDeskbarSignature); + fRestartButton->Hide(); + SetDefaultButton(fCancelButton); break; } case TM_SELECTED_TEAM: @@ -281,6 +287,7 @@ && be_roster->IsRunning(kDeskbarSignature); if (!desktopRunning && fRestartButton->IsHidden()) { fRestartButton->Show(); + SetDefaultButton(fRestartButton); fRestartButton->Parent()->Layout(true); } Modified: haiku/trunk/src/add-ons/input_server/devices/keyboard/TeamMonitorWindow.h =================================================================== --- haiku/trunk/src/add-ons/input_server/devices/keyboard/TeamMonitorWindow.h 2010-06-08 16:18:57 UTC (rev 37062) +++ haiku/trunk/src/add-ons/input_server/devices/keyboard/TeamMonitorWindow.h 2010-06-08 16:43:14 UTC (rev 37063) @@ -37,6 +37,7 @@ bool fQuitting; BMessageRunner* fUpdateRunner; BListView* fListView; + BButton* fCancelButton; BButton* fKillButton; BButton* fRestartButton; TeamDescriptionView* fDescriptionView;