! Please note that this is a snapshot of our old Bugzilla server, which is read only since May 29, 2020. Please go to gitlab.xfce.org for our new server !
xfce4-screensaver is crashed when i change image style of background
Status:
RESOLVED: FIXED
Product:
Xfce4-screensaver
Component:
General

Comments

Description Yury Martynov 2018-10-18 23:12:04 CEST
Created attachment 8041 
screenshot

xfce4-screensaver is crashed when i change image style and run `xfce4-screensaver-command -l` on default desktop

Output:
    linxon@cirno-chan:~ $ xfconf-query -c xfce4-desktop -p /backdrop/screen0/monitor0/image-style
    0
    linxon@cirno-chan:~ $ xfce4-screensaver

    ** (xfce4-screensaver:9135): WARNING **: Failed to get session presence proxy: Could not get owner of name 'org.gnome.SessionManager': no such name
    **
    ERROR:xfce-bg.c:939:draw_image_area: code should not be reached
    Аварийный останов
Comment 1 Git Bot editbugs 2018-10-25 11:51:27 CEST
Sean Davis referenced this bugreport in commit 341d377055671b4de087e0748a39b9a9d1e22494

Fix color property pulling, support background filename with no placement (bug #14769)

https://git.xfce.org/apps/xfce4-screensaver/commit?id=341d377055671b4de087e0748a39b9a9d1e22494
Comment 2 Sean Davis editbugs 2018-10-25 11:51:55 CEST
Fix applied in the above commit.
Comment 3 Yury Martynov 2018-10-25 15:32:07 CEST
Maybe resolved, but in locked mode (login dialog) i see only black background 
It can't get a color property using my configuration for `xfdesktop-4.12.4`

My config:
        <property name="workspace0" type="empty">
          <property name="color-style" type="int" value="3"/>
          <property name="image-style" type="int" value="0"/>
          <property name="last-image" type="string" value="/home/linxon/2.jpg"/>
          <property name="color1" type="array">
            <value type="uint" value="0"/>
            <value type="uint" value="5498"/>
            <value type="uint" value="13400"/>
            <value type="uint" value="65535"/>
          </property>
          <property name="backdrop-cycle-enable" type="bool" value="false"/>
          <property name="brightness" type="int" value="0"/>
          <property name="saturation" type="double" value="1.000000"/>
          <property name="color2" type="array">
            <value type="uint" value="1996"/>
            <value type="uint" value="9725"/>
            <value type="uint" value="19752"/>
            <value type="uint" value="65535"/>
          </property>
        </property>

Thank you!
Comment 4 Sean Davis editbugs 2018-10-26 12:40:36 CEST
@Yury, this is due to a change in how colors are processed between GTK 2 and GTK 3. I've added a commit below that should make your configuration work, if you want to test it out.

https://git.xfce.org/apps/xfce4-screensaver/commit/?id=20ccbec35c9d537144712ce7a08410ff562ed6a4
Comment 5 Sean Davis editbugs 2018-10-26 12:43:55 CEST
@Yury, You'll actually need this commit as well. You should be able to test this by building git master.

https://git.xfce.org/apps/xfce4-screensaver/commit/?id=9ac974f0ccd35e9ed29b62ef978184b2360c5232
Comment 6 Yury Martynov 2018-10-26 19:43:00 CEST
it works! Thank you wery much! :)

P.S. (Not critical!)
If you try to remove old config `xfce4-desktop.xml` and relogin, the Xfdesktop generates a new configuration that looks like this:

<?xml version="1.0" encoding="UTF-8"?>

<channel name="xfce4-desktop" version="1.0">
  <property name="backdrop" type="empty">
    <property name="screen0" type="empty">
      <property name="monitor0" type="empty">
        <property name="workspace0" type="empty">
          <property name="color-style" type="int" value="0"/>
          <property name="image-style" type="int" value="0"/>
          <property name="last-image" type="string" value="/usr/share/backgrounds/xfce/xfce-teal.jpg"/>
        </property>
        <property name="workspace1" type="empty">
          <property name="color-style" type="int" value="0"/>
          <property name="image-style" type="int" value="5"/>
          <property name="last-image" type="string" value="/usr/share/backgrounds/xfce/xfce-teal.jpg"/>
        </property>
      </property>
    </property>
  </property>
  <property name="last" type="empty">
    <property name="window-width" type="int" value="757"/>
    <property name="window-height" type="int" value="526"/>
  </property>
</channel>
 
Unfortunately, i can't find here `<property name="color1" type="array">...</property>` block of code. When you try to change image-style to '0' using this default configuration you see colored background (#152233) but in locked mode used black color. 

Maybe you need use defaults of https://git.xfce.org/xfce/xfdesktop/tree/src/xfce-backdrop.c#n768 instead of black?

Thank you! :)
Comment 7 Sean Davis editbugs 2018-10-27 12:21:14 CEST
Thanks for the suggestion! Applied this change to master, and closing out this bug now.

Bug #14769

Reported by:
Yury Martynov
Reported on: 2018-10-18
Last modified on: 2018-10-27

People

Assignee:
Sean Davis
CC List:
2 users

Version

Attachments

screenshot (52.97 KB, image/png)
2018-10-18 23:12 CEST , Yury Martynov
no flags

Additional information