mirror of
https://github.com/ghostty-org/ghostty.git
synced 2025-07-16 00:36:07 +03:00
gtk: new tab keyboard shortcut works
This commit is contained in:
@ -158,10 +158,9 @@ pub const App = struct {
|
|||||||
try window.init(self);
|
try window.init(self);
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn newTab(self: *App, parent_: ?*CoreSurface) !void {
|
pub fn newTab(self: *App, parent: *CoreSurface) !void {
|
||||||
// TODO
|
|
||||||
_ = self;
|
_ = self;
|
||||||
_ = parent_;
|
try parent.rt_surface.window.newTab();
|
||||||
}
|
}
|
||||||
|
|
||||||
fn activate(app: *c.GtkApplication, ud: ?*anyopaque) callconv(.C) void {
|
fn activate(app: *c.GtkApplication, ud: ?*anyopaque) callconv(.C) void {
|
||||||
@ -254,6 +253,7 @@ const Window = struct {
|
|||||||
// context is ready. See Surface docs for more info.
|
// context is ready. See Surface docs for more info.
|
||||||
const gl_area = c.gtk_gl_area_new();
|
const gl_area = c.gtk_gl_area_new();
|
||||||
try surface.init(self.app, .{
|
try surface.init(self.app, .{
|
||||||
|
.window = self,
|
||||||
.gl_area = @ptrCast(*c.GtkGLArea, gl_area),
|
.gl_area = @ptrCast(*c.GtkGLArea, gl_area),
|
||||||
.title_label = @ptrCast(*c.GtkLabel, label_text),
|
.title_label = @ptrCast(*c.GtkLabel, label_text),
|
||||||
});
|
});
|
||||||
@ -336,6 +336,9 @@ pub const Surface = struct {
|
|||||||
pub const opengl_single_threaded_draw = true;
|
pub const opengl_single_threaded_draw = true;
|
||||||
|
|
||||||
pub const Options = struct {
|
pub const Options = struct {
|
||||||
|
/// The window that this surface is attached to.
|
||||||
|
window: *Window,
|
||||||
|
|
||||||
gl_area: *c.GtkGLArea,
|
gl_area: *c.GtkGLArea,
|
||||||
|
|
||||||
/// The label to use as the title of this surface. This will be
|
/// The label to use as the title of this surface. This will be
|
||||||
@ -357,6 +360,9 @@ pub const Surface = struct {
|
|||||||
/// The app we're part of
|
/// The app we're part of
|
||||||
app: *App,
|
app: *App,
|
||||||
|
|
||||||
|
/// The window we're part of
|
||||||
|
window: *Window,
|
||||||
|
|
||||||
/// Our GTK area
|
/// Our GTK area
|
||||||
gl_area: *c.GtkGLArea,
|
gl_area: *c.GtkGLArea,
|
||||||
|
|
||||||
@ -441,6 +447,7 @@ pub const Surface = struct {
|
|||||||
// Build our result
|
// Build our result
|
||||||
self.* = .{
|
self.* = .{
|
||||||
.app = app,
|
.app = app,
|
||||||
|
.window = opts.window,
|
||||||
.gl_area = opts.gl_area,
|
.gl_area = opts.gl_area,
|
||||||
.title = if (opts.title_label) |label| .{
|
.title = if (opts.title_label) |label| .{
|
||||||
.label = label,
|
.label = label,
|
||||||
|
Reference in New Issue
Block a user