Release version 0.9.7-4: Gesture & Console Improvements
Major Changes: 1. FIXED: Virtual console Ctrl+Alt+F1-F8 key combinations now work properly - Updated configure_virtual_consoles() to modify X11 serverflags - Enable/disable now updates both systemd getty AND X11 VT switching - Added restart lightdm notification for changes to take effect - Fixed initial installation to set X11 VT switching based on user choice - Users who previously enabled consoles must re-enable for keys to work 2. IMPROVED: Simplified hidden tab gesture to single toggle - 3-finger DOWN now toggles hidden tabs (both show AND hide) - Removed separate 3-finger UP gesture (simpler UX) - Updated all gesture handlers in both standard and Jitsi modes - Updated all console.log messages and documentation README Updates: - Updated all version references to 0.9.7-4 - Updated Touch Gesture Quick Reference table - Simplified gesture: 3-finger DOWN = Toggle hidden tabs - Updated hidden tabs documentation to reflect toggle behavior - Added important notes about virtual console fix in 0.9.7-4 - Added instructions to re-enable consoles for existing users - Updated menu system access examples - Updated project status to "Gesture & Console Improvements" This release focuses on fixing the console key combo issue and improving the hidden tab gesture for easier one-handed use.
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
# Ubuntu Based Kiosk (UBK)
|
||||
|
||||
**Current Version:** 0.9.7-3 (check script header for latest version)
|
||||
**Current Version:** 0.9.7-4 (check script header for latest version)
|
||||
**Built with Claude Sonnet 4/.5 AI assistance**
|
||||
**License:** GPL v3 - Keep derivatives open source
|
||||
**Repository:** https://github.com/outis1one/ubk/
|
||||
@@ -47,9 +47,9 @@ Home/office kiosk for reusing old hardware, displaying:
|
||||
# Enable SSH during installation
|
||||
|
||||
# Download and run installer
|
||||
wget https://github.com/outis1one/ubk/raw/main/install_kiosk_0.9.7-3.sh
|
||||
chmod +x install_kiosk_0.9.7-3.sh
|
||||
./install_kiosk_0.9.7-3.sh
|
||||
wget https://github.com/outis1one/ubk/raw/main/install_kiosk_0.9.7-4.sh
|
||||
chmod +x install_kiosk_0.9.7-4.sh
|
||||
./install_kiosk_0.9.7-4.sh
|
||||
```
|
||||
|
||||
The installer will guide you through configuration during setup.
|
||||
@@ -365,8 +365,7 @@ smb://WORKGROUP/COMPUTER/PrinterName
|
||||
|---------|---------|-----------|--------|
|
||||
| Swipe | 2 | Left/Right | Switch between sites |
|
||||
| Swipe | 1 | Left/Right | Navigate within page (arrow keys) |
|
||||
| Swipe | 3 | Up | Show hidden tabs (PIN required) |
|
||||
| Swipe | 3 | Down | Return to normal tabs |
|
||||
| Swipe | 3 | Down | Toggle hidden tabs (PIN required) |
|
||||
|
||||
**Keyboard Shortcuts:**
|
||||
- `Ctrl+Tab` or `Ctrl+]` - Next tab
|
||||
@@ -383,7 +382,7 @@ smb://WORKGROUP/COMPUTER/PrinterName
|
||||
|
||||
```bash
|
||||
# Run installer script again to access menu
|
||||
./install_kiosk_0.9.7-3.sh
|
||||
./install_kiosk_0.9.7-4.sh
|
||||
|
||||
# Menu structure:
|
||||
# 1. Core Settings - Sites, WiFi, schedules, passwords, full reinstall, complete uninstall
|
||||
@@ -478,8 +477,8 @@ echo "NOPIN" | sudo -u kiosk tee /home/kiosk/kiosk-app/.jitsi-pin
|
||||
- Triggers inactivity timeout (returns to home after idle time)
|
||||
|
||||
**Hidden (duration = -1):**
|
||||
- Accessible via 3-finger up swipe + PIN
|
||||
- Return to normal tabs via 3-finger down swipe or Escape key
|
||||
- Toggle visibility via 3-finger down swipe + PIN, or F10 key
|
||||
- Also use Escape key to return to normal tabs
|
||||
- PIN stored in `/home/kiosk/kiosk-app/.jitsi-pin`
|
||||
- Default PIN: 1234 (configurable via Sites menu)
|
||||
- PIN can be 4-8 digits or disabled completely
|
||||
@@ -623,16 +622,24 @@ Virtual consoles provide terminal access via Ctrl+Alt+F1 through F8 keyboard com
|
||||
**Post-Install Management:**
|
||||
```bash
|
||||
# Access via menu: Advanced → Virtual Consoles (option 7)
|
||||
# Note: Changes require restarting the display manager to take effect
|
||||
|
||||
# Manual enable
|
||||
for i in {1..8}; do sudo systemctl unmask getty@tty$i.service; done
|
||||
sudo systemctl daemon-reload
|
||||
sudo systemctl restart lightdm
|
||||
|
||||
# Manual disable
|
||||
for i in {1..8}; do sudo systemctl mask getty@tty$i.service; done
|
||||
sudo systemctl daemon-reload
|
||||
sudo systemctl restart lightdm
|
||||
```
|
||||
|
||||
**Important Notes:**
|
||||
- **Version 0.9.7-4** fixed Ctrl+Alt+F1-F8 key combinations (now properly enables/disables X11 VT switching)
|
||||
- If you enabled virtual consoles in an earlier version, you must re-enable them from the menu for keys to work
|
||||
- Changes require restarting lightdm: `sudo systemctl restart lightdm`
|
||||
|
||||
**Typical TTY Layout:**
|
||||
- TTY1-6: Login consoles (if enabled)
|
||||
- TTY7: Graphical kiosk display (X11/LightDM)
|
||||
@@ -687,7 +694,7 @@ Full system cleanup that removes all kiosk components and restores the system to
|
||||
**Access:**
|
||||
```bash
|
||||
# Core Settings menu → option 11
|
||||
./install_kiosk_0.9.7-3.sh
|
||||
./install_kiosk_0.9.7-4.sh
|
||||
# Choose: Core Settings → Complete Uninstall
|
||||
```
|
||||
|
||||
@@ -849,7 +856,7 @@ See the LICENSE file in the repository for full terms.
|
||||
|
||||
## Project Status & Future Plans
|
||||
|
||||
**Current Version:** 0.9.7-3 - Install Improvements & Management Features
|
||||
**Current Version:** 0.9.7-4 - Gesture & Console Improvements
|
||||
|
||||
**Planned Features:**
|
||||
- Web-based GUI configuration interface
|
||||
@@ -892,4 +899,4 @@ Special thanks to the maintainers of all upstream projects that make UBK possibl
|
||||
---
|
||||
|
||||
*Last Updated: December 2, 2024*
|
||||
*Version: 0.9.7-3*
|
||||
*Version: 0.9.7-4*
|
||||
|
||||
@@ -998,9 +998,9 @@ configure_hidden_site_pin() {
|
||||
echo " ═══ HIDDEN SITE PIN ═══"
|
||||
echo
|
||||
echo "The PIN protects access to hidden sites (duration: -1)"
|
||||
echo "Hidden sites can be accessed via:"
|
||||
echo "Hidden sites can be toggled via:"
|
||||
echo " • F10 key"
|
||||
echo " • 3-finger DOWN swipe"
|
||||
echo " • 3-finger DOWN swipe (shows/hides)"
|
||||
echo
|
||||
|
||||
local pin_file="$KIOSK_DIR/.jitsi-pin"
|
||||
@@ -5928,8 +5928,7 @@ const {contextBridge,ipcRenderer}=require('electron');
|
||||
|
||||
console.log('═════════════════════════════════════════════════════════════');
|
||||
console.log(' Gestures:');
|
||||
console.log(' 3-finger DOWN: Show hidden tabs (PIN required)');
|
||||
console.log(' 3-finger UP: Return to normal tabs');
|
||||
console.log(' 3-finger DOWN: Toggle hidden tabs (PIN required)');
|
||||
console.log(' 2-finger HORIZONTAL: Switch between sites');
|
||||
console.log(' Keyboard: Auto-shows on text fields or click icon');
|
||||
console.log('╚═══════════════════════════════════════════════════════════╝');
|
||||
@@ -6192,16 +6191,11 @@ window.addEventListener('DOMContentLoaded',()=>{
|
||||
const absX=Math.abs(deltaX);
|
||||
const absY=Math.abs(deltaY);
|
||||
|
||||
// 3-finger DOWN = show hidden tabs (easier than up)
|
||||
// 3-finger DOWN = toggle hidden tabs (show/hide)
|
||||
if(fingerCount===3&&absY>SWIPE_THRESHOLD&&absX<SWIPE_TOLERANCE&&deltaY>0){
|
||||
console.log('[TOUCH] 3-finger DOWN - show hidden tab');
|
||||
console.log('[TOUCH] 3-finger DOWN - toggle hidden tabs');
|
||||
ipcRenderer.send('toggle-hidden');
|
||||
}
|
||||
// 3-finger UP = return to normal tabs (close hidden)
|
||||
else if(fingerCount===3&&absY>SWIPE_THRESHOLD&&absX<SWIPE_TOLERANCE&&deltaY<0){
|
||||
console.log('[TOUCH] 3-finger UP - return to normal tabs');
|
||||
ipcRenderer.send('return-to-tabs');
|
||||
}
|
||||
// 2-finger HORIZONTAL = change tabs
|
||||
else if(fingerCount===2&&absX>SWIPE_THRESHOLD&&absY<SWIPE_TOLERANCE){
|
||||
ipcRenderer.send(deltaX>0?'swipe-right':'swipe-left');
|
||||
@@ -8321,17 +8315,10 @@ window.addEventListener('DOMContentLoaded',()=>{
|
||||
const absX=Math.abs(deltaX);
|
||||
const absY=Math.abs(deltaY);
|
||||
|
||||
// 3-finger gestures for hidden tabs
|
||||
if(fingerCount===3 && absY>SWIPE_THRESHOLD && absX<SWIPE_TOLERANCE){
|
||||
if(deltaY>0){
|
||||
// 3-finger DOWN = show hidden tabs (easier than up)
|
||||
console.log('[TOUCH] 3-finger DOWN - show hidden tab');
|
||||
ipcRenderer.send('toggle-hidden');
|
||||
} else if(deltaY<0){
|
||||
// 3-finger UP = return to normal tabs
|
||||
console.log('[TOUCH] 3-finger UP - return to normal tabs');
|
||||
ipcRenderer.send('return-to-tabs');
|
||||
}
|
||||
// 3-finger DOWN = toggle hidden tabs (show/hide)
|
||||
if(fingerCount===3 && absY>SWIPE_THRESHOLD && absX<SWIPE_TOLERANCE && deltaY>0){
|
||||
console.log('[TOUCH] 3-finger DOWN - toggle hidden tabs');
|
||||
ipcRenderer.send('toggle-hidden');
|
||||
}
|
||||
// 2-finger vertical DOWN = keyboard (ALWAYS works, no throttling)
|
||||
else if(fingerCount===2 && absY>SWIPE_THRESHOLD && absX<SWIPE_TOLERANCE && deltaY>0){
|
||||
|
||||
Reference in New Issue
Block a user