@@ -10,7 +10,7 @@ import {
1010 stackSetDistribution , stackSetAlignment ,
1111 setCornerRadius , setPadding ,
1212 scrollviewSetChild ,
13- textfieldSetString , textfieldGetString ,
13+ textfieldSetString , textfieldGetString , textfieldSetNextKeyView ,
1414 textareaSetString , textareaGetString ,
1515 menuCreate , menuAddItem , menuAddSeparator , menuAddSubmenu ,
1616 menuBarCreate , menuBarAddMenu , menuBarAttach ,
@@ -587,6 +587,7 @@ function refreshConnectionList(): void {
587587 connecting = true ;
588588 buttonSetTitle ( connectBtn , t ( 'Connecting...' ) ) ;
589589 const uri = connectionUris [ connIdx ] || `mongodb://${ connectionHosts [ connIdx ] } :${ connectionPorts [ connIdx ] } ` ;
590+ showStatus ( 'Connecting to: ' + uri , false ) ;
590591 const ok = await connectToMongo ( uri ) ;
591592 if ( ok ) {
592593 widgetSetHidden ( statusText , 1 ) ;
@@ -702,6 +703,13 @@ function showConnectionForm(): void {
702703 const uriLabel = makeSecondary ( t ( 'Connection String' ) , 11 ) ;
703704 const uriField = TextField ( 'mongodb+srv://user:pass@cluster.example.com/db' , ( val : string ) => { formUri = val ; } ) ;
704705
706+ // Tab key navigation: name → host → port → user → pass → uri
707+ textfieldSetNextKeyView ( nameField , hostField ) ;
708+ textfieldSetNextKeyView ( hostField , portField ) ;
709+ textfieldSetNextKeyView ( portField , userField ) ;
710+ textfieldSetNextKeyView ( userField , passField ) ;
711+ textfieldSetNextKeyView ( passField , uriField ) ;
712+
705713 const saveBtn = Button ( 'Save Connection' , ( ) => {
706714 try {
707715 const name = textfieldGetString ( nameField ) || formName || t ( 'Untitled' ) ;
@@ -799,7 +807,7 @@ function showConnectionForm(): void {
799807refreshConnectionList ( ) ;
800808
801809// --- Hero banner (full-width via ScrollView Width alignment) ---
802- const heroLogo = ImageFile ( mobile ? 'assets/mango-app-icon-128 .png' : 'assets/mango-app-icon-44.png' ) ;
810+ const heroLogo = ImageFile ( mobile ? 'assets/mango-app-icon-40 .png' : 'assets/mango-app-icon-44.png' ) ;
803811heroLogo . setSize ( mobile ? 40 : 44 , mobile ? 40 : 44 ) ;
804812
805813const heroTitle = Text ( 'Mango' ) ;
@@ -902,7 +910,7 @@ const disconnectBtn = makeDangerBtn(t('Disconnect'), async () => {
902910} ) ;
903911
904912// Browser toolbar — logo + connection name + status
905- const browserLogo = ImageFile ( mobile ? 'assets/mango-app-icon-128.png' : 'assets/mango-app-icon-24.png' ) ;
913+ const browserLogo = ImageFile ( 'assets/mango-app-icon-24.png' ) ;
906914browserLogo . setSize ( 24 , 24 ) ;
907915
908916const browserTitle = Text ( 'Mango' ) ;
@@ -916,6 +924,10 @@ const dbField = TextField('database', (val: string) => { currentDbName = val; })
916924const collField = TextField ( 'collection' , ( val : string ) => { currentCollName = val ; } ) ;
917925const filterField = TextField ( 'filter: {}' , ( val : string ) => { currentFilter = val || '{}' ; } ) ;
918926
927+ // Tab navigation: database → collection → filter
928+ textfieldSetNextKeyView ( dbField , collField ) ;
929+ textfieldSetNextKeyView ( collField , filterField ) ;
930+
919931// Context breadcrumb
920932const breadcrumb = Text ( '' ) ;
921933textSetFontSize ( breadcrumb , 12 ) ;
@@ -1464,7 +1476,7 @@ function setAnalyticsEnabled(enabled: boolean): void {
14641476 saveState ( 'analyticsEnabled' , enabled ? '1' : '0' ) ;
14651477}
14661478
1467- const infoLogo = ImageFile ( mobile ? 'assets/mango-app-icon-128.png' : 'assets/mango-app-icon-80.png' ) ;
1479+ const infoLogo = ImageFile ( 'assets/mango-app-icon-80.png' ) ;
14681480infoLogo . setSize ( 80 , 80 ) ;
14691481
14701482const infoTitle = Text ( 'Mango' ) ;
0 commit comments