-
-
Notifications
You must be signed in to change notification settings - Fork 29
Adds Big Thumbs mode: logging directly from spots tab. #176
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
Adds Logging setting: mobile mode. When set, height of spots rows on spots screen is increased, the text enlarged and reaaranged for easier viewing while mobile. A long press event will log the spot and bring query the callsign. not working: multi-op spots dont log correctly and qsos in list dont have filled in data. Need to add rest of logging code to new modal.
SpotItem component into its own Component Logic for picking the component to display is pulled up into SpotList. Also finish fixing the logging for Multiple-OP spots.
… log or cancel. The new modal gives hunter chance to pull up info without logging.
sd
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ready to merge this, but have some tiny nitpicks that I'd rather have fixed on the PR than afterwards.
Also, add something to RELEASE-NOTES.json, and yourself on CreditSettingsScreen.jsx
| @@ -0,0 +1,341 @@ | |||
| // cmw | |||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Add license header here, with your own copyright line
| @@ -0,0 +1,153 @@ | |||
| /* | |||
| * Copyright ©️ 2024-2025 Sebastian Delmont <sd@ham2k.com> | |||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Add your own copyright line here
| @@ -0,0 +1,153 @@ | |||
| /* | |||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Rename this component to something like "BigThumbsSpotItem"
| import { paperNameOrHam2KIcon, H2kPressable } from '../../../../ui' | ||
|
|
||
| /** | ||
| * When settings Mobile Mode is true, this is used to render spots in SpotList. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
"When Big Thumbs Mode is enabled ..."
| * It's the same as SpotItem but with some padding and different layout for better viewing | ||
| * while mobile with a phone or tablet in a mounted holder. | ||
| */ | ||
| const MobileSpotItem = React.memo(function QSOItemMobile ({ spot, styles, onPress, onLongPress }) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Rename the component, and also the function name (both should be the same name)
| borderWidth: DEBUG ? 1 : 0 | ||
| } | ||
|
|
||
| const mobileStyles = { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
bigThumbsStyles
| onPress={() => dispatch(setSettings({ leftieMode: !settings.leftieMode }))} | ||
| /> | ||
|
|
||
| <H2kListItem title={'Big Thumb Mode'} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
lets make this devMode only, for now...
{settings.devMode && (
<H2kListItem...
leftIconColor={styles.colors.devMode}
/>
)}
| /> | ||
|
|
||
| <H2kListItem title={'Big Thumb Mode'} | ||
| description={settings.bigThumbMode ? 'Use big thumb mode: log from spots list with a long press' : 'Use normal logging' } |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
lets use the plural bigThumbsMode
| await hook.extraSpotInfo({ online, settings, dispatch, spot }) | ||
| } | ||
|
|
||
| if (settings.bigThumbMode === true) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
lets use the plural bigThumbsMode
| const spot = item | ||
| return ( | ||
| <SpotItem key={spot.key} spot={spot} onPress={onPress} styles={styles} style={{ paddingRight, paddingLeft }} extendedWidth={extendedWidth} /> | ||
| (settings.bigThumbMode ? ( |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
lets use the plural bigThumbsMode
Add myself to credits


Mobile mode is intended to be used by hunters for logging spots (POTA, SOTA, etc) while mobile (/M) with their device in phone mount or other similar contraption. At least that's how I've been using this. And my goal was to reduce the number of touches needed to log a spot and make it easier to read from a few feet away on a phone screen
Changes:
Adds a Logging setting to turn on Mobile Mode.
Add ability to log from long pressing a spot in the spot list.
Also formats the spots in the list to make it easier to read at a quick glance by doing the following:
Possible issues
I did nothing with the splitview mode as I don't have a tablet nor am I going to log mobile using such a device. The changes shouldn't use the new log popup when in that mode but I can not verify.
Not tested on IOS
Screenshots
These are in dark mode but the changes use theme colors so should look OK on light mode. Recorded in emulator so its sluggish.
Logging by long pressing.
example of the lookups that got cut off in other gif: