Package: xfce4-panel
Version: 4.12.1-2
Followup-For: Bug #871523

Dear Maintainer,

this bug was fixed by upstream for the 4.12 release of xfce. I extracted the 
patch from
here https://git.xfce.org/users/ochosi/xfce4-panel/log/?h=primary_for_4_12 

It would be great if this patch was applied since it really seems that this 
issue bothers 
lots of people.

Note: In order to get it working I had to reconfigure/reset to configuration 
for each panel. 
      Although the preferences dialog displayed "Primary" as Output, it 
actually still used 
      "Automatic".
      To fix this just manually select "Automatic" in the drop box and the 
select "Primary"
      again. 

Best regards,

   Robert

-- System Information:
Debian Release: 9.1
  APT prefers stable
  APT policy: (990, 'stable'), (500, 'stable-updates'), (500, 'unstable'), (1, 
'experimental')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 4.9.0-3-amd64 (SMP w/4 CPU cores)
Locale: LANG=en_US.utf8, LC_CTYPE=en_US.utf8 (charmap=UTF-8), LANGUAGE=en_US:en 
(charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)

Versions of packages xfce4-panel depends on:
ii  exo-utils            0.10.7-1
ii  libatk1.0-0          2.22.0-1
ii  libc6                2.24-11+deb9u1
ii  libcairo2            1.14.8-1
ii  libdbus-1-3          1.10.18-1
ii  libdbus-glib-1-2     0.108-2
ii  libexo-1-0           0.10.7-1
ii  libfontconfig1       2.11.0-6.7+b1
ii  libfreetype6         2.6.3-3.2
ii  libgarcon-1-0        0.4.0-2
ii  libgdk-pixbuf2.0-0   2.36.5-2
ii  libglib2.0-0         2.50.3-2
ii  libgtk2.0-0          2.24.31-2
ii  libice6              2:1.0.9-2
ii  libpango-1.0-0       1.40.5-1
ii  libpangocairo-1.0-0  1.40.5-1
ii  libpangoft2-1.0-0    1.40.5-1
ii  libsm6               2:1.2.2-1+b3
ii  libwnck22            2.30.7-5.1
ii  libx11-6             2:1.6.4-3
ii  libxext6             2:1.3.3-1+b2
ii  libxfce4ui-1-0       4.12.1-2
ii  libxfce4util7        4.12.1-3
ii  libxfconf-0-2        4.12.1-1

xfce4-panel recommends no packages.

xfce4-panel suggests no packages.

-- no debconf information
--- xfce4-panel-4.12.1/panel/panel-preferences-dialog.c 2016-08-11 
23:54:27.000000000 +0200
+++ xfce4-panel-primary_for_4_12/panel/panel-preferences-dialog.c       
2017-04-12 18:33:27.000000000 +0200
@@ -488,9 +488,18 @@
       || !exo_str_is_empty (output_name))
     {
       gtk_list_store_insert_with_values (GTK_LIST_STORE (store), &iter, n++,
-                                         OUTPUT_NAME, NULL,
+                                         OUTPUT_NAME, "Automatic",
                                          OUTPUT_TITLE, _("Automatic"), -1);
-      if (exo_str_is_empty (output_name))
+      if (g_strcmp0 (output_name, "Automatic") == 0) {
+        gtk_combo_box_set_active_iter (GTK_COMBO_BOX (object), &iter);
+        output_selected = TRUE;
+        span_monitors_sensitive = TRUE;
+      }
+      gtk_list_store_insert_with_values (GTK_LIST_STORE (store), &iter, n++,
+                                         OUTPUT_NAME, "Primary",
+                                         OUTPUT_TITLE, _("Primary"), -1);
+      if (exo_str_is_empty (output_name) ||
+          g_strcmp0 (output_name, "Primary") == 0)
         {
           gtk_combo_box_set_active_iter  (GTK_COMBO_BOX (object), &iter);
           output_selected = TRUE;

--- xfce4-panel-4.12.1/panel/panel-window.c     2016-08-11 23:54:27.000000000 
+0200
+++ xfce4-panel-primary_for_4_12/panel/panel-window.c   2017-04-12 
18:33:27.000000000 +0200
@@ -2009,16 +2009,24 @@
     }
   else
     {
-      if (exo_str_is_empty (window->output_name))
+      if (g_strcmp0 (window->output_name, "Automatic") == 0
+          || window->output_name == NULL)
         {
-          normal_monitor_positioning:
-
           /* get the monitor geometry based on the panel position */
           monitor_num = gdk_screen_get_monitor_at_point (screen, 
window->base_x,
                                                          window->base_y);
           gdk_screen_get_monitor_geometry (screen, monitor_num, &a);
           panel_return_if_fail (a.width > 0 && a.height > 0);
         }
+      else if (g_strcmp0 (window->output_name, "Primary") == 0)
+        {
+          normal_monitor_positioning:
+          /* get the primary monitor */
+          monitor_num = gdk_screen_get_primary_monitor (screen);
+
+          gdk_screen_get_monitor_geometry (screen, monitor_num, &a);
+          panel_return_if_fail (a.width > 0 && a.height > 0);
+        }
       else
         {
           /* check if we've stored the monitor number in the config or
_______________________________________________
Pkg-xfce-devel mailing list
Pkg-xfce-devel@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-xfce-devel

Reply via email to