참고: 대략 이렇습니다.그놈 콘솔,아니요그놈 터미널.
GNOME 콘솔을 닫을 때 이러한 메시지가 나타나지 않도록 하려면 어떻게 해야 합니까?
(제가 아는 한 해당 창은 오해의 소지가 있습니다. 백그라운드 프로세스가 거부된 경우에도 나타납니다. 거부된 프로세스는 더 이상 원래 셸의 하위 프로세스가 아니므로 터미널을 닫은 후에도 정상적으로 실행될 수 있습니다.)
답변1
코드를 입력해도 될까요? (확인 창을 닫지 않도록 접근 가능한 매개변수를 찾지 못했기 때문입니다.)
먼저 시도해 보세요. 원하는 대로 작동하는지 확인하기 위한 빠르고 더러운 방법입니다.
읽다kgx_window.c155번째 줄부터 다음과 같이 진행됩니다.
kgx_window_close_request (GtkWindow *window)
{
…
children = kgx_pages_get_children (KGX_PAGES (priv->pages));
if (children->len < 1 || priv->close_anyway) {
if (gtk_window_is_active (GTK_WINDOW (self))) {
…}
return FALSE; /* Aka no, I don’t want to block closing */}
dlg = g_object_new (KGX_TYPE_CLOSE_DIALOG,
"context", KGX_CONTEXT_WINDOW,
"commands", children,
"transient-for", self,
NULL);
kgx_close_dialog_run (dlg, NULL, got_close, g_object_ref (self));
return TRUE; /* Block the close */}
kgx_window_close_request가 항상 FALSE를 반환하면 항상 닫기 확인 창을 우회할 수 있다는 것을 알고 있습니다.
따라서 다음과 같이 주석 처리하는 것이 좋습니다.
- 164행 (
if (children->len < 1 || priv->close_anyway) {
) - 169행(관련 닫는 중괄호)
priv->close_anyway
코드 시작 부분에 지정된 대로 확인도 건너뛰므로 TRUE로 강제 설정하는 것이 더 좋습니다 .
- KgxWindow: * @close_anyway: 실행 중인 하위 창을 무시하고 프롬프트 없이 닫습니다.
하지만 이것을 강제할 방법을 찾을 시간이 없습니다.