2022-12-09 - PinePhone UI Customization

PinePhone UI Customization

Since tweaking the on-screen keyboard, my phone has been a lot more usable. I’ve actually removed the hardware keyboard to force myself to make more useful additions to the UI because it was awkward to use it without a physical keyboard.

Initial Setup

Here’s the initial setup I created for it:

Hardware buttons:

The up button would run whatever is in the script I’m experimenting on. For example, I’m customizing keyboard layouts, so I was using this to launch rofi with a menu to choose the keyboard to launch.

Lisgd (libinput synthetic gesture daemon)

gestures:

On-screen Keyboard:

The setup now

Same as the initial setup, but adds:

Removed the keyboard opening swipe and replaces it with a urxvt opening swipe:

On-screen Keyboards:

Changed the hardware buttons around, too:

Hardware buttons:

I just discovered that if I disable the touchscreen, `lisgd` can still use it for gestures. So I changed the physical buttons around. The volume buttons are used for toggling between the touchscreen for interacting with applications or supporting the use of gestures. So the up and down buttons do the same thing, but the down button also opens the software keyboard.

When the keyboard is open I turn off gestures and can interact with whatever is on the screen just like a typical touchscreen. When the keyboard is closed, touching the screen only does gestures. Because there are situations where these modes may need to be mixed, pressing the top button simply toggles between gestures or touchscreen

I’ve also updated the script that turns the screen off to disable gestures.

The trickier bits and what else is needed…

In the future it will set a timer and put the phone to sleep. Then wake the phone up every X minutes long enough to reconnect and re-download IP-based messages. Anything coming over the cell modem will wake the phone immediately. So I’ll need to account for this and put the device back to sleep after some timeout.

I also need to debug an issue where it seems rofi is eating hardware button events such that I can’t toggle the software keyboard when I’m using rofi to display menus. This is frustrating, but I’m sure I’ll figure it out.

Oh, and I’ll need to make something for all the apps I used to have on the original Pine Phone…

This was a more focused continuation of UI elements of

a messier enumeration of other stuff

.

Tags

#pinephone

Backlinks

config snippets: lisgd & touch

Navigation

index

all tags

prev ⏰

⏰ next

updated: 2023-02-15 18:59:13 -0500

generated: 2023-03-12