Hello community, here is the log from the commit of package i3 for openSUSE:Factory checked in at 2015-09-17 09:21:22 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/i3 (Old) and /work/SRC/openSUSE:Factory/.i3.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "i3" Changes: -------- --- /work/SRC/openSUSE:Factory/i3/i3.changes 2015-04-25 11:25:48.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.i3.new/i3.changes 2015-09-17 09:21:24.000000000 +0200 @@ -1,0 +2,18 @@ +Tue Sep 8 15:32:20 UTC 2015 - [email protected] + +- Update to v4.10.4: + * Bugfixes: + - revert: disable physically disconnected RandR outputs + - i3-msg: strdup getenv() result before freeing +- Changes of v4.10.3: + * Bugfixes: + - serialize con_id with %p in run_binding() (For FreeBSD) + - ignore InputHint when not in WM_HINTS (fixes e.g. mupdf focus) + - disable physically disconnect RandR outputs + - initialize workspace rect to the output's upon creation + - userguide: quoted strings need to be used, escaping isn’t possible + - mkdirp: do not throw an error if directory exists (fixes layout loss for + in-place restarts) + - i3bar: fix freeing static strings + +------------------------------------------------------------------- Old: ---- i3-4.10.2.tar.bz2 New: ---- i3-4.10.4.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ i3.spec ++++++ --- /var/tmp/diff_new_pack.q32vw6/_old 2015-09-17 09:21:25.000000000 +0200 +++ /var/tmp/diff_new_pack.q32vw6/_new 2015-09-17 09:21:25.000000000 +0200 @@ -17,7 +17,7 @@ Name: i3 -Version: 4.10.2 +Version: 4.10.4 Release: 0 Summary: Tilling window manager License: BSD-3-Clause ++++++ i3-4.10.2.tar.bz2 -> i3-4.10.4.tar.bz2 ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/i3-4.10.2/I3_VERSION new/i3-4.10.4/I3_VERSION --- old/i3-4.10.2/I3_VERSION 2015-04-16 09:03:09.000000000 +0200 +++ new/i3-4.10.4/I3_VERSION 2015-09-08 09:19:26.000000000 +0200 @@ -1 +1 @@ -4.10.2 (2015-04-16, branch \"4.10.2\") \ No newline at end of file +4.10.4 (2015-09-08, branch \"4.10.4\") \ No newline at end of file diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/i3-4.10.2/RELEASE-NOTES-4.10.2 new/i3-4.10.4/RELEASE-NOTES-4.10.2 --- old/i3-4.10.2/RELEASE-NOTES-4.10.2 2015-04-16 09:03:02.000000000 +0200 +++ new/i3-4.10.4/RELEASE-NOTES-4.10.2 1970-01-01 01:00:00.000000000 +0100 @@ -1,26 +0,0 @@ - - ┌──────────────────────────────┐ - │ Release notes for i3 v4.10.2 │ - └──────────────────────────────┘ - -This is i3 v4.10.2. This version is considered stable. All users of i3 are -strongly encouraged to upgrade. - - ┌────────────────────────────┐ - │ Bugfixes │ - └────────────────────────────┘ - - • Cope with non-null-terminated x class properties. - • Get workspace name when renaming current workspace (fixes crash). - • Use a reasonable default sep_block_width if a separator_symbol is given. - • Remove windows from the save set when unmapping. - - ┌────────────────────────────┐ - │ Thanks! │ - └────────────────────────────┘ - -Thanks for testing, bugfixes, discussions and everything I forgot go out to: - - Ingo Bürk, Michael Hofmann, - --- Michael Stapelberg, 2015-04-16 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/i3-4.10.2/RELEASE-NOTES-4.10.4 new/i3-4.10.4/RELEASE-NOTES-4.10.4 --- old/i3-4.10.2/RELEASE-NOTES-4.10.4 1970-01-01 01:00:00.000000000 +0100 +++ new/i3-4.10.4/RELEASE-NOTES-4.10.4 2015-09-08 09:19:20.000000000 +0200 @@ -0,0 +1,24 @@ + + ┌──────────────────────────────┐ + │ Release notes for i3 v4.10.4 │ + └──────────────────────────────┘ + +This is i3 v4.10.4. This version is considered stable. All users of i3 are +strongly encouraged to upgrade. + + ┌────────────────────────────┐ + │ Bugfixes │ + └────────────────────────────┘ + + • revert: disable physically disconnected RandR outputs + • i3-msg: strdup getenv() result before freeing + + ┌────────────────────────────┐ + │ Thanks! │ + └────────────────────────────┘ + +Thanks for testing, bugfixes, discussions and everything I forgot go out to: + + shdown + +-- Michael Stapelberg, 2015-09-08 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/i3-4.10.2/VERSION new/i3-4.10.4/VERSION --- old/i3-4.10.2/VERSION 2015-04-16 09:03:09.000000000 +0200 +++ new/i3-4.10.4/VERSION 2015-09-08 09:19:26.000000000 +0200 @@ -1 +1 @@ -4.10.2 \ No newline at end of file +4.10.4 \ No newline at end of file diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/i3-4.10.2/docs/debugging.html new/i3-4.10.4/docs/debugging.html --- old/i3-4.10.2/docs/debugging.html 2015-04-16 09:03:09.000000000 +0200 +++ new/i3-4.10.4/docs/debugging.html 2015-09-08 09:19:26.000000000 +0200 @@ -3,7 +3,7 @@ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"> <head> <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=UTF-8" /> -<meta name="generator" content="AsciiDoc 8.6.8" /> +<meta name="generator" content="AsciiDoc 8.6.9" /> <title>Debugging i3: How To</title> <style type="text/css"> /* Shared CSS for AsciiDoc xhtml11 and html5 backends */ @@ -94,7 +94,9 @@ padding: 0; margin: 0; } - +pre { + white-space: pre-wrap; +} #author { color: #527bbd; @@ -223,7 +225,7 @@ } div.imageblock div.content { padding-left: 0; } -span.image img { border-style: none; } +span.image img { border-style: none; vertical-align: text-bottom; } a.image:visited { color: white; } dl { @@ -872,7 +874,8 @@ <div id="footnotes"><hr /></div> <div id="footer"> <div id="footer-text"> -Last updated 2015-04-16 09:02:58 CEST +Last updated + 2015-09-08 09:19:16 CEST </div> </div> </body> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/i3-4.10.2/docs/hacking-howto.html new/i3-4.10.4/docs/hacking-howto.html --- old/i3-4.10.2/docs/hacking-howto.html 2015-04-16 09:03:09.000000000 +0200 +++ new/i3-4.10.4/docs/hacking-howto.html 2015-09-08 09:19:26.000000000 +0200 @@ -3,7 +3,7 @@ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"> <head> <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=UTF-8" /> -<meta name="generator" content="AsciiDoc 8.6.8" /> +<meta name="generator" content="AsciiDoc 8.6.9" /> <title>Hacking i3: How To</title> <style type="text/css"> /* Shared CSS for AsciiDoc xhtml11 and html5 backends */ @@ -94,7 +94,9 @@ padding: 0; margin: 0; } - +pre { + white-space: pre-wrap; +} #author { color: #527bbd; @@ -223,7 +225,7 @@ } div.imageblock div.content { padding-left: 0; } -span.image img { border-style: none; } +span.image img { border-style: none; vertical-align: text-bottom; } a.image:visited { color: white; } dl { @@ -2298,7 +2300,8 @@ <div id="footnotes"><hr /></div> <div id="footer"> <div id="footer-text"> -Last updated 2015-04-16 09:02:58 CEST +Last updated + 2015-09-08 09:19:16 CEST </div> </div> </body> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/i3-4.10.2/docs/i3bar-protocol.html new/i3-4.10.4/docs/i3bar-protocol.html --- old/i3-4.10.2/docs/i3bar-protocol.html 2015-04-16 09:03:09.000000000 +0200 +++ new/i3-4.10.4/docs/i3bar-protocol.html 2015-09-08 09:19:26.000000000 +0200 @@ -3,7 +3,7 @@ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"> <head> <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=UTF-8" /> -<meta name="generator" content="AsciiDoc 8.6.8" /> +<meta name="generator" content="AsciiDoc 8.6.9" /> <title>i3bar input protocol</title> <style type="text/css"> /* Shared CSS for AsciiDoc xhtml11 and html5 backends */ @@ -94,7 +94,9 @@ padding: 0; margin: 0; } - +pre { + white-space: pre-wrap; +} #author { color: #527bbd; @@ -223,7 +225,7 @@ } div.imageblock div.content { padding-left: 0; } -span.image img { border-style: none; } +span.image img { border-style: none; vertical-align: text-bottom; } a.image:visited { color: white; } dl { @@ -1113,7 +1115,8 @@ <div id="footnotes"><hr /></div> <div id="footer"> <div id="footer-text"> -Last updated 2015-04-16 09:02:58 CEST +Last updated + 2015-09-08 09:19:16 CEST </div> </div> </body> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/i3-4.10.2/docs/ipc.html new/i3-4.10.4/docs/ipc.html --- old/i3-4.10.2/docs/ipc.html 2015-04-16 09:03:09.000000000 +0200 +++ new/i3-4.10.4/docs/ipc.html 2015-09-08 09:19:26.000000000 +0200 @@ -3,7 +3,7 @@ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"> <head> <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=UTF-8" /> -<meta name="generator" content="AsciiDoc 8.6.8" /> +<meta name="generator" content="AsciiDoc 8.6.9" /> <title>IPC interface (interprocess communication)</title> <style type="text/css"> /* Shared CSS for AsciiDoc xhtml11 and html5 backends */ @@ -94,7 +94,9 @@ padding: 0; margin: 0; } - +pre { + white-space: pre-wrap; +} #author { color: #527bbd; @@ -223,7 +225,7 @@ } div.imageblock div.content { padding-left: 0; } -span.image img { border-style: none; } +span.image img { border-style: none; vertical-align: text-bottom; } a.image:visited { color: white; } dl { @@ -2187,7 +2189,8 @@ <div id="footnotes"><hr /></div> <div id="footer"> <div id="footer-text"> -Last updated 2015-04-16 09:02:58 CEST +Last updated + 2015-09-08 09:19:16 CEST </div> </div> </body> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/i3-4.10.2/docs/layout-saving.html new/i3-4.10.4/docs/layout-saving.html --- old/i3-4.10.2/docs/layout-saving.html 2015-04-16 09:03:09.000000000 +0200 +++ new/i3-4.10.4/docs/layout-saving.html 2015-09-08 09:19:26.000000000 +0200 @@ -3,7 +3,7 @@ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"> <head> <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=UTF-8" /> -<meta name="generator" content="AsciiDoc 8.6.8" /> +<meta name="generator" content="AsciiDoc 8.6.9" /> <title>Layout saving in i3</title> <style type="text/css"> /* Shared CSS for AsciiDoc xhtml11 and html5 backends */ @@ -94,7 +94,9 @@ padding: 0; margin: 0; } - +pre { + white-space: pre-wrap; +} #author { color: #527bbd; @@ -223,7 +225,7 @@ } div.imageblock div.content { padding-left: 0; } -span.image img { border-style: none; } +span.image img { border-style: none; vertical-align: text-bottom; } a.image:visited { color: white; } dl { @@ -1010,7 +1012,8 @@ <div id="footnotes"><hr /></div> <div id="footer"> <div id="footer-text"> -Last updated 2015-04-16 09:02:58 CEST +Last updated + 2015-09-08 09:19:16 CEST </div> </div> </body> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/i3-4.10.2/docs/multi-monitor.html new/i3-4.10.4/docs/multi-monitor.html --- old/i3-4.10.2/docs/multi-monitor.html 2015-04-16 09:03:09.000000000 +0200 +++ new/i3-4.10.4/docs/multi-monitor.html 2015-09-08 09:19:26.000000000 +0200 @@ -3,7 +3,7 @@ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"> <head> <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=UTF-8" /> -<meta name="generator" content="AsciiDoc 8.6.8" /> +<meta name="generator" content="AsciiDoc 8.6.9" /> <title>The multi-monitor situation</title> <style type="text/css"> /* Shared CSS for AsciiDoc xhtml11 and html5 backends */ @@ -94,7 +94,9 @@ padding: 0; margin: 0; } - +pre { + white-space: pre-wrap; +} #author { color: #527bbd; @@ -223,7 +225,7 @@ } div.imageblock div.content { padding-left: 0; } -span.image img { border-style: none; } +span.image img { border-style: none; vertical-align: text-bottom; } a.image:visited { color: white; } dl { @@ -812,7 +814,8 @@ <div id="footnotes"><hr /></div> <div id="footer"> <div id="footer-text"> -Last updated 2015-04-16 09:02:58 CEST +Last updated + 2015-09-08 09:19:16 CEST </div> </div> </body> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/i3-4.10.2/docs/testsuite.html new/i3-4.10.4/docs/testsuite.html --- old/i3-4.10.2/docs/testsuite.html 2015-04-16 09:03:09.000000000 +0200 +++ new/i3-4.10.4/docs/testsuite.html 2015-09-08 09:19:26.000000000 +0200 @@ -3,7 +3,7 @@ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"> <head> <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=UTF-8" /> -<meta name="generator" content="AsciiDoc 8.6.8" /> +<meta name="generator" content="AsciiDoc 8.6.9" /> <title>i3 testsuite</title> <style type="text/css"> /* Shared CSS for AsciiDoc xhtml11 and html5 backends */ @@ -94,7 +94,9 @@ padding: 0; margin: 0; } - +pre { + white-space: pre-wrap; +} #author { color: #527bbd; @@ -223,7 +225,7 @@ } div.imageblock div.content { padding-left: 0; } -span.image img { border-style: none; } +span.image img { border-style: none; vertical-align: text-bottom; } a.image:visited { color: white; } dl { @@ -1361,7 +1363,8 @@ <div id="footnotes"><hr /></div> <div id="footer"> <div id="footer-text"> -Last updated 2015-04-16 09:02:58 CEST +Last updated + 2015-09-08 09:19:16 CEST </div> </div> </body> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/i3-4.10.2/docs/userguide new/i3-4.10.4/docs/userguide --- old/i3-4.10.2/docs/userguide 2015-04-16 09:03:09.000000000 +0200 +++ new/i3-4.10.4/docs/userguide 2015-09-08 09:19:26.000000000 +0200 @@ -699,6 +699,10 @@ also when restarting i3 you should use the +exec_always+ keyword. These commands will be run in order. +See <<command_chaining>> for details on the special meaning of +;+ (semicolon) +and +,+ (comma): they chain commands together in i3, so you need to use quoted +strings if they appear in your command. + *Syntax*: ------------------- exec [--no-startup-id] command @@ -1466,7 +1470,11 @@ What good is a window manager if you can’t actually start any applications? The exec command starts an application by passing the command you specify to a shell. This implies that you can use globbing (wildcards) and programs will be -searched in your $PATH. +searched in your +$PATH+. + +See <<command_chaining>> for details on the special meaning of +;+ (semicolon) +and +,+ (comma): they chain commands together in i3, so you need to use quoted +strings if they appear in your command. *Syntax*: ------------------------------ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/i3-4.10.2/docs/userguide.html new/i3-4.10.4/docs/userguide.html --- old/i3-4.10.2/docs/userguide.html 2015-04-16 09:03:09.000000000 +0200 +++ new/i3-4.10.4/docs/userguide.html 2015-09-08 09:19:26.000000000 +0200 @@ -3,7 +3,7 @@ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"> <head> <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=UTF-8" /> -<meta name="generator" content="AsciiDoc 8.6.8" /> +<meta name="generator" content="AsciiDoc 8.6.9" /> <title>i3 User’s Guide</title> <style type="text/css"> /* Shared CSS for AsciiDoc xhtml11 and html5 backends */ @@ -94,7 +94,9 @@ padding: 0; margin: 0; } - +pre { + white-space: pre-wrap; +} #author { color: #527bbd; @@ -223,7 +225,7 @@ } div.imageblock div.content { padding-left: 0; } -span.image img { border-style: none; } +span.image img { border-style: none; vertical-align: text-bottom; } a.image:visited { color: white; } dl { @@ -1452,6 +1454,9 @@ commands will not run when restarting i3, if you need a command to run also when restarting i3 you should use the <code>exec_always</code> keyword. These commands will be run in order.</p></div> +<div class="paragraph"><p>See <a href="#command_chaining">[command_chaining]</a> for details on the special meaning of <code>;</code> (semicolon) +and <code>,</code> (comma): they chain commands together in i3, so you need to use quoted +strings if they appear in your command.</p></div> <div class="paragraph"><p><strong>Syntax</strong>:</p></div> <div class="listingblock"> <div class="content"> @@ -2323,7 +2328,10 @@ <div class="paragraph"><p>What good is a window manager if you can’t actually start any applications? The exec command starts an application by passing the command you specify to a shell. This implies that you can use globbing (wildcards) and programs will be -searched in your $PATH.</p></div> +searched in your <code>$PATH</code>.</p></div> +<div class="paragraph"><p>See <a href="#command_chaining">[command_chaining]</a> for details on the special meaning of <code>;</code> (semicolon) +and <code>,</code> (comma): they chain commands together in i3, so you need to use quoted +strings if they appear in your command.</p></div> <div class="paragraph"><p><strong>Syntax</strong>:</p></div> <div class="listingblock"> <div class="content"> @@ -3085,7 +3093,8 @@ <div id="footnotes"><hr /></div> <div id="footer"> <div id="footer-text"> -Last updated 2015-04-16 09:02:58 CEST +Last updated + 2015-09-08 09:19:16 CEST </div> </div> </body> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/i3-4.10.2/docs/wsbar.html new/i3-4.10.4/docs/wsbar.html --- old/i3-4.10.2/docs/wsbar.html 2015-04-16 09:03:09.000000000 +0200 +++ new/i3-4.10.4/docs/wsbar.html 2015-09-08 09:19:26.000000000 +0200 @@ -3,7 +3,7 @@ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"> <head> <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=UTF-8" /> -<meta name="generator" content="AsciiDoc 8.6.8" /> +<meta name="generator" content="AsciiDoc 8.6.9" /> <title>External workspace bars</title> <style type="text/css"> /* Shared CSS for AsciiDoc xhtml11 and html5 backends */ @@ -94,7 +94,9 @@ padding: 0; margin: 0; } - +pre { + white-space: pre-wrap; +} #author { color: #527bbd; @@ -223,7 +225,7 @@ } div.imageblock div.content { padding-left: 0; } -span.image img { border-style: none; } +span.image img { border-style: none; vertical-align: text-bottom; } a.image:visited { color: white; } dl { @@ -840,7 +842,8 @@ <div id="footnotes"><hr /></div> <div id="footer"> <div id="footer-text"> -Last updated 2015-04-16 09:02:58 CEST +Last updated + 2015-09-08 09:19:16 CEST </div> </div> </body> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/i3-4.10.2/i3-msg/main.c new/i3-4.10.4/i3-msg/main.c --- old/i3-4.10.2/i3-msg/main.c 2015-04-16 09:03:02.000000000 +0200 +++ new/i3-4.10.4/i3-msg/main.c 2015-09-08 09:19:20.000000000 +0200 @@ -119,7 +119,11 @@ }; int main(int argc, char *argv[]) { - socket_path = getenv("I3SOCK"); + char *env_socket_path = getenv("I3SOCK"); + if (env_socket_path) + socket_path = sstrdup(env_socket_path); + else + socket_path = NULL; int o, option_index = 0; uint32_t message_type = I3_IPC_MESSAGE_TYPE_COMMAND; char *payload = NULL; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/i3-4.10.2/i3bar/src/child.c new/i3-4.10.4/i3bar/src/child.c --- old/i3-4.10.2/i3bar/src/child.c 2015-04-16 09:03:02.000000000 +0200 +++ new/i3-4.10.4/i3bar/src/child.c 2015-09-08 09:19:20.000000000 +0200 @@ -107,14 +107,14 @@ struct status_block *err_block = scalloc(sizeof(struct status_block)); err_block->full_text = i3string_from_utf8("Error: "); - err_block->name = "error"; - err_block->color = "red"; + err_block->name = sstrdup("error"); + err_block->color = sstrdup("red"); err_block->no_separator = true; struct status_block *message_block = scalloc(sizeof(struct status_block)); message_block->full_text = i3string_from_utf8(message); - message_block->name = "error_message"; - message_block->color = "red"; + message_block->name = sstrdup("error_message"); + message_block->color = sstrdup("red"); message_block->no_separator = true; TAILQ_INSERT_HEAD(&statusline_head, err_block, blocks); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/i3-4.10.2/include/ipc.h new/i3-4.10.4/include/ipc.h --- old/i3-4.10.2/include/ipc.h 2015-04-16 09:03:02.000000000 +0200 +++ new/i3-4.10.4/include/ipc.h 2015-09-08 09:19:20.000000000 +0200 @@ -51,12 +51,6 @@ uint32_t message_type) /** - * Emulates mkdir -p (creates any missing folders) - * - */ -bool mkdirp(const char *path); - -/** * Handler for activity on the listening socket, meaning that a new client * has just connected and we should accept() him. Sets up the event handler * for activity on the new connection and inserts the file descriptor into diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/i3-4.10.2/include/libi3.h new/i3-4.10.4/include/libi3.h --- old/i3-4.10.2/include/libi3.h 2015-04-16 09:03:02.000000000 +0200 +++ new/i3-4.10.4/include/libi3.h 2015-09-08 09:19:20.000000000 +0200 @@ -434,3 +434,9 @@ * */ int logical_px(const int logical); + +/** + * Emulates mkdir -p (creates any missing folders) + * + */ +bool mkdirp(const char *path); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/i3-4.10.2/libi3/mkdirp.c new/i3-4.10.4/libi3/mkdirp.c --- old/i3-4.10.2/libi3/mkdirp.c 1970-01-01 01:00:00.000000000 +0100 +++ new/i3-4.10.4/libi3/mkdirp.c 2015-09-08 09:19:20.000000000 +0200 @@ -0,0 +1,50 @@ +#include "libi3.h" +#include <errno.h> +#include <stdlib.h> +#include <string.h> +#include <sys/stat.h> + +/* + * Emulates mkdir -p (creates any missing folders) + * + */ +bool mkdirp(const char *path) { + if (mkdir(path, S_IRWXU | S_IRGRP | S_IXGRP | S_IROTH | S_IXOTH) == 0) + return true; + if (errno == EEXIST) { + struct stat st; + /* Check that the named file actually is a directory. */ + if (stat(path, &st)) { + ELOG("stat(%s) failed: %s\n", path, strerror(errno)); + return false; + } + if (!S_ISDIR(st.st_mode)) { + ELOG("mkdir(%s) failed: %s\n", path, strerror(ENOTDIR)); + return false; + } + return true; + } else if (errno != ENOENT) { + ELOG("mkdir(%s) failed: %s\n", path, strerror(errno)); + return false; + } + char *copy = sstrdup(path); + /* strip trailing slashes, if any */ + while (copy[strlen(copy) - 1] == '/') + copy[strlen(copy) - 1] = '\0'; + + char *sep = strrchr(copy, '/'); + if (sep == NULL) { + if (copy != NULL) { + free(copy); + copy = NULL; + } + return false; + } + *sep = '\0'; + bool result = false; + if (mkdirp(copy)) + result = mkdirp(path); + free(copy); + + return result; +} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/i3-4.10.2/man/asciidoc.conf new/i3-4.10.4/man/asciidoc.conf --- old/i3-4.10.2/man/asciidoc.conf 2015-04-16 09:03:02.000000000 +0200 +++ new/i3-4.10.4/man/asciidoc.conf 2015-09-08 09:19:20.000000000 +0200 @@ -7,7 +7,7 @@ <refentrytitle>{mantitle}</refentrytitle> <manvolnum>{manvolnum}</manvolnum> <refmiscinfo class="source">i3</refmiscinfo> -<refmiscinfo class="version">4.10.2</refmiscinfo> +<refmiscinfo class="version">4.10.4</refmiscinfo> <refmiscinfo class="manual">i3 Manual</refmiscinfo> </refmeta> <refnamediv> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/i3-4.10.2/man/i3-config-wizard.1 new/i3-4.10.4/man/i3-config-wizard.1 --- old/i3-4.10.2/man/i3-config-wizard.1 2015-04-16 09:03:17.000000000 +0200 +++ new/i3-4.10.4/man/i3-config-wizard.1 2015-09-08 09:19:32.000000000 +0200 @@ -2,12 +2,12 @@ .\" Title: i3-config-wizard .\" Author: [see the "AUTHOR" section] .\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/> -.\" Date: 04/16/2015 +.\" Date: 09/08/2015 .\" Manual: i3 Manual -.\" Source: i3 4.10.2 +.\" Source: i3 4.10.4 .\" Language: English .\" -.TH "I3\-CONFIG\-WIZARD" "1" "04/16/2015" "i3 4\&.10\&.2" "i3 Manual" +.TH "I3\-CONFIG\-WIZARD" "1" "09/08/2015" "i3 4\&.10\&.4" "i3 Manual" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/i3-4.10.2/man/i3-dmenu-desktop.1 new/i3-4.10.4/man/i3-dmenu-desktop.1 --- old/i3-4.10.2/man/i3-dmenu-desktop.1 2015-04-16 09:03:17.000000000 +0200 +++ new/i3-4.10.4/man/i3-dmenu-desktop.1 2015-09-08 09:19:32.000000000 +0200 @@ -1,4 +1,4 @@ -.\" Automatically generated by Pod::Man 2.28 (Pod::Simple 3.29) +.\" Automatically generated by Pod::Man 2.28 (Pod::Simple 3.28) .\" .\" Standard preamble: .\" ======================================================================== @@ -71,7 +71,7 @@ .\" ======================================================================== .\" .IX Title "I3-DMENU-DESKTOP 1" -.TH I3-DMENU-DESKTOP 1 "2015-04-16" "perl v5.18.4" "User Contributed Perl Documentation" +.TH I3-DMENU-DESKTOP 1 "2015-09-08" "perl v5.20.2" "User Contributed Perl Documentation" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/i3-4.10.2/man/i3-dump-log.1 new/i3-4.10.4/man/i3-dump-log.1 --- old/i3-4.10.2/man/i3-dump-log.1 2015-04-16 09:03:17.000000000 +0200 +++ new/i3-4.10.4/man/i3-dump-log.1 2015-09-08 09:19:32.000000000 +0200 @@ -2,12 +2,12 @@ .\" Title: i3-dump-log .\" Author: [see the "AUTHOR" section] .\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/> -.\" Date: 04/16/2015 +.\" Date: 09/08/2015 .\" Manual: i3 Manual -.\" Source: i3 4.10.2 +.\" Source: i3 4.10.4 .\" Language: English .\" -.TH "I3\-DUMP\-LOG" "1" "04/16/2015" "i3 4\&.10\&.2" "i3 Manual" +.TH "I3\-DUMP\-LOG" "1" "09/08/2015" "i3 4\&.10\&.4" "i3 Manual" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/i3-4.10.2/man/i3-input.1 new/i3-4.10.4/man/i3-input.1 --- old/i3-4.10.2/man/i3-input.1 2015-04-16 09:03:17.000000000 +0200 +++ new/i3-4.10.4/man/i3-input.1 2015-09-08 09:19:32.000000000 +0200 @@ -2,12 +2,12 @@ .\" Title: i3-input .\" Author: [see the "AUTHOR" section] .\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/> -.\" Date: 04/16/2015 +.\" Date: 09/08/2015 .\" Manual: i3 Manual -.\" Source: i3 4.10.2 +.\" Source: i3 4.10.4 .\" Language: English .\" -.TH "I3\-INPUT" "1" "04/16/2015" "i3 4\&.10\&.2" "i3 Manual" +.TH "I3\-INPUT" "1" "09/08/2015" "i3 4\&.10\&.4" "i3 Manual" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/i3-4.10.2/man/i3-migrate-config-to-v4.1 new/i3-4.10.4/man/i3-migrate-config-to-v4.1 --- old/i3-4.10.2/man/i3-migrate-config-to-v4.1 2015-04-16 09:03:17.000000000 +0200 +++ new/i3-4.10.4/man/i3-migrate-config-to-v4.1 2015-09-08 09:19:32.000000000 +0200 @@ -2,12 +2,12 @@ .\" Title: i3-migrate-config-to-v4 .\" Author: [see the "AUTHOR" section] .\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/> -.\" Date: 04/16/2015 +.\" Date: 09/08/2015 .\" Manual: i3 Manual -.\" Source: i3 4.10.2 +.\" Source: i3 4.10.4 .\" Language: English .\" -.TH "I3\-MIGRATE\-CONFIG\" "1" "04/16/2015" "i3 4\&.10\&.2" "i3 Manual" +.TH "I3\-MIGRATE\-CONFIG\" "1" "09/08/2015" "i3 4\&.10\&.4" "i3 Manual" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/i3-4.10.2/man/i3-msg.1 new/i3-4.10.4/man/i3-msg.1 --- old/i3-4.10.2/man/i3-msg.1 2015-04-16 09:03:17.000000000 +0200 +++ new/i3-4.10.4/man/i3-msg.1 2015-09-08 09:19:32.000000000 +0200 @@ -2,12 +2,12 @@ .\" Title: i3-msg .\" Author: [see the "AUTHOR" section] .\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/> -.\" Date: 04/16/2015 +.\" Date: 09/08/2015 .\" Manual: i3 Manual -.\" Source: i3 4.10.2 +.\" Source: i3 4.10.4 .\" Language: English .\" -.TH "I3\-MSG" "1" "04/16/2015" "i3 4\&.10\&.2" "i3 Manual" +.TH "I3\-MSG" "1" "09/08/2015" "i3 4\&.10\&.4" "i3 Manual" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/i3-4.10.2/man/i3-nagbar.1 new/i3-4.10.4/man/i3-nagbar.1 --- old/i3-4.10.2/man/i3-nagbar.1 2015-04-16 09:03:17.000000000 +0200 +++ new/i3-4.10.4/man/i3-nagbar.1 2015-09-08 09:19:32.000000000 +0200 @@ -2,12 +2,12 @@ .\" Title: i3-nagbar .\" Author: [see the "AUTHOR" section] .\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/> -.\" Date: 04/16/2015 +.\" Date: 09/08/2015 .\" Manual: i3 Manual -.\" Source: i3 4.10.2 +.\" Source: i3 4.10.4 .\" Language: English .\" -.TH "I3\-NAGBAR" "1" "04/16/2015" "i3 4\&.10\&.2" "i3 Manual" +.TH "I3\-NAGBAR" "1" "09/08/2015" "i3 4\&.10\&.4" "i3 Manual" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/i3-4.10.2/man/i3-save-tree.1 new/i3-4.10.4/man/i3-save-tree.1 --- old/i3-4.10.2/man/i3-save-tree.1 2015-04-16 09:03:17.000000000 +0200 +++ new/i3-4.10.4/man/i3-save-tree.1 2015-09-08 09:19:32.000000000 +0200 @@ -1,4 +1,4 @@ -.\" Automatically generated by Pod::Man 2.28 (Pod::Simple 3.29) +.\" Automatically generated by Pod::Man 2.28 (Pod::Simple 3.28) .\" .\" Standard preamble: .\" ======================================================================== @@ -71,7 +71,7 @@ .\" ======================================================================== .\" .IX Title "I3-SAVE-TREE 1" -.TH I3-SAVE-TREE 1 "2015-04-16" "perl v5.18.4" "User Contributed Perl Documentation" +.TH I3-SAVE-TREE 1 "2015-09-08" "perl v5.20.2" "User Contributed Perl Documentation" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/i3-4.10.2/man/i3-sensible-editor.1 new/i3-4.10.4/man/i3-sensible-editor.1 --- old/i3-4.10.2/man/i3-sensible-editor.1 2015-04-16 09:03:17.000000000 +0200 +++ new/i3-4.10.4/man/i3-sensible-editor.1 2015-09-08 09:19:32.000000000 +0200 @@ -2,12 +2,12 @@ .\" Title: i3-sensible-editor .\" Author: [see the "AUTHOR" section] .\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/> -.\" Date: 04/16/2015 +.\" Date: 09/08/2015 .\" Manual: i3 Manual -.\" Source: i3 4.10.2 +.\" Source: i3 4.10.4 .\" Language: English .\" -.TH "I3\-SENSIBLE\-EDITOR" "1" "04/16/2015" "i3 4\&.10\&.2" "i3 Manual" +.TH "I3\-SENSIBLE\-EDITOR" "1" "09/08/2015" "i3 4\&.10\&.4" "i3 Manual" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/i3-4.10.2/man/i3-sensible-pager.1 new/i3-4.10.4/man/i3-sensible-pager.1 --- old/i3-4.10.2/man/i3-sensible-pager.1 2015-04-16 09:03:17.000000000 +0200 +++ new/i3-4.10.4/man/i3-sensible-pager.1 2015-09-08 09:19:32.000000000 +0200 @@ -2,12 +2,12 @@ .\" Title: i3-sensible-pager .\" Author: [see the "AUTHOR" section] .\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/> -.\" Date: 04/16/2015 +.\" Date: 09/08/2015 .\" Manual: i3 Manual -.\" Source: i3 4.10.2 +.\" Source: i3 4.10.4 .\" Language: English .\" -.TH "I3\-SENSIBLE\-PAGER" "1" "04/16/2015" "i3 4\&.10\&.2" "i3 Manual" +.TH "I3\-SENSIBLE\-PAGER" "1" "09/08/2015" "i3 4\&.10\&.4" "i3 Manual" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/i3-4.10.2/man/i3-sensible-terminal.1 new/i3-4.10.4/man/i3-sensible-terminal.1 --- old/i3-4.10.2/man/i3-sensible-terminal.1 2015-04-16 09:03:17.000000000 +0200 +++ new/i3-4.10.4/man/i3-sensible-terminal.1 2015-09-08 09:19:32.000000000 +0200 @@ -2,12 +2,12 @@ .\" Title: i3-sensible-terminal .\" Author: [see the "AUTHOR" section] .\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/> -.\" Date: 04/16/2015 +.\" Date: 09/08/2015 .\" Manual: i3 Manual -.\" Source: i3 4.10.2 +.\" Source: i3 4.10.4 .\" Language: English .\" -.TH "I3\-SENSIBLE\-TERMIN" "1" "04/16/2015" "i3 4\&.10\&.2" "i3 Manual" +.TH "I3\-SENSIBLE\-TERMIN" "1" "09/08/2015" "i3 4\&.10\&.4" "i3 Manual" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/i3-4.10.2/man/i3.1 new/i3-4.10.4/man/i3.1 --- old/i3-4.10.2/man/i3.1 2015-04-16 09:03:17.000000000 +0200 +++ new/i3-4.10.4/man/i3.1 2015-09-08 09:19:32.000000000 +0200 @@ -2,12 +2,12 @@ .\" Title: i3 .\" Author: [see the "AUTHOR" section] .\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/> -.\" Date: 04/16/2015 +.\" Date: 09/08/2015 .\" Manual: i3 Manual -.\" Source: i3 4.10.2 +.\" Source: i3 4.10.4 .\" Language: English .\" -.TH "I3" "1" "04/16/2015" "i3 4\&.10\&.2" "i3 Manual" +.TH "I3" "1" "09/08/2015" "i3 4\&.10\&.4" "i3 Manual" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/i3-4.10.2/man/i3bar.1 new/i3-4.10.4/man/i3bar.1 --- old/i3-4.10.2/man/i3bar.1 2015-04-16 09:03:17.000000000 +0200 +++ new/i3-4.10.4/man/i3bar.1 2015-09-08 09:19:32.000000000 +0200 @@ -2,12 +2,12 @@ .\" Title: i3bar .\" Author: [see the "AUTHORS" section] .\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/> -.\" Date: 04/16/2015 +.\" Date: 09/08/2015 .\" Manual: i3 Manual -.\" Source: i3 4.10.2 +.\" Source: i3 4.10.4 .\" Language: English .\" -.TH "I3BAR" "1" "04/16/2015" "i3 4\&.10\&.2" "i3 Manual" +.TH "I3BAR" "1" "09/08/2015" "i3 4\&.10\&.4" "i3 Manual" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/i3-4.10.2/src/bindings.c new/i3-4.10.4/src/bindings.c --- old/i3-4.10.2/src/bindings.c 2015-04-16 09:03:02.000000000 +0200 +++ new/i3-4.10.4/src/bindings.c 2015-09-08 09:19:20.000000000 +0200 @@ -429,7 +429,7 @@ if (con == NULL) command = sstrdup(bind->command); else - sasprintf(&command, "[con_id=\"%d\"] %s", con, bind->command); + sasprintf(&command, "[con_id=\"%p\"] %s", con, bind->command); Binding *bind_cp = binding_copy(bind); CommandResult *result = parse_command(command, NULL); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/i3-4.10.2/src/commands.c new/i3-4.10.4/src/commands.c --- old/i3-4.10.2/src/commands.c 2015-04-16 09:03:02.000000000 +0200 +++ new/i3-4.10.4/src/commands.c 2015-09-08 09:19:20.000000000 +0200 @@ -335,7 +335,7 @@ if (strcmp(ctype, "con_id") == 0) { char *end; - long parsed = strtol(cvalue, &end, 10); + long parsed = strtol(cvalue, &end, 0); if (parsed == LONG_MIN || parsed == LONG_MAX || parsed < 0 || @@ -350,7 +350,7 @@ if (strcmp(ctype, "id") == 0) { char *end; - long parsed = strtol(cvalue, &end, 10); + long parsed = strtol(cvalue, &end, 0); if (parsed == LONG_MIN || parsed == LONG_MAX || parsed < 0 || diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/i3-4.10.2/src/ipc.c new/i3-4.10.4/src/ipc.c --- old/i3-4.10.2/src/ipc.c 2015-04-16 09:03:02.000000000 +0200 +++ new/i3-4.10.4/src/ipc.c 2015-09-08 09:19:20.000000000 +0200 @@ -38,36 +38,6 @@ } /* - * Emulates mkdir -p (creates any missing folders) - * - */ -bool mkdirp(const char *path) { - if (mkdir(path, S_IRWXU | S_IRGRP | S_IXGRP | S_IROTH | S_IXOTH) == 0) - return true; - if (errno != ENOENT) { - ELOG("mkdir(%s) failed: %s\n", path, strerror(errno)); - return false; - } - char *copy = sstrdup(path); - /* strip trailing slashes, if any */ - while (copy[strlen(copy) - 1] == '/') - copy[strlen(copy) - 1] = '\0'; - - char *sep = strrchr(copy, '/'); - if (sep == NULL) { - FREE(copy); - return false; - } - *sep = '\0'; - bool result = false; - if (mkdirp(copy)) - result = mkdirp(path); - free(copy); - - return result; -} - -/* * Sends the specified event to all IPC clients which are currently connected * and subscribed to this kind of event. * diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/i3-4.10.2/src/window.c new/i3-4.10.4/src/window.c --- old/i3-4.10.2/src/window.c 2015-04-16 09:03:02.000000000 +0200 +++ new/i3-4.10.4/src/window.c 2015-09-08 09:19:20.000000000 +0200 @@ -254,8 +254,10 @@ return; } - win->doesnt_accept_focus = !hints.input; - LOG("WM_HINTS.input changed to \"%d\"\n", hints.input); + if (hints.flags & XCB_ICCCM_WM_HINT_INPUT) { + win->doesnt_accept_focus = !hints.input; + LOG("WM_HINTS.input changed to \"%d\"\n", hints.input); + } if (urgency_hint != NULL) *urgency_hint = (xcb_icccm_wm_hints_get_urgency(&hints) != 0); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/i3-4.10.2/src/workspace.c new/i3-4.10.4/src/workspace.c --- old/i3-4.10.2/src/workspace.c 2015-04-16 09:03:02.000000000 +0200 +++ new/i3-4.10.4/src/workspace.c 2015-09-08 09:19:20.000000000 +0200 @@ -29,6 +29,7 @@ if (config.default_orientation == NO_ORIENTATION) { Con *output = con_get_output(ws); ws->layout = (output->rect.height > output->rect.width) ? L_SPLITV : L_SPLITH; + ws->rect = output->rect; DLOG("Auto orientation. Workspace size set to (%d,%d), setting layout to %d.\n", output->rect.width, output->rect.height, ws->layout); } else { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/i3-4.10.2/testcases/t/158-wm_take_focus.t new/i3-4.10.4/testcases/t/158-wm_take_focus.t --- old/i3-4.10.2/testcases/t/158-wm_take_focus.t 2015-04-16 09:03:02.000000000 +0200 +++ new/i3-4.10.4/testcases/t/158-wm_take_focus.t 2015-09-08 09:19:20.000000000 +0200 @@ -50,12 +50,15 @@ } subtest 'Window without WM_TAKE_FOCUS', sub { - fresh_workspace; + my $ws = fresh_workspace; my $window = open_window; ok(!recv_take_focus($window), 'did not receive ClientMessage'); + my $con = shift get_ws_content($ws); + ok($con->{focused}, 'con is focused'); + done_testing; }; @@ -72,7 +75,7 @@ # list), the window cannot accept input focus, so we should not try to focus # the window at all. subtest 'Window with WM_TAKE_FOCUS and without InputHint', sub { - fresh_workspace; + my $ws = fresh_workspace; my $take_focus = $x->atom(name => 'WM_TAKE_FOCUS'); @@ -88,6 +91,9 @@ ok(!recv_take_focus($window), 'did not receive ClientMessage'); + my $con = shift get_ws_content($ws); + ok($con->{focused}, 'con is focused'); + done_testing; }; @@ -97,7 +103,7 @@ # nearly identical presently, so this is currently used also as a proxy test # for the latter case. subtest 'Window with WM_TAKE_FOCUS and unspecified InputHint', sub { - fresh_workspace; + my $ws = fresh_workspace; my $take_focus = $x->atom(name => 'WM_TAKE_FOCUS'); @@ -105,6 +111,9 @@ ok(!recv_take_focus($window), 'did not receive ClientMessage'); + my $con = shift get_ws_content($ws); + ok($con->{focused}, 'con is focused'); + done_testing; }; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/i3-4.10.2/testcases/t/244-new-workspace-floating-enable-center.t new/i3-4.10.4/testcases/t/244-new-workspace-floating-enable-center.t --- old/i3-4.10.2/testcases/t/244-new-workspace-floating-enable-center.t 1970-01-01 01:00:00.000000000 +0100 +++ new/i3-4.10.4/testcases/t/244-new-workspace-floating-enable-center.t 2015-09-08 09:19:20.000000000 +0200 @@ -0,0 +1,53 @@ +#!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) +# +# Ensures that 'move workspace $new, floating enable' on a marked window +# leaves the window centered on the new workspace. +# Bug still in: 4.10.2-137-ga4f0ed6 +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 + +new_window none +new_float none +EOT + +my $pid = launch_with_config($config); + +##################################################################### +# Open a tiled window, and then simultaneously move it to another +# workspace and float it, ensuring that it ends up centered. +##################################################################### + +my $window = open_window; +my $unused = get_unused_workspace(); + +cmd "mark foo; [con_mark=\"foo\"] move workspace $unused, floating enable"; + +sync_with_i3; + +my $pos = $window->rect; + +is(int($pos->{x} + $pos->{width} / 2), int($x->root->rect->width / 2), + 'x coordinates match'); +is(int($pos->{y} + $pos->{height} / 2), int($x->root->rect->height / 2), + 'y coordinates match'); + +exit_gracefully($pid); + +done_testing;
