Replies: 1 comment
-
|
Hello @uznbt, Very interesting :) Best, Sorry I'm slow because I'm quite busy in my personal life |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
Halo semuanya!
Awalnya saya melakukan modifikasi pada kode (fork) elecwhat ini murni untuk penggunaan pribadi saya karena ada beberapa hal yang kurang nyaman digunakan sehari-hari. Namun, dengan bantuan AI coding assistant, kodenya berhasil diperbaiki dan dioptimalkan secara signifikan, jadi saya rasa akan sangat bermanfaat untuk dibagikan ke hulu (upstream) proyek ini atau bagi siapapun yang membutuhkannya.
Berikut adalah beberapa fitur baru dan bugfix krusial yang ditambahkan/diperbaiki:
1. Penambahan Fitur "Auto Run & Minimize"
Menambahkan opsi centang di menu system tray agar pengguna bisa mengatur aplikasi untuk menyala otomatis (auto start) saat komputer dinyalakan, dan langsung berjalan secara tersembunyi (minimized) di background.
Pengaturannya disimpan secara persisten.
Menambahkan translasi penuh untuk opsi menu ini di semua file locale (en.json, de.json, fr.json, it.json, pt.json), sekaligus saya juga menambahkan id.json untuk bahasa Indonesia.
2. Perbaikan Total Navigasi Link WhatsApp & Undangan Grup (Mencegah Blank Screen & Browser Eksternal)
Sebelumnya, jika kita menekan link grup (
chat.whatsapp.com) atauwa.me, terjadi banyak bug yang sangat mengganggu seperti browser eksternal ikut terbuka, aplikasi ter-reload secara penuh (layar hijau loading), atau malah muncul blank white screen. Ini semua sudah diperbaiki melalui beberapa langkah:injected.js: Sebelumnya,injected.jsmencegat SEMUA klik pada link<a target="_blank">dan memaksanya diproses olehshell.openExternal(). Akibatnya, internal React Router milik WhatsApp ter-bypass dan browser eksternal (seperti Firefox) justru terbuka. Kodeinjected.jskini sudah diperbaiki untuk mengabaikan hostname khusus WA (chat.whatsapp.com,api.whatsapp.com, dll) sehingga WhatsApp Web bisa menanganinya secara native dan memunculkan overlay undangan grup dengan mulus tanpa reload.l.wl.co: WhatsApp diam-diam membungkus link grup di dalam chat menggunakan URL pelacakhttps://l.wl.co/l?u=.... Hal ini menipu filtersetWindowOpenHandlerbawaan elecwhat. Sekarang, ada fungsi unwrapper (extractRealUrl) dimain.mjsyang bisa mendeteksil.wl.codan mengekstrak URL aslinya agar tertangkap oleh filter internal protocol.whatsapp://chat/ke Endpoint yang Benar: Saat link dipanggil dari aplikasi luar (misal browser memanggil schemewhatsapp://), fungsiconvertWhatsAppUrlsalah menerjemahkannya menjadiweb.whatsapp.com/chat/?code=.... Karena WA Web tidak punya halaman/chat/, yang muncul adalah layar putih (404 white screen). Kodenya kini dikoreksi untuk menerjemahkannya dengan benar keweb.whatsapp.com/accept?code=....a.click()secara silent ke dalam webview. Hal ini menghindari full page reload. Saya juga sudah memperbarui tangkapan error/promise rejection padaexecuteJavaScripttersebut agar tidak memunculkanUnhandledPromiseRejectionWarningdi konsol.Perbaikan ini membuat user experience (UX) saat bergabung ke grup atau membuka link chat dari internal maupun eksternal menjadi luar biasa mulus, persis seperti aplikasi WhatsApp Desktop native.
Jika maintainer merasa ini berguna, silakan review dan mungkin beberapa logika perbaikan ini bisa diintegrasikan ke versi utama!
https://github.com/uznbt/whatszan
Terima kasih!
Beta Was this translation helpful? Give feedback.
All reactions