xpra icon
Bug tracker and wiki

Opened 3 years ago

Last modified 5 months ago

#812 assigned task

re-implement clipboard without gtk or nested main

Reported by: Antoine Martin Owned by: Antoine Martin
Priority: major Milestone: 3.0
Component: core Version: trunk
Keywords: Cc: onlyjob@…

Description (last modified by Antoine Martin)

As it is, it is just too problematic: too many bugs to list, including some unresolved ones: #669, #452 (it is also causing hangs with #598).

We should be able to rip it out and just use plain X11 calls, hopefully GTK won't get too confused by this...

We can keep the existing code, at least client side, for the non-X11 platforms.

Link: x-cut-and-paste

Change History (9)

comment:1 Changed 3 years ago by Antoine Martin

Status: newassigned

Another reason for doing this, just hit this today (not sure how):

RuntimeError: maximum recursion depth exceeded
Traceback (most recent call last):
  File "/usr/lib64/python2.7/site-packages/xpra/clipboard/clipboard_base.py", line 167, in _get_clipboard_from_remote_handler
Error in sys.excepthook:
Traceback (most recent call last):
  File "/usr/lib64/python2.7/site-packages/xpra/gtk_common/quit.py", line 67, in gtk_main_quit_on_fatal_exception
    print(traceback.print_exception(etype, val, tb))
  File "/usr/lib64/python2.7/traceback.py", line 125, in print_exception
    print_tb(tb, limit, file)
  File "/usr/lib64/python2.7/traceback.py", line 69, in print_tb
    line = linecache.getline(filename, lineno, f.f_globals)
  File "/usr/lib64/python2.7/linecache.py", line 14, in getline
    lines = getlines(filename, module_globals)
  File "/usr/lib64/python2.7/linecache.py", line 40, in getlines
    return updatecache(filename, module_globals)
RuntimeError: maximum recursion depth exceeded

Original exception was:
Traceback (most recent call last):
  File "/usr/lib64/python2.7/site-packages/xpra/clipboard/clipboard_base.py", line 167, in _get_clipboard_from_remote_handler
    log("get clipboard from remote handler id=%s", request_id)
RuntimeError: maximum recursion depth exceeded

comment:2 Changed 3 years ago by Antoine Martin

Description: modified (diff)

comment:3 Changed 2 years ago by onlyjob

Cc: onlyjob@… added

comment:4 Changed 2 years ago by Antoine Martin

comment:5 Changed 2 years ago by Antoine Martin

Milestone: 0.161.0

Re-scheduling due to lack of time.

Another item worth considering during the re-write would be to make all clipboards "greedy" like the win32 and osx ones, or at least having the option of doing that.

#1018 is a duplicate of this ticket.

Last edited 2 years ago by Antoine Martin (previous) (diff)

comment:6 Changed 17 months ago by Antoine Martin

Milestone: 1.01.1

Milestone renamed

comment:7 Changed 16 months ago by Antoine Martin

Milestone: 1.12.0

Milestone renamed

comment:8 Changed 10 months ago by Antoine Martin

Milestone: 2.03.0

Likely to be quite hard.

comment:9 Changed 5 months ago by Antoine Martin

See also: #1589 GTK3 clipboard support

Note: See TracTickets for help on using tickets.