Adds backend selection and BCR settings access#219
Adds backend selection and BCR settings access#219Palatis wants to merge 16 commits intonicorac:devfrom
Conversation
|
@nicorac this is really the first time i code with angular.js / ionic / capacitor, so if anything looks dirty or smells bad, please accept my apology. some "good practice" advice would be really appreciated. |
ac03432 to
b850236
Compare
|
I've had a look to your code and I really appreciate it. I've cherry-picked your changes and squashed them in a single commit, to keep the history clean. After your now-single commit, I've added mine with some changes/cleanup:
Please have a look so I can merge it to dev and release 😉 |
|
And another thing I've removed from your changes: the update to package.json libs. I don't take this lightly; this change could potentially break the entire app... |
this is probably a "rebase dev" did, i always try to rebase master/dev branch for easier merge. i avoid touching unnecessary files on PR. as you can see, i try to break commits into small and single function for easy review / cherry-pick. and i swear i didn't touch packaging / build / manifest stuff on purpose, since they're irrelevant to this PR.
|
The i18n string is intended to mark emphasis, not presentation. Replace <b> with <strong> to express semantic importance and leave visual rendering decisions to styling and theming layers. This also improves accessibility and future flexibility without changing user-visible behavior.
b850236 to
6670a0a
Compare
i picked the word "backend" because what i understand is
maybe
there was a inner fight between "enum-like indication" and "recorder package id" when i try to decide this, and finally i choose to use the package id for these reasons:
my implementation doesn't show anything on UI when even with the dictionary-lookup method like what you suggested, i would still prefer to use full package id as the key.
sure, no prob.
i'm planning on moving the filename pattern over here, too. like when user select their recorder app, change the default filename pattern accordingly. but i gotta learn some more about "angular.js / capacitor" devel stack before i can do that properly... |
- replaced "backend" with "call recorder" or simply "recorder" - new type with supported recorder apps names (to avoid free strings) - reworded settings labels and help text to ease translations - cleaned up settings page
Updates the recorder app selection to 1. use the full app ID for better identification. 2. ability to use localized recorder app names, improving the user experience by displaying names in the user's preferred language.
Replaces hardcoded recorder help text with a translation key. This ensures the text is properly localized for different languages.
Adds translations for recorder settings in the zh-Hant language file. This includes settings labels and help texts related to call recorder integration, specifically for "Simple Call Recorder (BCR)". It allows the app to display appropriate settings for call recording functionality, enhancing the user experience for Traditional Chinese speakers.
|
I just did
it now:
TODO:
|
Extends settings to support different call recorder applications. Introduces recorder app options with their specific filename patterns for better integration and customization. Also adds a radio group for custom filename pattern selection, allowing users to choose between the default pattern for their selected recorder app or a custom pattern.
Adds translations for new settings related to recorder app name and filename pattern. This improves the user experience for users of the application.
e490a8f to
4fc8a55
Compare
41ae996 to
81f4ca0
Compare
Improves the user experience on the settings page by enabling buttons on item elements to trigger their respective actions. Also adds event stop propagation to prevent the button click from triggering the parent item click. This change makes the settings page more intuitive and responsive.
Improves the user experience on the settings page by making list items act as buttons, providing a clearer visual cue for interaction. Prevents event bubbling to ensure the correct actions are triggered when interacting with nested elements within the settings items.
81f4ca0 to
c615d20
Compare
|
I see you changed the behavior of items in the settings page. I suppose you'd like to ease the opening of setting editors BUT... this is risky: Android UI tells a click apart from a scroll by measuring the press time before the finger moves. That's why I like to have small defined active areas in each setting item 😉 |
|
was trying to mimic the behavior of System Settings UI (Preference UI). btw, the "default country number" entry is difficult to hit, because the area is not very large. |





Adds a setting to select a recording backend and provides call-recorder specific settings below.
implements the
BcrGuiPlugin.launchActivity()method to open specific activities from specific package (it actually sends an intent).currently only BCR is implemented, but leaves room for other recording apps, too.
for BCR, it allows the user to open BCR's settings directly from within the application.