xpra icon
Bug tracker and wiki

Ticket #846: force-forward-configure-request.patch

File force-forward-configure-request.patch, 2.7 KB (added by Antoine Martin, 5 years ago)

with this hack of a patch, the window shows up with the right size and position

  • xpra/x11/gtk_x11/window.py

     
    13221322            def window_position(w, h):
    13231323                return  owner.window_position(self, w, h)
    13241324            self._do_update_client_geometry(window_size, window_position)
    1325         elif not self._setup_done:
     1325        else:   #if not self._setup_done:
    13261326            #try to honour initial size and position requests during setup:
    13271327            def window_size():
    13281328                return self.get_property("requested-size")
     
    13301330                return self.get_property("requested-position")
    13311331            log("_update_client_geometry: using initial size=%s and position=%s", window_size(), window_position())
    13321332            self._do_update_client_geometry(window_size, window_position)
     1333            if self._setup_done:
     1334                self.notify("geometry")
    13331335
    13341336    def _do_update_client_geometry(self, window_size_cb, window_position_cb):
    13351337        allocated_w, allocated_h = window_size_cb()
  • xpra/x11/gtk_x11/wm.py

     
    408408        # accurate info on what the app is actually requesting.
    409409        model = self._windows.get(event.window)
    410410        if model:
    411             log("do_child_configure_request_event(%s) value_mask=%s, should be handled by %s", event, configure_bits(event.value_mask), model)
    412             #should we be forwarding this?
    413             #model.do_child_configure_request_event(event)
     411            log("do_child_configure_request_event(%s) value_mask=%s, forwarding to %s", event, configure_bits(event.value_mask), model)
     412            model.do_child_configure_request_event(event)
    414413            return
    415414        log("do_child_configure_request_event(%s) value_mask=%s, reconfigure on withdrawn window", event, configure_bits(event.value_mask))
    416415        with xswallow:
  • xpra/x11/server.py

     
    464464        #TODO: find a better way to choose the timer delay:
    465465        #for now, we wait at least 100ms, up to 250ms if the client has just sent us a resize:
    466466        #(lcce should always be in the past, so min(..) should be redundant here)
    467         delay = max(100, min(250, 250 + 1000 * (lcce-time.time())))
     467        delay = 0   #max(100, min(250, 250 + 1000 * (lcce-time.time())))
    468468        self.snc_timer = gobject.timeout_add(int(delay), self.size_notify_clients, window, lcce)
    469469
    470470    def size_notify_clients(self, window, lcce):