]> git.sur5r.net Git - i3/i3/commitdiff
set workspace_layout in create_workspace_on_output
authorSascha Kruse <knopwob@googlemail.com>
Wed, 3 Oct 2012 01:52:57 +0000 (03:52 +0200)
committerMichael Stapelberg <michael@stapelberg.de>
Wed, 3 Oct 2012 13:08:21 +0000 (15:08 +0200)
fixes #835

src/workspace.c
testcases/t/509-workspace_layout.t [new file with mode: 0644]

index 94efd47b6e2455cf0151f7a41b0366d9022aeed8..2b7b19e5e66bb8ecfbbc607525f7170935687b05 100644 (file)
@@ -212,6 +212,7 @@ Con *create_workspace_on_output(Output *output, Con *content) {
 
     ws->fullscreen_mode = CF_OUTPUT;
 
+    ws->workspace_layout = config.default_layout;
     _workspace_apply_default_orientation(ws);
 
     return ws;
diff --git a/testcases/t/509-workspace_layout.t b/testcases/t/509-workspace_layout.t
new file mode 100644 (file)
index 0000000..d5cd380
--- /dev/null
@@ -0,0 +1,43 @@
+#!perl
+# vim:ts=4:sw=4:expandtab
+#
+# Please read the following documents before working on tests:
+# • http://build.i3wm.org/docs/testsuite.html
+#   (or docs/testsuite)
+#
+# • http://build.i3wm.org/docs/lib-i3test.html
+#   (alternatively: perldoc ./testcases/lib/i3test.pm)
+#
+# • http://build.i3wm.org/docs/ipc.html
+#   (or docs/ipc)
+#
+# • http://onyxneon.com/books/modern_perl/modern_perl_a4.pdf
+#   (unless you are already familiar with Perl)
+#
+# Tests whether workspace_layout is properly set after startup.
+#
+use List::Util qw(first);
+use i3test i3_autostart => 0;
+
+my $config = <<EOT;
+# i3 config file (v4)
+font -misc-fixed-medium-r-normal--13-120-75-75-C-70-iso10646-1
+
+fake-outputs 1024x768+0+0
+workspace_layout tabbed
+EOT
+my $pid = launch_with_config($config);
+
+################################################################################
+# Test that workspace_layout is properly set
+################################################################################
+
+
+is(focused_ws, '1', 'starting on workspace 1');
+my $ws = get_ws(1);
+is($ws->{workspace_layout}, 'tabbed', 'workspace layout is "tabbed"');
+
+
+exit_gracefully($pid);
+
+done_testing;