2008-03-11, 17:02
Elan implemented a small but smart change the the OS X version of XBMC yesterday:
What do you guys think about making this change to all of XBMC platforms?
...highlight "Done" key (instead of the "a" key) by default on Xbox, Linux, and Windows.
Modified: branches/linuxport/XBMC/xbmc/GUIDialogKeyboard.cpp
===================================================================
--- branches/linuxport/XBMC/xbmc/GUIDialogKeyboard.cpp 2008-03-11 06:54:40 UTC (rev 12012)
+++ branches/linuxport/XBMC/xbmc/GUIDialogKeyboard.cpp 2008-03-11 06:55:43 UTC (rev 12013)
@@ -72,6 +72,13 @@
Quote:[OS X] Support for defaulting to highlight "Done" key on virtual keyboards.What this does is default to highlighting to the "Done" key (instead of the "a" key) which makes using a physical keyboard natural as with this change pressing the "Enter" key now clicks in the "Done" key (instead of the "a" key)
What do you guys think about making this change to all of XBMC platforms?
...highlight "Done" key (instead of the "a" key) by default on Xbox, Linux, and Windows.
Modified: branches/linuxport/XBMC/xbmc/GUIDialogKeyboard.cpp
===================================================================
--- branches/linuxport/XBMC/xbmc/GUIDialogKeyboard.cpp 2008-03-11 06:54:40 UTC (rev 12012)
+++ branches/linuxport/XBMC/xbmc/GUIDialogKeyboard.cpp 2008-03-11 06:55:43 UTC (rev 12013)
@@ -72,6 +72,13 @@
Code:
void CGUIDialogKeyboard::OnInitWindow()
{
+#ifdef __APPLE__
+ // Override skin defaults to always make the defaul control 'DONE' to allow
+ // natual entry on keyboards.
+ //
+ m_dwDefaultFocusControlID = 300;
+#endif
+
CGUIDialog::OnInitWindow();
m_bIsConfirmed = false;
@@ -99,7 +106,11 @@
bool CGUIDialogKeyboard::OnAction(const CAction &action)
{
- if (action.wID == ACTION_BACKSPACE)
+ if (action.wID == ACTION_BACKSPACE
+#ifdef __APPLE__
+ || action.wID == ACTION_PARENT_DIR
+#endif
+ )
{
Backspace();
return true;
@@ -177,6 +188,7 @@
bool CGUIDialogKeyboard::OnMessage(CGUIMessage& message)
{
CGUIDialog::OnMessage(message);
+
switch ( message.GetMessage() )
{