Pass the window class and size settings when creating a grouped window
This commit is contained in:
parent
b08f4ab593
commit
3e511d217b
@ -78,10 +78,10 @@ class Boss:
|
|||||||
startup_session = create_session(opts, args)
|
startup_session = create_session(opts, args)
|
||||||
self.add_os_window(startup_session, os_window_id=os_window_id)
|
self.add_os_window(startup_session, os_window_id=os_window_id)
|
||||||
|
|
||||||
def add_os_window(self, startup_session, os_window_id=None):
|
def add_os_window(self, startup_session, os_window_id=None, wclass=None, size=None):
|
||||||
if os_window_id is None:
|
if os_window_id is None:
|
||||||
w, h = initial_window_size(self.opts)
|
w, h = initial_window_size(self.opts) if size is None else size
|
||||||
os_window_id = create_os_window(w, h, self.args.cls)
|
os_window_id = create_os_window(w, h, wclass or self.args.cls)
|
||||||
tm = TabManager(os_window_id, self.opts, self.args, startup_session)
|
tm = TabManager(os_window_id, self.opts, self.args, startup_session)
|
||||||
self.os_window_map[os_window_id] = tm
|
self.os_window_map[os_window_id] = tm
|
||||||
return os_window_id
|
return os_window_id
|
||||||
@ -103,7 +103,7 @@ class Boss:
|
|||||||
args = option_parser().parse_args(msg['args'][1:])
|
args = option_parser().parse_args(msg['args'][1:])
|
||||||
opts = create_opts(args)
|
opts = create_opts(args)
|
||||||
session = create_session(opts, args)
|
session = create_session(opts, args)
|
||||||
os_window_id = self.add_os_window(session)
|
os_window_id = self.add_os_window(session, wclass=args.cls, size=initial_window_size(opts))
|
||||||
if startup_id:
|
if startup_id:
|
||||||
ctx = init_startup_notification(os_window_id, startup_id)
|
ctx = init_startup_notification(os_window_id, startup_id)
|
||||||
end_startup_notification(ctx)
|
end_startup_notification(ctx)
|
||||||
|
|||||||
@ -58,7 +58,6 @@ init_x11_startup_notification(PyObject UNUSED *self, PyObject *args) {
|
|||||||
void* display = PyLong_AsVoidPtr(dp);
|
void* display = PyLong_AsVoidPtr(dp);
|
||||||
void* sn_display = sn_display_new(display, NULL, NULL);
|
void* sn_display = sn_display_new(display, NULL, NULL);
|
||||||
if (!sn_display) { PyErr_SetString(PyExc_OSError, "Failed to create SnDisplay"); return NULL; }
|
if (!sn_display) { PyErr_SetString(PyExc_OSError, "Failed to create SnDisplay"); return NULL; }
|
||||||
printf("%s", startup_id);
|
|
||||||
void *ctx = startup_id ? sn_launchee_context_new(sn_display, 0, startup_id) : sn_launchee_context_new_from_environment(sn_display, 0);
|
void *ctx = startup_id ? sn_launchee_context_new(sn_display, 0, startup_id) : sn_launchee_context_new_from_environment(sn_display, 0);
|
||||||
sn_display_unref(sn_display);
|
sn_display_unref(sn_display);
|
||||||
if (!ctx) { PyErr_SetString(PyExc_OSError, "Failed to create startup-notification context"); return NULL; }
|
if (!ctx) { PyErr_SetString(PyExc_OSError, "Failed to create startup-notification context"); return NULL; }
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user