* update xorg-xrandr to 1.5.2-1.1

This commit is contained in:
Alexander Baldeck 2024-01-05 16:04:42 +01:00
parent 41cf31b5f6
commit b2fa567427

View File

@ -0,0 +1,74 @@
# --- T2-COPYRIGHT-NOTE-BEGIN ---
# T2 SDE: package/*/xrandr/preferred-output.patch
# Copyright (C) 2022 The T2 SDE Project
#
# This Copyright note is generated by scripts/Create-CopyPatch,
# more information can be found in the files COPYING and README.
#
# This patch file is dual-licensed. It is available under the license the
# patched project is licensed under, as long as it is an OpenSource license
# as defined at http://www.opensource.org/ (e.g. BSD, X11) or under the terms
# of the GNU General Public License version 2 as used by the T2 SDE.
# --- T2-COPYRIGHT-NOTE-END ---
Make xrandr more convinient by implicitly using the first output
if none was specified.
- Rene Rebe <rene@exactcode.de>
--- xrandr-1.5.1/xrandr.c.vanilla 2019-08-12 19:50:48.000000000 +0200
+++ xrandr-1.5.1/xrandr.c 2022-07-10 16:00:11.112000000 +0200
@@ -677,7 +677,7 @@
name->string = old->string;
if (old->kind & name_index)
name->index = old->index;
- name->kind |= old->kind;
+ name->kind = old->kind;
}
static void
@@ -779,6 +779,8 @@
break;
if ((common & name_index) && name->index == output->output.index)
break;
+ if (output->output.kind & name_preferred)
+ break;
}
return output;
}
@@ -810,6 +811,16 @@
return find_output (&output_name);
}
+static output_t *
+find_output_preferred (void)
+{
+ name_t output_name;
+
+ init_name (&output_name);
+ set_name_preferred (&output_name);
+ return find_output (&output_name);
+}
+
static crtc_t *
find_crtc (name_t *name)
{
@@ -2851,8 +2862,17 @@
continue;
}
if (!strcmp ("--mode", argv[i])) {
- if (!config_output) argerr ("%s must be used after --output\n", argv[i]);
if (++i >= argc) argerr ("%s requires an argument\n", argv[i-1]);
+ if (!config_output) {
+ config_output = find_output_preferred ();
+ }
+ if (!config_output) {
+ config_output = add_output ();
+ set_name_preferred (&config_output->output);
+ setit_1_2 = True;
+ action_requested = True;
+ }
+
set_name (&config_output->mode, argv[i], name_string|name_xid);
config_output->changes |= changes_mode;
continue;