qwertyquerty/pypresence

Using pypresence with tkinter crashes root window

DylDevs opened this issue · 1 comments

Whenever I execute the example code below, the tkinter window stops responding.

from pypresence import Presence
import time
import tkinter

def discordrpc():
    client_id = "xxxxxxxxxxxxxxxxxxx"
    RPC = Presence(client_id)
    RPC.connect()

    RPC.update(state="ETS2", details="Using Lane Assist")

    while True:
        time.sleep(15)

root = tkinter.Tk()

button = tkinter.Button(root, text="Connect", command=discordrpc)
button.grid()

root.mainloop() 

Fixed

import time
from pypresence import Presence
import tkinter
import threading

start = int(time.time())
client_id = "xxxxxxxxxxxxxxx"
RPC = Presence(client_id)
RPC.connect()

def discordrpc():
    while True:
        RPC.update(
            details = "Demo",
            state = "Demo",
        )
        time.sleep(5)


thread = threading.Thread(target=discordrpc)

root = tkinter.Tk()
root.geometry('500x500')

button = tkinter.Button(root, text="Connect", command=lambda: thread.start())
button.grid()

root.mainloop()