Add debug output for relay URL update issue
- Always trigger on_session_id callback when server returns session ID - Add debug prints to trace URL update flow 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -413,15 +413,19 @@ class MainWindow(QMainWindow):
|
|||||||
def update_ip_label(self):
|
def update_ip_label(self):
|
||||||
"""Update the IP address label."""
|
"""Update the IP address label."""
|
||||||
# Check if relay is connected and has a session ID
|
# Check if relay is connected and has a session ID
|
||||||
if self.relay_client and self.relay_client.is_connected():
|
relay_connected = self.relay_client and self.relay_client.is_connected()
|
||||||
session_id = self.settings_manager.get_relay_session_id()
|
session_id = self.settings_manager.get_relay_session_id()
|
||||||
if session_id:
|
print(f"[DEBUG] update_ip_label: relay_connected={relay_connected}, session_id={session_id}")
|
||||||
relay_url = self.settings_manager.get_relay_url()
|
|
||||||
# Convert wss:// to https:// for display
|
if relay_connected and session_id:
|
||||||
base_url = relay_url.replace('wss://', 'https://').replace('ws://', 'http://')
|
relay_url = self.settings_manager.get_relay_url()
|
||||||
base_url = base_url.replace('/desktop', '').rstrip('/')
|
# Convert wss:// to https:// for display
|
||||||
self.ip_label.setText(f"{base_url}/{session_id}")
|
base_url = relay_url.replace('wss://', 'https://').replace('ws://', 'http://')
|
||||||
return
|
base_url = base_url.replace('/desktop', '').rstrip('/')
|
||||||
|
full_url = f"{base_url}/{session_id}"
|
||||||
|
print(f"[DEBUG] Setting relay URL: {full_url}")
|
||||||
|
self.ip_label.setText(full_url)
|
||||||
|
return
|
||||||
|
|
||||||
# Fall back to local IP
|
# Fall back to local IP
|
||||||
try:
|
try:
|
||||||
@@ -664,6 +668,7 @@ class MainWindow(QMainWindow):
|
|||||||
|
|
||||||
def on_relay_session_id(self, session_id: str):
|
def on_relay_session_id(self, session_id: str):
|
||||||
"""Handle receiving session ID from relay."""
|
"""Handle receiving session ID from relay."""
|
||||||
|
print(f"[DEBUG] on_relay_session_id called with: {session_id}")
|
||||||
self.settings_manager.set_relay_session_id(session_id)
|
self.settings_manager.set_relay_session_id(session_id)
|
||||||
QTimer.singleShot(0, self.update_ip_label)
|
QTimer.singleShot(0, self.update_ip_label)
|
||||||
|
|
||||||
|
|||||||
@@ -144,7 +144,8 @@ class RelayClient:
|
|||||||
# Mark as connected before callbacks so update_ip_label works
|
# Mark as connected before callbacks so update_ip_label works
|
||||||
self._connected = True
|
self._connected = True
|
||||||
new_session_id = response.get("sessionId")
|
new_session_id = response.get("sessionId")
|
||||||
if new_session_id and new_session_id != self.session_id:
|
# Always update session_id and trigger callback to ensure URL updates
|
||||||
|
if new_session_id:
|
||||||
self.session_id = new_session_id
|
self.session_id = new_session_id
|
||||||
if self.on_session_id:
|
if self.on_session_id:
|
||||||
self.on_session_id(new_session_id)
|
self.on_session_id(new_session_id)
|
||||||
|
|||||||
Reference in New Issue
Block a user