Set css name for widgets

In Gtk+ 3.20, you need to use the css name to select elements,
rather than the gtype name.  Therefore, these must be added.

The css name must be set before the class instances are created, as
it effects the class rather than the instance.  This is why it must
be places after the class definition.
This commit is contained in:
Sam Parkinson 2015-12-31 22:53:47 +11:00
parent 0af1ce7b97
commit 8d0cc98e43
5 changed files with 15 additions and 1 deletions

View File

@ -209,6 +209,8 @@ class Alert(Gtk.EventBox):
def __button_clicked_cb(self, button, response_id): def __button_clicked_cb(self, button, response_id):
self._response(response_id) self._response(response_id)
if hasattr(Alert, 'set_css_name'):
Alert.set_css_name('alert')
class ConfirmationAlert(Alert): class ConfirmationAlert(Alert):
@ -344,6 +346,8 @@ class _TimeoutIcon(Gtk.Alignment):
def set_text(self, text): def set_text(self, text):
self._text.set_markup('<b>%s</b>' % GLib.markup_escape_text(str(text))) self._text.set_markup('<b>%s</b>' % GLib.markup_escape_text(str(text)))
if hasattr(_TimeoutIcon, 'set_css_name'):
_TimeoutIcon.set_css_name('timeouticon')
class _TimeoutAlert(Alert): class _TimeoutAlert(Alert):

View File

@ -831,6 +831,8 @@ class CanvasIcon(EventIcon):
def __palette_popdown_cb(self, palette): def __palette_popdown_cb(self, palette):
self.unset_state_flags(Gtk.StateFlags.PRELIGHT) self.unset_state_flags(Gtk.StateFlags.PRELIGHT)
if hasattr(CanvasIcon, 'set_css_name'):
CanvasIcon.set_css_name('canvasicon')
class CellRendererIcon(Gtk.CellRenderer): class CellRendererIcon(Gtk.CellRenderer):

View File

@ -363,7 +363,7 @@ class _PaletteWindowWidget(Gtk.Window):
allocation = self.get_allocation() allocation = self.get_allocation()
context = self.get_style_context() context = self.get_style_context()
context.add_class('toolitem') context.add_class('palette')
if gap: if gap:
cr.save() cr.save()
cr.set_source_rgb(0, 0, 0) cr.set_source_rgb(0, 0, 0)
@ -406,6 +406,8 @@ class _PaletteWindowWidget(Gtk.Window):
self.disconnect_by_func(self.__enter_notify_event_cb) self.disconnect_by_func(self.__enter_notify_event_cb)
self.disconnect_by_func(self.__leave_notify_event_cb) self.disconnect_by_func(self.__leave_notify_event_cb)
self.hide() self.hide()
if hasattr(_PaletteWindowWidget, 'set_css_name'):
_PaletteWindowWidget.set_css_name('palette')
class MouseSpeedDetector(GObject.GObject): class MouseSpeedDetector(GObject.GObject):

View File

@ -202,6 +202,8 @@ class ToolbarBox(Gtk.VBox):
if button == self.expanded_button: if button == self.expanded_button:
self.remove(button.page_widget) self.remove(button.page_widget)
self._expanded_button_index = -1 self._expanded_button_index = -1
if hasattr(ToolbarBox, 'set_css_name'):
ToolbarBox.set_css_name('toolbarbox')
class _ToolbarPalette(PaletteWindow): class _ToolbarPalette(PaletteWindow):

View File

@ -323,6 +323,8 @@ class HTray(Gtk.EventBox):
def scroll_to_item(self, item): def scroll_to_item(self, item):
self._viewport.scroll_to_item(item) self._viewport.scroll_to_item(item)
if hasattr(HTray, 'set_css_name'):
HTray.set_css_name('htray')
class VTray(Gtk.EventBox): class VTray(Gtk.EventBox):
@ -414,6 +416,8 @@ class VTray(Gtk.EventBox):
def scroll_to_item(self, item): def scroll_to_item(self, item):
self._viewport.scroll_to_item(item) self._viewport.scroll_to_item(item)
if hasattr(VTray, 'set_css_name'):
VTray.set_css_name('VTray')
class TrayButton(ToolButton): class TrayButton(ToolButton):