Skip to content

Commit 6ee57d8

Browse files
committed
Use correctly-sized icon sources + add Tab navigation between form fields
1 parent c8b6037 commit 6ee57d8

2 files changed

Lines changed: 16 additions & 4 deletions

File tree

assets/mango-app-icon-40.png

Loading

src/app.ts

Lines changed: 16 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -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 {
799807
refreshConnectionList();
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');
803811
heroLogo.setSize(mobile ? 40 : 44, mobile ? 40 : 44);
804812

805813
const 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');
906914
browserLogo.setSize(24, 24);
907915

908916
const browserTitle = Text('Mango');
@@ -916,6 +924,10 @@ const dbField = TextField('database', (val: string) => { currentDbName = val; })
916924
const collField = TextField('collection', (val: string) => { currentCollName = val; });
917925
const 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
920932
const breadcrumb = Text('');
921933
textSetFontSize(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');
14681480
infoLogo.setSize(80, 80);
14691481

14701482
const infoTitle = Text('Mango');

0 commit comments

Comments
 (0)