[hafqa] [hafqa] [Bug 1186] New: Bugs in GTK Button's handling of reliefs and focus

From: bugzilla-daemon at maemo.org bugzilla-daemon at maemo.org
Date: Thu Mar 29 06:55:25 EEST 2007
https://maemo.org/bugzilla/show_bug.cgi?id=1186

           Summary: Bugs in GTK Button's handling of reliefs and focus
           Product: haf
           Version: unspecified
          Platform: All
        OS/Version: All
            Status: NEW
          Severity: normal
          Priority: P2
         Component: gtk
        AssignedTo: tommi.komulainen at nokia.com
        ReportedBy: sean at cs.gmu.edu
         QAContact: hafqa at maemo.org


In the code provided below are three buttons, each of which is supposed to refuse focus, and each of 
which is supposed to have NO relief border at all.

Expected behavior: a button should never show a relief in any color, even while being clicked on.

Actual behavior:

1. If you click on a button, its relief is shown in the theme's color (in my case, blue).
2. If you release a button, it obtains some kind of focus and displays a relief in gray until some other 
widget has been clicked on.

Thus, unlike expected documentation, there appears to be no way to create a button which never 
displays a border at all, AND never accepts focus.


Sample code:


#!/usr/bin/env python2.5
import pygtk
import hildon
pygtk.require('2.0')
import gtk

h = gtk.Window()
v = gtk.HBox(homogeneous=False, spacing=20)
a = gtk.Alignment(0,0,1,0)
a.show()
h.add(a)
v.show()
a.add(v)

b = gtk.Button()
b.set_relief(gtk.RELIEF_NONE)  # no difference between RELIEF_NORMAL and RELIEF_HALF btw
b.set_label("1")
b.set_size_request(50,50)
b.set_focus_on_click(False)
b.set_property("can-focus", False)
b.show()
v.pack_start(b, expand=False)

c = gtk.Button()
c.set_relief(gtk.RELIEF_NONE)  # no difference between RELIEF_NORMAL and RELIEF_HALF btw
c.set_label("2")
c.set_size_request(50,50)
c.set_focus_on_click(False)
c.set_property("can-focus", False)
c.show()
v.pack_start(c, expand=False)

d = gtk.Button()
d.set_relief(gtk.RELIEF_NONE)  # no difference between RELIEF_NORMAL and RELIEF_HALF btw
d.set_label("3")
d.set_size_request(50,50)
d.set_focus_on_click(False)
d.set_property("can-focus", False)
d.show()
v.pack_start(d, expand=False)

h.show()
gtk.main()

-- 
Configure bugmail: https://maemo.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug, or are watching the QA contact.

More information about the hafqa mailing list