mobile: Enter=newline on mobile, hide preview zoom buttons; desktop: downloads to Downloads folder (batch133)
- Mobile: the Return key now inserts a newline instead of sending (send via the button, like every native chat app). Desktop keeps Enter=send / Shift+Enter=newline. - Image preview: hide the on-screen +/- zoom buttons on mobile (pinch-to-zoom covers it). - Desktop (Electron): a will-download handler saves straight to the OS Downloads folder with no "where to save?" dialog, de-duping the name if it exists. NOTE: desktop code only — NOT published to the update feed (needs an explicit desktop rebuild/publish). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -1100,6 +1100,7 @@
|
||||
Making every focusable text field exactly 16px is the only reliable prevention — and it's belt-and-
|
||||
suspenders for the native app too. autoGrow's empty-guard keeps the composer at one line despite this. */
|
||||
.composer-row input, .composer-row textarea, input[type="text"], input[type="search"], input[type="email"], input[type="tel"], input[type="url"], input[type="password"], input[type="number"], input:not([type]), textarea, select{font-size:16px;}
|
||||
.lightbox .lb-zoom{display:none;} /* mobile: pinch-to-zoom the image directly — the on-screen +/- buttons are redundant clutter */
|
||||
/* Native-style push/pop: the conversation slides in from the right when opened and slides back out
|
||||
when you go back, so navigation has a clear direction (like Teams/WhatsApp). */
|
||||
/* Native-style push/pop (like iOS/Teams): the conversation (.content) slides in from the right while
|
||||
@@ -1151,7 +1152,7 @@
|
||||
</head>
|
||||
<body>
|
||||
<script src="/icons.js?v=6"></script>
|
||||
<script>window.__BUILD='2026-07-19-batch132';console.log('%cBiz Connect','color:#1F3B73;font-weight:bold','build '+window.__BUILD);
|
||||
<script>window.__BUILD='2026-07-19-batch133';console.log('%cBiz Connect','color:#1F3B73;font-weight:bold','build '+window.__BUILD);
|
||||
// Emoji are rendered with the OS's own (colour) emoji font — instant, zero network.
|
||||
//
|
||||
// We used to run Twemoji over every emoji, which swapped each one for an <img> pulled INDIVIDUALLY from
|
||||
@@ -2892,7 +2893,7 @@ async function openConvo(kind,id){
|
||||
inpEl.addEventListener('paste', onPaste);
|
||||
inpEl.addEventListener('input', ()=>{ maybeAutocorrect(inpEl); autoGrow(inpEl); setDraft(kind,id,inpEl.value); noteTyping(); }); // auto-correct common typos, keep the draft in sync + emit "typing…"
|
||||
inpEl.addEventListener('blur', ()=>{ stopTyping(); setTimeout(()=>{ const a=document.activeElement; const stillTyping=a&&(a.tagName==='TEXTAREA'||a.tagName==='INPUT'); if(!stillTyping && window.__bzResetKb) window.__bzResetKb(); }, 120); }); // #1: composer lost focus → keyboard is closing → drop the --kb lift so no empty gap remains
|
||||
inpEl.addEventListener('keydown', (e)=>{ if(e.key==='Enter' && !e.shiftKey){ if(mentionItems && mentionItems.length) return; e.preventDefault(); sendMessage(); } }); // Enter sends, Shift+Enter = newline
|
||||
inpEl.addEventListener('keydown', (e)=>{ if(e.key==='Enter' && !e.shiftKey && !isMobileUA()){ if(mentionItems && mentionItems.length) return; e.preventDefault(); sendMessage(); } }); // Desktop: Enter sends, Shift+Enter = newline. Mobile: the Return key inserts a newline (default) — you send with the send button, like every native chat app.
|
||||
// Desktop: LEFT-click a red-squiggled word → native spelling suggestions right there (the shell
|
||||
// pops a suggestions menu only if the clicked word is actually misspelled). No right-click needed.
|
||||
if(window.bizConnectNative && window.bizConnectNative.spellSuggestAt){
|
||||
|
||||
Reference in New Issue
Block a user