bool gMainWindow::hasBorder() { if (isTopLevel()) return gtk_window_get_decorated(GTK_WINDOW(border)); else return false; }
JNIEXPORT jboolean JNICALL Java_org_gnome_gtk_GtkWindow_gtk_1window_1get_1decorated ( JNIEnv* env, jclass cls, jlong _self ) { gboolean result; jboolean _result; GtkWindow* self; // convert parameter self self = (GtkWindow*) _self; // call function result = gtk_window_get_decorated(self); // cleanup parameter self // translate return value to JNI type _result = (jboolean) result; // and finally return _result; }
void toggle_fullscreen(int signum) { if(gtk_window_get_decorated(GTK_WINDOW(window))) { maximize(); } else { unmaximize(); } }
static void toggle_decorated_cb (GtkWidget *button, gpointer data) { GtkWidget *window; window = gtk_widget_get_ancestor (button, GTK_TYPE_WINDOW); if (window) gtk_window_set_decorated (GTK_WINDOW (window), !gtk_window_get_decorated (GTK_WINDOW (window))); }
void gMainWindow::showPopup(int x, int y) { gMainWindow *save; bool has_border; int oldx, oldy; //int type; if (!isTopLevel()) return; if (isModal()) return; //gtk_widget_unrealize(border); //((GtkWindow *)border)->type = GTK_WINDOW_POPUP; //gtk_widget_realize(border); oldx = left(); oldy = top(); has_border = gtk_window_get_decorated(GTK_WINDOW(border)); //type = getType(); //setType(_NET_WM_WINDOW_TYPE_COMBO); gtk_window_set_decorated(GTK_WINDOW(border), false); //gtk_window_set_type_hint(GTK_WINDOW(border), GDK_WINDOW_TYPE_HINT_POPUP_MENU); move(x, y); gtk_window_resize(GTK_WINDOW(border), bufW, bufH); //reparent(NULL, x, y, GTK_WINDOW_POPUP); _popup = true; save = _current; _current = this; gApplication::enterPopup(this); _current = save; _popup = false; if (!persistent) { destroyNow(); } else { hide(); //gdk_window_set_override_redirect(gtk_widget_get_window(GTK_WINDOW(border)), false); gtk_window_set_decorated(GTK_WINDOW(border), has_border); //setType(type); //gtk_window_set_type_hint(GTK_WINDOW(border), type); move(oldx, oldy); } }
static void toggle_decorated_cb (GSimpleAction *action, GVariant *parameter, gpointer data) { GtkWidget *window; window = gtk_widget_get_ancestor (data, GTK_TYPE_WINDOW); if (window) gtk_window_set_decorated (GTK_WINDOW (window), !gtk_window_get_decorated (GTK_WINDOW (window))); }
void setup(GtkWidget *widget) { QTC_RET_IF_FAIL(widget); GtkWidget *parent = nullptr; if (GTK_IS_WINDOW(widget) && !gtk_window_get_decorated(GTK_WINDOW(widget))) { return; } if (GTK_IS_EVENT_BOX(widget) && gtk_event_box_get_above_child(GTK_EVENT_BOX(widget))) return; parent = gtk_widget_get_parent(widget); // widgets used in tabs also must be ignored (happens, unfortunately) if (GTK_IS_NOTEBOOK(parent) && Tab::isLabel(GTK_NOTEBOOK(parent), widget)) return; /* check event mask (for now we only need to do that for GtkWindow) The idea is that if the window has been set to receive button_press and button_release events (which is not done by default), it likely means that it does something with such events, in which case we should not use them for grabbing */ if (oneOf(gTypeName(widget), "GtkWindow") && (gtk_widget_get_events(widget) & (GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK))) return; GtkWidgetProps props(widget); if (!isFakeGtk() && !props->wmMoveHacked) { props->wmMoveHacked = true; gtk_widget_add_events(widget, GDK_BUTTON_RELEASE_MASK | GDK_BUTTON_PRESS_MASK | GDK_LEAVE_NOTIFY_MASK | GDK_BUTTON1_MOTION_MASK); registerBtnReleaseHook(); props->wmMoveDestroy.conn("destroy-event", destroy); props->wmMoveStyleSet.conn("style-set", styleSet); props->wmMoveMotion.conn("motion-notify-event", motion); props->wmMoveLeave.conn("leave-notify-event", leave); props->wmMoveButtonPress.conn("button-press-event", buttonPress); } }
static gint luaH_window_index(lua_State *L, luapdf_token_t token) { widget_t *w = luaH_checkwidget(L, 1); switch(token) { LUAPDF_WIDGET_BIN_INDEX_COMMON(w) LUAPDF_WIDGET_CONTAINER_INDEX_COMMON(w) /* push widget class methods */ PF_CASE(DESTROY, luaH_widget_destroy) PF_CASE(FOCUS, luaH_widget_focus) PF_CASE(HIDE, luaH_widget_hide) /* push window class methods */ PF_CASE(SET_DEFAULT_SIZE, luaH_window_set_default_size) PF_CASE(SHOW, luaH_window_show) PF_CASE(SET_SCREEN, luaH_window_set_screen) PF_CASE(FULLSCREEN, luaH_window_fullscreen) PF_CASE(UNFULLSCREEN, luaH_window_unfullscreen) PF_CASE(MAXIMIZE, luaH_window_maximize) PF_CASE(UNMAXIMIZE, luaH_window_unmaximize) /* push string methods */ PS_CASE(TITLE, gtk_window_get_title(GTK_WINDOW(w->widget))) /* push boolean properties */ PB_CASE(DECORATED, gtk_window_get_decorated(GTK_WINDOW(w->widget))) case L_TK_XID: lua_pushnumber(L, GDK_WINDOW_XID(GTK_WIDGET(w->widget)->window)); return 1; default: break; } return 0; }
int uiWindowBorderless(uiWindow *w) { return gtk_window_get_decorated(w->window) == FALSE; }
gboolean af_window_get_border() { GtkWidget *window = global_get("window"); return gtk_window_get_decorated(GTK_WINDOW(window)); }