diff --git a/browserevents.c b/browserevents.c index 74bb679..82ab576 100644 --- a/browserevents.c +++ b/browserevents.c @@ -27,6 +27,9 @@ /* Task record used for TaskMasterDA */ static WmTaskRec taskRec; +/* Search line control */ +static CtlRecHndl searchLineHandle; + static void HandleEvent(int eventCode, WmTaskRec *taskRec); static boolean DoLEEdit (int editAction); @@ -91,6 +94,13 @@ static void HandleEvent(int eventCode, WmTaskRec *taskRec) { DoMount(); break; + case forIIGSRadio: + case forAnyAppleIIRadio: + if (FindTargetCtl() != searchLineHandle) { + MakeThisCtlTarget(searchLineHandle); + } + break; + case disksList: if (taskRec->what == mouseDownEvt) { if (taskRec->wmClickCount == 2) { @@ -160,5 +170,6 @@ static boolean DoLEEdit (int editAction) { void InitEventState(void) { memset(&taskRec, sizeof(taskRec), 0); + searchLineHandle = GetCtlHandleFromID(window, searchLine); } diff --git a/browserwindow.c b/browserwindow.c index 61241f2..02a796f 100644 --- a/browserwindow.c +++ b/browserwindow.c @@ -103,7 +103,9 @@ void ShowBrowserWindow(void) { sysWindRecord.eventMask = 0xFFFF; //0x03FF; sysWindRecord.memoryID = myUserID; auxWindInfo->NDASysWindPtr = (Ptr)&sysWindRecord; - + + InitEventState(); + disksListHandle = GetCtlHandleFromID(window, disksList); mountButtonHandle = GetCtlHandleFromID(window, mountDiskButton); searchButtonHandle = GetCtlHandleFromID(window, searchButton); @@ -118,8 +120,6 @@ void ShowBrowserWindow(void) { moreResultsSelected = false; - InitEventState(); - diskList = malloc(DISK_LIST_MAX_LENGTH * sizeof(*diskList)); if (diskList == NULL) { CloseWindow(window); diff --git a/netdiskerror.h b/netdiskerror.h index 1db143d..5a4f35c 100644 --- a/netdiskerror.h +++ b/netdiskerror.h @@ -41,7 +41,7 @@ enum NetDiskError { NOT_MULTIPLE_OF_BLOCK_SIZE, NOT_SPECIFIED_IMAGE_TYPE, - /* Errors related to proccessing JSON result in the disk browser */ + /* Errors related to processing JSON result in the disk browser */ JSON_PARSING_ERROR = 900, NOT_EXPECTED_CONTENTS, };