Hello community,
here is the log from the commit of package oxygen-gtk3 for openSUSE:Factory checked in at 2012-03-01 17:21:55
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/oxygen-gtk3 (Old)
and /work/SRC/openSUSE:Factory/.oxygen-gtk3.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "oxygen-gtk3", Maintainer is ""
Changes:
--------
--- /work/SRC/openSUSE:Factory/oxygen-gtk3/oxygen-gtk3.changes 2012-01-30 12:27:12.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.oxygen-gtk3.new/oxygen-gtk3.changes 2012-03-01 17:21:58.000000000 +0100
@@ -1,0 +2,12 @@
+Fri Feb 17 21:03:29 UTC 2012 - asterios.dramis@gmail.com
+
+- Update to 1.0.1:
+ Fixes include:
+ * Email list in evolution.
+ * Warnings when parsing CSS style sheet.
+ * Icon background with gtk3.3.
+ * High memory allocation for cached pixmaps.
+- Split the package into gtk3-engine-oxygen and gtk3-theme-oxygen subpackages
+ for consistency with other gtk engines and themes (bnc#747107).
+
+-------------------------------------------------------------------
Old:
----
oxygen-gtk3-1.0.0.tar.bz2
New:
----
oxygen-gtk3-1.0.1.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ oxygen-gtk3.spec ++++++
--- /var/tmp/diff_new_pack.JRX6Gt/_old 2012-03-01 17:21:59.000000000 +0100
+++ /var/tmp/diff_new_pack.JRX6Gt/_new 2012-03-01 17:21:59.000000000 +0100
@@ -17,7 +17,7 @@
Name: oxygen-gtk3
-Version: 1.0.0
+Version: 1.0.1
Release: 0
Summary: A Port of the default KDE Widget Theme (Oxygen), to GTK 3.x
License: LGPL-2.1+
@@ -45,6 +45,48 @@
widget appearance via hard coded pixmaps, which otherwise breaks everytime some
setting is changed in KDE.
+%package -n gtk3-engine-oxygen
+Summary: Oxygen GTK 3.x Theme Engine
+Group: System/GUI/Other
+
+%description -n gtk3-engine-oxygen
+Oxygen-Gtk3 is a port of the default KDE widget theme (Oxygen), to gtk 3.x.
+
+It's primary goal is to ensure visual consistency between gtk-based and qt-based
+applications running under KDE. A secondary objective is to also have a
+stand-alone nice looking gtk theme that would behave well on other Desktop
+Environments.
+
+Unlike other attempts made to port the KDE oxygen theme to gtk, this attempt does
+not depend on Qt (via some Qt to Gtk conversion engine), nor does render the
+widget appearance via hard coded pixmaps, which otherwise breaks everytime some
+setting is changed in KDE.
+
+This package contains the Oxygen gtk 3.x theme engine.
+
+%package -n gtk3-theme-oxygen
+Summary: Oxygen GTK 3.x Theme
+Group: System/GUI/Other
+Requires: gtk3-engine-oxygen = %{version}
+# oxygen-gtk3 was last used at version 1.0.0 in K:D:F
+Provides: oxygen-gtk3 = %{version}
+Obsoletes: oxygen-gtk3 < %{version}
+
+%description -n gtk3-theme-oxygen
+Oxygen-Gtk3 is a port of the default KDE widget theme (Oxygen), to gtk 3.x.
+
+It's primary goal is to ensure visual consistency between gtk-based and qt-based
+applications running under KDE. A secondary objective is to also have a
+stand-alone nice looking gtk theme that would behave well on other Desktop
+Environments.
+
+Unlike other attempts made to port the KDE oxygen theme to gtk, this attempt does
+not depend on Qt (via some Qt to Gtk conversion engine), nor does render the
+widget appearance via hard coded pixmaps, which otherwise breaks everytime some
+setting is changed in KDE.
+
+This package contains the Oxygen gtk 3.x theme.
+
%prep
%setup -q
@@ -68,11 +110,15 @@
%make_install
popd
-%files
+%files -n gtk3-engine-oxygen
%defattr(-,root,root,-)
%doc AUTHORS COPYING README TODO
-%{_bindir}/oxygen-gtk3-demo
%{_libdir}/gtk-3.0/3.0.0/theming-engines/liboxygen-gtk.so
+
+%files -n gtk3-theme-oxygen
+%defattr(-,root,root,-)
+%doc AUTHORS COPYING README TODO
+%{_bindir}/oxygen-gtk3-demo
%dir %{_datadir}/themes/oxygen-gtk
%{_datadir}/themes/oxygen-gtk/gtk-3.0/
++++++ oxygen-gtk3-1.0.0.tar.bz2 -> oxygen-gtk3-1.0.1.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/oxygen-gtk3-1.0.0/CMakeLists.txt new/oxygen-gtk3-1.0.1/CMakeLists.txt
--- old/oxygen-gtk3-1.0.0/CMakeLists.txt 2012-01-16 09:46:33.000000000 +0100
+++ new/oxygen-gtk3-1.0.1/CMakeLists.txt 2012-02-15 10:38:23.000000000 +0100
@@ -9,11 +9,11 @@
set( CPACK_PACKAGE_NAME "oxygen-gtk3" )
set( CPACK_SOURCE_PACKAGE_NAME "oxygen-gtk3" )
set( CPACK_SOURCE_GENERATOR TBZ2 )
-set( CPACK_PACKAGE_DESCRIPTION_SUMMARY "Oxygen Gtk theme" )
+set( CPACK_PACKAGE_DESCRIPTION_SUMMARY "Oxygen Gtk2 theme" )
set( CPACK_PACKAGE_VENDOR "hugo@oxygen-icons.org" )
set( CPACK_PACKAGE_VERSION_MAJOR "1" )
set( CPACK_PACKAGE_VERSION_MINOR "0" )
-set( CPACK_PACKAGE_VERSION_PATCH "0" )
+set( CPACK_PACKAGE_VERSION_PATCH "1" )
set( CPACK_SOURCE_IGNORE_FILES "build" "^${PROJECT_SOURCE_DIR}.*/.git/" )
##################################
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/oxygen-gtk3-1.0.0/metacity.patch new/oxygen-gtk3-1.0.1/metacity.patch
--- old/oxygen-gtk3-1.0.0/metacity.patch 1970-01-01 01:00:00.000000000 +0100
+++ new/oxygen-gtk3-1.0.1/metacity.patch 2012-02-15 10:38:23.000000000 +0100
@@ -0,0 +1,21 @@
+diff --git a/src/oxygenqtsettings.cpp b/src/oxygenqtsettings.cpp
+index 4ed5401..9422996 100644
+--- a/src/oxygenqtsettings.cpp
++++ b/src/oxygenqtsettings.cpp
+@@ -449,8 +449,14 @@ namespace Oxygen
+ gchar** gtkSearchPath;
+ int nElements;
+ gtk_icon_theme_get_search_path( gtk_icon_theme_get_default(), >kSearchPath, &nElements );
+- for( int i=0; iGtkMenuItem { padding: 2 5; }
-GtkMenu>GtkMenuItem { padding: 5 1; }
-GtkMenu>GtkSeparatorMenuItem { padding: 1 1; }
+GtkMenuBar>GtkMenuItem { padding: 2px 5px; }
+GtkMenu>GtkMenuItem { padding: 5px 1px; }
+GtkMenu>GtkSeparatorMenuItem { padding: 1px 1px; }
/* menu toolbutton */
GtkMenuToolButton, GtkMenuToolButton * {
- border-width: 0;
- -GtkButton-focus-padding: 0;
- -GtkWidget-focus-line-width: 0;
+ border-width: 0px;
+ -GtkButton-focus-padding: 0px;
+ -GtkWidget-focus-line-width: 0px;
}
/* notebooks */
-GtkNotebook { padding: 4; }
+GtkNotebook { padding: 4px; }
/* option menu */
-GtkOptionMenu { padding: 0 4; }
+GtkOptionMenu { padding: 0px 4px; }
/* separators */
-GtkSeparator { border-width: 3; }
+GtkSeparator { border-width: 3px; }
/* frames */
-GtkFrame { padding: 1; }
-GtkScrolledWindow { padding: 1; }
-GtkViewport { padding: 1; }
-GtkProgressBar { padding: 0; }
+GtkFrame { padding: 1px; }
+GtkScrolledWindow { padding: 1px; }
+GtkViewport { padding: 1px; }
+GtkProgressBar { padding: 0px; }
/* combo boxes */
-GtkComboBox { padding: 1 0; }
-GtkComboBox>GtkFrame { padding: 4; }
+GtkComboBox { padding: 1px 0px; }
+GtkComboBox>GtkFrame { padding: 4px; }
GtkComboBox>GtkEntry {
- padding: 2 5;
+ padding: 2px 5px;
}
/* headers */
-GtkTreeView>GtkButton { border-width: 0 2; }
-GtkList>GtkButton { border-width: 0 2; }
+GtkTreeView>GtkButton { border-width: 0px 2px; }
+GtkList>GtkButton { border-width: 0px 2px; }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/oxygen-gtk3-1.0.0/src/CMakeLists.txt new/oxygen-gtk3-1.0.1/src/CMakeLists.txt
--- old/oxygen-gtk3-1.0.0/src/CMakeLists.txt 2012-01-16 09:46:33.000000000 +0100
+++ new/oxygen-gtk3-1.0.1/src/CMakeLists.txt 2012-02-15 10:38:23.000000000 +0100
@@ -47,6 +47,8 @@
oxygengtktypenames.cpp
oxygengtkutils.cpp
oxygenloghandler.cpp
+ oxygenobjectcounter.cpp
+ oxygenobjectcountermap.cpp
oxygenoptionmap.cpp
oxygenpalette.cpp
oxygenpathlist.cpp
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/oxygen-gtk3-1.0.0/src/animations/oxygeninnershadowdata.cpp new/oxygen-gtk3-1.0.1/src/animations/oxygeninnershadowdata.cpp
--- old/oxygen-gtk3-1.0.0/src/animations/oxygeninnershadowdata.cpp 2012-01-16 09:46:33.000000000 +0100
+++ new/oxygen-gtk3-1.0.1/src/animations/oxygeninnershadowdata.cpp 2012-02-15 10:38:23.000000000 +0100
@@ -107,7 +107,8 @@
// check window
window &&
gdk_window_get_window_type( window ) == GDK_WINDOW_CHILD &&
- gdk_display_supports_composite( gtk_widget_get_display( widget ) ) )
+ gdk_display_supports_composite( gtk_widget_get_display( widget ) ) &&
+ G_OBJECT_TYPE_NAME(widget) != std::string("MessageList") ) // TODO: implement proper blacklist if there appear too many bad widgets/apps
{
data.initiallyComposited=gdk_window_get_composited(window);
gdk_window_set_composited(window,TRUE);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/oxygen-gtk3-1.0.0/src/animations/oxygentabwidgetdata.cpp new/oxygen-gtk3-1.0.1/src/animations/oxygentabwidgetdata.cpp
--- old/oxygen-gtk3-1.0.0/src/animations/oxygentabwidgetdata.cpp 2012-01-16 09:46:33.000000000 +0100
+++ new/oxygen-gtk3-1.0.1/src/animations/oxygentabwidgetdata.cpp 2012-02-15 10:38:23.000000000 +0100
@@ -136,6 +136,18 @@
}
//________________________________________________________________________________
+ bool TabWidgetData::isInTab( int x, int y ) const
+ {
+
+ // loop over tab rectangles and check.
+ for( RectangleList::const_iterator iter = _tabRects.begin(); iter != _tabRects.end(); ++iter )
+ { if( Gtk::gdk_rectangle_contains( &(*iter), x, y ) ) return true; }
+
+ return false;
+
+ }
+
+ //________________________________________________________________________________
void TabWidgetData::setHoveredTab( GtkWidget* widget, int index )
{
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/oxygen-gtk3-1.0.0/src/animations/oxygentabwidgetdata.h new/oxygen-gtk3-1.0.1/src/animations/oxygentabwidgetdata.h
--- old/oxygen-gtk3-1.0.0/src/animations/oxygentabwidgetdata.h 2012-01-16 09:46:33.000000000 +0100
+++ new/oxygen-gtk3-1.0.1/src/animations/oxygentabwidgetdata.h 2012-02-15 10:38:23.000000000 +0100
@@ -91,6 +91,9 @@
bool isDirty( void ) const
{ return _dirty; }
+ //! returns true if provided point is in one tab of the widget
+ bool isInTab( int x, int y ) const;
+
//@]
protected:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/oxygen-gtk3-1.0.0/src/animations/oxygentabwidgetengine.h new/oxygen-gtk3-1.0.1/src/animations/oxygentabwidgetengine.h
--- old/oxygen-gtk3-1.0.0/src/animations/oxygentabwidgetengine.h 2012-01-16 09:46:33.000000000 +0100
+++ new/oxygen-gtk3-1.0.1/src/animations/oxygentabwidgetengine.h 2012-02-15 10:38:23.000000000 +0100
@@ -90,6 +90,10 @@
int hoveredTab( GtkWidget* widget )
{ return data().value( widget ).hoveredTab(); }
+ //! returns true if provided point is in one tab of the widget
+ bool isInTab( GtkWidget* widget, int x, int y )
+ { return data().value( widget ).isInTab( x, y ); }
+
//! true when drag is in progress
bool dragInProgress( GtkWidget* widget )
{ return data().value( widget ).dragInProgress(); }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/oxygen-gtk3-1.0.0/src/animations/oxygentimeline.cpp new/oxygen-gtk3-1.0.1/src/animations/oxygentimeline.cpp
--- old/oxygen-gtk3-1.0.0/src/animations/oxygentimeline.cpp 2012-01-16 09:46:33.000000000 +0100
+++ new/oxygen-gtk3-1.0.1/src/animations/oxygentimeline.cpp 2012-02-15 10:38:23.000000000 +0100
@@ -27,6 +27,9 @@
{
//_________________________________________________
+ int TimeLine::_steps = 0;
+
+ //_________________________________________________
TimeLine::TimeLine( int duration ):
_duration( duration ),
_enabled( true ),
@@ -131,9 +134,13 @@
assert( _time < _duration );
assert( _time <= elapsed );
- _value = ( _value*double(_duration - elapsed) + end*double(elapsed - _time) )/double(_duration - _time);
+ double oldValue( _value );
+ _value = digitize( ( _value*double(_duration - elapsed) + end*double(elapsed - _time) )/double(_duration - _time) );
_time = elapsed;
- trigger();
+
+ // trigger callback if value is actually changed
+ if( _value != oldValue ) trigger();
+
return true;
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/oxygen-gtk3-1.0.0/src/animations/oxygentimeline.h new/oxygen-gtk3-1.0.1/src/animations/oxygentimeline.h
--- old/oxygen-gtk3-1.0.0/src/animations/oxygentimeline.h 2012-01-16 09:46:33.000000000 +0100
+++ new/oxygen-gtk3-1.0.1/src/animations/oxygentimeline.h 2012-02-15 10:38:23.000000000 +0100
@@ -23,6 +23,7 @@
#include
#include <cassert>
+#include <cmath>
namespace Oxygen
{
@@ -114,12 +115,24 @@
//@}
+ //! steps
+ static void setSteps( int value )
+ { _steps = value; }
+
protected:
//! run callback
void trigger( void ) const
{ if( _func ) (_func)(_data); }
+ //! digitize value, based on steps
+ double digitize( const double& value ) const
+ {
+ if( _steps > 0 ) return std::floor( value*_steps )/_steps;
+ else return value;
+ }
+
+
private:
//! duration
@@ -149,6 +162,9 @@
//! data
gpointer _data;
+ //! steps
+ static int _steps;
+
};
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/oxygen-gtk3-1.0.0/src/animations/oxygentreeviewdata.cpp new/oxygen-gtk3-1.0.1/src/animations/oxygentreeviewdata.cpp
--- old/oxygen-gtk3-1.0.0/src/animations/oxygentreeviewdata.cpp 2012-01-16 09:46:33.000000000 +0100
+++ new/oxygen-gtk3-1.0.1/src/animations/oxygentreeviewdata.cpp 2012-02-15 10:38:23.000000000 +0100
@@ -256,18 +256,6 @@
}
//________________________________________________________________________________
- void TreeViewData::columnsChanged( GtkTreeView*, gpointer data )
- {
-
- #if OXYGEN_DEBUG
- std::cerr << "Oxygen::TreeViewData::columnsChanged" << std::endl;
- #endif
-
- static_cast(data)->updateColumnsCursor();
- return;
- }
-
- //________________________________________________________________________________
gboolean TreeViewData::motionNotifyEvent(GtkWidget* widget, GdkEventMotion* event, gpointer data )
{
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/oxygen-gtk3-1.0.0/src/animations/oxygentreeviewdata.h new/oxygen-gtk3-1.0.1/src/animations/oxygentreeviewdata.h
--- old/oxygen-gtk3-1.0.0/src/animations/oxygentreeviewdata.h 2012-01-16 09:46:33.000000000 +0100
+++ new/oxygen-gtk3-1.0.1/src/animations/oxygentreeviewdata.h 2012-02-15 10:38:23.000000000 +0100
@@ -87,9 +87,6 @@
//! set mouse over state
virtual bool setHovered( GtkWidget* widget, bool value );
- //! update columns cursor
- void updateColumnsCursor( void ) const;
-
//! update hovered cell based on pointer position
void updatePosition( GtkWidget*, int x, int y );
@@ -136,7 +133,6 @@
//@{
static gboolean childDestroyNotifyEvent( GtkWidget*, gpointer );
static void childValueChanged( GtkRange*, gpointer );
- static void columnsChanged( GtkTreeView*, gpointer );
static gboolean motionNotifyEvent( GtkWidget*, GdkEventMotion*, gpointer );
//@}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/oxygen-gtk3-1.0.0/src/log new/oxygen-gtk3-1.0.1/src/log
--- old/oxygen-gtk3-1.0.0/src/log 1970-01-01 01:00:00.000000000 +0100
+++ new/oxygen-gtk3-1.0.1/src/log 2012-02-15 10:38:23.000000000 +0100
@@ -0,0 +1,141 @@
+
+
+Oxygen::render_background - context: 0x8917000 rect: ( 0,0,600,17) path: /GtkWindow/GtkVBox/GtkHBox/GtkMenuBar
+Oxygen::render_background - context: 0x8917000 rect: ( 0,0,32,17) path: /GtkWindow/GtkVBox/GtkHBox/GtkMenuBar/GtkImageMenuItem
+Oxygen::render_background - context: 0x8917000 rect: ( 0,0,600,400) path: /GtkWindow
+Oxygen::render_background - context: 0x8918778 rect: ( 0,0,14,20) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView/GtkButton
+Oxygen::render_background - context: 0x8918778 rect: ( 0,0,181,20) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView/GtkButton
+Oxygen::render_background - context: 0x8918778 rect: ( 0,0,188,20) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView/GtkButton
+Oxygen::render_background - context: 0x8918778 rect: ( 0,0,193,20) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView/GtkButton
+Oxygen::render_background - context: 0x8918778 rect: ( 0,0,10,20) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView/GtkButton
+Oxygen::render_background - context: 0x8918778 rect: ( 0,0,10,20) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView/GtkButton
+Oxygen::render_background - context: 0x8918778 rect: ( 0,42,596,187) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView
+Oxygen::render_background - context: 0x8918778 rect: ( 0,0,14,21) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView
+Oxygen::render_background - context: 0x8918778 rect: ( 14,0,181,21) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView
+Oxygen::render_background - context: 0x8918778 rect: ( 195,0,188,21) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView
+Oxygen::render_background - context: 0x8918778 rect: ( 383,0,193,21) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView
+Oxygen::render_background - context: 0x8918778 rect: ( 576,0,10,21) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView
+Oxygen::render_background - context: 0x8918778 rect: ( 586,0,10,21) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView
+Oxygen::render_background - context: 0x8918778 rect: ( 0,21,14,21) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView
+Oxygen::render_background - context: 0x8918778 rect: ( 14,21,181,21) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView
+Oxygen::render_background - context: 0x8918778 rect: ( 195,21,188,21) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView
+Oxygen::render_background - context: 0x8918778 rect: ( 383,21,193,21) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView
+Oxygen::render_background - context: 0x8918778 rect: ( 576,21,10,21) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView
+Oxygen::render_background - context: 0x8918778 rect: ( 586,21,10,21) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView
+Oxygen::render_background - context: 0x8917000 rect: ( -4,-6,172,177) path: /GtkWindow/GtkMenu
+Oxygen::render_background - context: 0x8917000 rect: ( 0,0,172,177) path: /GtkWindow/GtkMenu
+Oxygen::render_background - context: 0x8917000 rect: ( 0,0,600,400) path: /GtkWindow
+Oxygen::render_background - context: 0x8917000 rect: ( 0,0,600,17) path: /GtkWindow/GtkVBox/GtkHBox/GtkMenuBar
+Oxygen::render_background - context: 0x8917000 rect: ( 0,0,600,400) path: /GtkWindow
+Oxygen::render_background - context: 0x891fc10 rect: ( 0,0,14,20) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView/GtkButton
+Oxygen::render_background - context: 0x891fc10 rect: ( 0,0,181,20) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView/GtkButton
+Oxygen::render_background - context: 0x891fc10 rect: ( 0,0,188,20) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView/GtkButton
+Oxygen::render_background - context: 0x891fc10 rect: ( 0,0,193,20) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView/GtkButton
+Oxygen::render_background - context: 0x891fc10 rect: ( 0,0,10,20) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView/GtkButton
+Oxygen::render_background - context: 0x891fc10 rect: ( 0,0,10,20) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView/GtkButton
+Oxygen::render_background - context: 0x891fc10 rect: ( 0,42,596,187) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView
+Oxygen::render_background - context: 0x891fc10 rect: ( 0,0,14,21) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView
+Oxygen::render_background - context: 0x891fc10 rect: ( 14,0,181,21) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView
+Oxygen::render_background - context: 0x891fc10 rect: ( 195,0,188,21) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView
+Oxygen::render_background - context: 0x891fc10 rect: ( 383,0,193,21) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView
+Oxygen::render_background - context: 0x891fc10 rect: ( 576,0,10,21) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView
+Oxygen::render_background - context: 0x891fc10 rect: ( 586,0,10,21) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView
+Oxygen::render_background - context: 0x891fc10 rect: ( 0,21,14,21) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView
+Oxygen::render_background - context: 0x891fc10 rect: ( 14,21,181,21) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView
+Oxygen::render_background - context: 0x891fc10 rect: ( 195,21,188,21) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView
+Oxygen::render_background - context: 0x891fc10 rect: ( 383,21,193,21) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView
+Oxygen::render_background - context: 0x891fc10 rect: ( 576,21,10,21) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView
+Oxygen::render_background - context: 0x891fc10 rect: ( 586,21,10,21) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView
+Oxygen::render_background - context: 0x8917000 rect: ( 0,0,600,400) path: /GtkWindow
+Oxygen::render_background - context: 0x8920360 rect: ( 0,0,14,20) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView/GtkButton
+Oxygen::render_background - context: 0x8920360 rect: ( 0,0,181,20) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView/GtkButton
+Oxygen::render_background - context: 0x8920360 rect: ( 0,0,188,20) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView/GtkButton
+Oxygen::render_background - context: 0x8920360 rect: ( 0,0,193,20) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView/GtkButton
+Oxygen::render_background - context: 0x8920360 rect: ( 0,0,10,20) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView/GtkButton
+Oxygen::render_background - context: 0x8920360 rect: ( 0,0,10,20) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView/GtkButton
+Oxygen::render_background - context: 0x8920360 rect: ( 0,42,596,187) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView
+Oxygen::render_background - context: 0x8920360 rect: ( 0,0,14,21) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView
+Oxygen::render_background - context: 0x8920360 rect: ( 14,0,181,21) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView
+Oxygen::render_background - context: 0x8920360 rect: ( 195,0,188,21) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView
+Oxygen::render_background - context: 0x8920360 rect: ( 383,0,193,21) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView
+Oxygen::render_background - context: 0x8920360 rect: ( 576,0,10,21) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView
+Oxygen::render_background - context: 0x8920360 rect: ( 586,0,10,21) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView
+Oxygen::render_background - context: 0x8920360 rect: ( 0,21,14,21) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView
+Oxygen::render_background - context: 0x8920360 rect: ( 14,21,181,21) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView
+Oxygen::render_background - context: 0x8920360 rect: ( 195,21,188,21) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView
+Oxygen::render_background - context: 0x8920360 rect: ( 383,21,193,21) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView
+Oxygen::render_background - context: 0x8920360 rect: ( 576,21,10,21) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView
+Oxygen::render_background - context: 0x8920360 rect: ( 586,21,10,21) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView
+Oxygen::render_background - context: 0x8920360 rect: ( 0,0,600,400) path: /GtkWindow
+Oxygen::render_background - context: 0x8920a10 rect: ( 0,0,14,20) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView/GtkButton
+Oxygen::render_background - context: 0x8920a10 rect: ( 0,0,181,20) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView/GtkButton
+Oxygen::render_background - context: 0x8920a10 rect: ( 0,0,188,20) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView/GtkButton
+Oxygen::render_background - context: 0x8920a10 rect: ( 0,0,193,20) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView/GtkButton
+Oxygen::render_background - context: 0x8920a10 rect: ( 0,0,10,20) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView/GtkButton
+Oxygen::render_background - context: 0x8920a10 rect: ( 0,0,10,20) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView/GtkButton
+Oxygen::render_background - context: 0x8920a10 rect: ( 0,42,596,187) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView
+Oxygen::render_background - context: 0x8920a10 rect: ( 0,0,14,21) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView
+Oxygen::render_background - context: 0x8920a10 rect: ( 14,0,181,21) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView
+Oxygen::render_background - context: 0x8920a10 rect: ( 195,0,188,21) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView
+Oxygen::render_background - context: 0x8920a10 rect: ( 383,0,193,21) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView
+Oxygen::render_background - context: 0x8920a10 rect: ( 576,0,10,21) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView
+Oxygen::render_background - context: 0x8920a10 rect: ( 586,0,10,21) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView
+Oxygen::render_background - context: 0x8920a10 rect: ( 0,21,14,21) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView
+Oxygen::render_background - context: 0x8920a10 rect: ( 14,21,181,21) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView
+Oxygen::render_background - context: 0x8920a10 rect: ( 195,21,188,21) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView
+Oxygen::render_background - context: 0x8920a10 rect: ( 383,21,193,21) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView
+Oxygen::render_background - context: 0x8920a10 rect: ( 576,21,10,21) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView
+Oxygen::render_background - context: 0x8920a10 rect: ( 586,21,10,21) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView
+Oxygen::render_background - context: 0x8917000 rect: ( 0,0,600,400) path: /GtkWindow
+Oxygen::render_background - context: 0x8917000 rect: ( 0,0,600,17) path: /GtkWindow/GtkVBox/GtkHBox/GtkMenuBar
+Oxygen::render_background - context: 0x8917000 rect: ( 0,0,32,17) path: /GtkWindow/GtkVBox/GtkHBox/GtkMenuBar/GtkImageMenuItem
+Oxygen::render_background - context: 0x8917000 rect: ( 0,0,600,17) path: /GtkWindow/GtkVBox/GtkHBox/GtkMenuBar
+Oxygen::render_background - context: 0x8917000 rect: ( 0,0,600,400) path: /GtkWindow
+Oxygen::render_background - context: 0x8917000 rect: ( 0,0,28,31) path: /GtkWindow/GtkVBox/GtkHBox/GtkHBox/GtkButton
+Oxygen::render_background - context: 0x8917000 rect: ( 0,0,600,400) path: /GtkWindow
+Oxygen::render_background - context: 0x8917000 rect: ( 0,0,600,17) path: /GtkWindow/GtkVBox/GtkHBox/GtkMenuBar
+Oxygen::render_background - context: 0x8917000 rect: ( 0,0,600,17) path: /GtkWindow/GtkVBox/GtkHBox/GtkMenuBar
+Oxygen::render_background - context: 0x8917000 rect: ( 0,0,600,17) path: /GtkWindow/GtkVBox/GtkHBox/GtkMenuBar
+Oxygen::render_background - context: 0x8917000 rect: ( 0,0,600,17) path: /GtkWindow/GtkVBox/GtkHBox/GtkMenuBar
+Oxygen::render_background - context: 0x8917000 rect: ( 0,0,600,17) path: /GtkWindow/GtkVBox/GtkHBox/GtkMenuBar
+Oxygen::render_background - context: 0x8917000 rect: ( 0,0,600,400) path: /GtkWindow
+Oxygen::render_background - context: 0x8925420 rect: ( 0,0,14,20) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView/GtkButton
+Oxygen::render_background - context: 0x8925420 rect: ( 0,0,181,20) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView/GtkButton
+Oxygen::render_background - context: 0x8925420 rect: ( 0,0,188,20) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView/GtkButton
+Oxygen::render_background - context: 0x8925420 rect: ( 0,0,193,20) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView/GtkButton
+Oxygen::render_background - context: 0x8925420 rect: ( 0,0,10,20) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView/GtkButton
+Oxygen::render_background - context: 0x8925420 rect: ( 0,0,10,20) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView/GtkButton
+Oxygen::render_background - context: 0x8925420 rect: ( 0,42,596,187) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView
+Oxygen::render_background - context: 0x8925420 rect: ( 0,0,14,21) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView
+Oxygen::render_background - context: 0x8925420 rect: ( 14,0,181,21) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView
+Oxygen::render_background - context: 0x8925420 rect: ( 195,0,188,21) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView
+Oxygen::render_background - context: 0x8925420 rect: ( 383,0,193,21) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView
+Oxygen::render_background - context: 0x8925420 rect: ( 576,0,10,21) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView
+Oxygen::render_background - context: 0x8925420 rect: ( 586,0,10,21) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView
+Oxygen::render_background - context: 0x8925420 rect: ( 0,21,14,21) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView
+Oxygen::render_background - context: 0x8925420 rect: ( 14,21,181,21) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView
+Oxygen::render_background - context: 0x8925420 rect: ( 195,21,188,21) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView
+Oxygen::render_background - context: 0x8925420 rect: ( 383,21,193,21) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView
+Oxygen::render_background - context: 0x8925420 rect: ( 576,21,10,21) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView
+Oxygen::render_background - context: 0x8925420 rect: ( 586,21,10,21) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView
+Oxygen::render_background - context: 0x8917000 rect: ( 0,0,600,400) path: /GtkWindow
+Oxygen::render_background - context: 0x8924748 rect: ( 0,0,14,20) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView/GtkButton
+Oxygen::render_background - context: 0x8924748 rect: ( 0,0,181,20) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView/GtkButton
+Oxygen::render_background - context: 0x8924748 rect: ( 0,0,188,20) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView/GtkButton
+Oxygen::render_background - context: 0x8924748 rect: ( 0,0,193,20) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView/GtkButton
+Oxygen::render_background - context: 0x8924748 rect: ( 0,0,10,20) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView/GtkButton
+Oxygen::render_background - context: 0x8924748 rect: ( 0,0,10,20) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView/GtkButton
+Oxygen::render_background - context: 0x8924748 rect: ( 0,42,596,187) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView
+Oxygen::render_background - context: 0x8924748 rect: ( 0,0,14,21) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView
+Oxygen::render_background - context: 0x8924748 rect: ( 14,0,181,21) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView
+Oxygen::render_background - context: 0x8924748 rect: ( 195,0,188,21) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView
+Oxygen::render_background - context: 0x8924748 rect: ( 383,0,193,21) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView
+Oxygen::render_background - context: 0x8924748 rect: ( 576,0,10,21) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView
+Oxygen::render_background - context: 0x8924748 rect: ( 586,0,10,21) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView
+Oxygen::render_background - context: 0x8924748 rect: ( 0,21,14,21) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView
+Oxygen::render_background - context: 0x8924748 rect: ( 14,21,181,21) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView
+Oxygen::render_background - context: 0x8924748 rect: ( 195,21,188,21) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView
+Oxygen::render_background - context: 0x8924748 rect: ( 383,21,193,21) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView
+Oxygen::render_background - context: 0x8924748 rect: ( 576,21,10,21) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView
+Oxygen::render_background - context: 0x8924748 rect: ( 586,21,10,21) path: /GtkWindow/GtkVBox/GtkHBox/GtkAlignment/GtkNotebook/GtkScrolledWindow/GtkTreeView
+Oxygen::render_background - context: 0x8917000 rect: ( 0,0,600,400) path: /GtkWindow
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/oxygen-gtk3-1.0.0/src/oxygencairosurfacecache.h new/oxygen-gtk3-1.0.1/src/oxygencairosurfacecache.h
--- old/oxygen-gtk3-1.0.0/src/oxygencairosurfacecache.h 2012-01-16 09:46:33.000000000 +0100
+++ new/oxygen-gtk3-1.0.1/src/oxygencairosurfacecache.h 2012-02-15 10:38:23.000000000 +0100
@@ -37,7 +37,8 @@
public:
//! constructor
- CairoSurfaceCache( void )
+ CairoSurfaceCache( size_t size = 100 ):
+ Cache( size )
{}
//! destructor
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/oxygen-gtk3-1.0.0/src/oxygenobjectcounter.cpp new/oxygen-gtk3-1.0.1/src/oxygenobjectcounter.cpp
--- old/oxygen-gtk3-1.0.0/src/oxygenobjectcounter.cpp 1970-01-01 01:00:00.000000000 +0100
+++ new/oxygen-gtk3-1.0.1/src/oxygenobjectcounter.cpp 2012-02-15 10:38:23.000000000 +0100
@@ -0,0 +1,51 @@
+/*
+* this file is part of the oxygen gtk engine
+* Copyright (c) 2012 Hugo Pereira Da Costa
+*
+* This library is free software; you can redistribute it and/or
+* modify it under the terms of the GNU Lesser General Public
+* License as published by the Free Software Foundation; either
+* version 2 of the License, or(at your option ) any later version.
+*
+* This library is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this library; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,
+* MA 02110-1301, USA.
+*/
+
+#include "oxygenobjectcounter.h"
+#include "oxygenobjectcountermap.h"
+
+namespace Oxygen
+{
+ //____________________________________________________________
+ ObjectCounter::ObjectCounter( const std::string& name ):
+ count_( 0 )
+ {
+ count_ = ObjectCounterMap::get().counter( name );
+ ObjectCounterMap::get().increment( *count_ );
+ return;
+ }
+
+ //____________________________________________________________
+ ObjectCounter::ObjectCounter( const ObjectCounter& counter ):
+ count_( counter.count_ )
+ {
+ ObjectCounterMap::get().increment( *count_ );
+ return;
+ }
+
+ //____________________________________________________________
+ ObjectCounter::~ObjectCounter( void )
+ { if( count_ ) ObjectCounterMap::get().decrement( *count_ ); }
+
+ //____________________________________________________________
+ int ObjectCounter::count( void ) const
+ { return (count_) ? *count_:0; }
+
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/oxygen-gtk3-1.0.0/src/oxygenobjectcounter.h new/oxygen-gtk3-1.0.1/src/oxygenobjectcounter.h
--- old/oxygen-gtk3-1.0.0/src/oxygenobjectcounter.h 1970-01-01 01:00:00.000000000 +0100
+++ new/oxygen-gtk3-1.0.1/src/oxygenobjectcounter.h 2012-02-15 10:38:23.000000000 +0100
@@ -0,0 +1,61 @@
+#ifndef Counter_h
+#define Counter_h
+
+/*
+* this file is part of the oxygen gtk engine
+* Copyright (c) 2012 Hugo Pereira Da Costa
+*
+* This library is free software; you can redistribute it and/or
+* modify it under the terms of the GNU Lesser General Public
+* License as published by the Free Software Foundation; either
+* version 2 of the License, or(at your option ) any later version.
+*
+* This library is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this library; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,
+* MA 02110-1301, USA.
+*/
+
+
+#include <string>
+#include <map>
+
+
+namespace Oxygen
+{
+
+ class ObjectCounter
+ {
+
+ public:
+
+ //! counter name and counts pair
+ typedef std::pair Pair;
+
+ //! constructor
+ ObjectCounter( const std::string& name );
+
+ //! constructor
+ ObjectCounter( const ObjectCounter& counter );
+
+ //! destructor
+ virtual ~ObjectCounter( void );
+
+ //! retrieves counter count
+ int count( void ) const;
+
+ private:
+
+ //! pointer to integer counter
+ int* count_;
+
+ };
+
+}
+
+#endif
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/oxygen-gtk3-1.0.0/src/oxygenobjectcountermap.cpp new/oxygen-gtk3-1.0.1/src/oxygenobjectcountermap.cpp
--- old/oxygen-gtk3-1.0.0/src/oxygenobjectcountermap.cpp 1970-01-01 01:00:00.000000000 +0100
+++ new/oxygen-gtk3-1.0.1/src/oxygenobjectcountermap.cpp 2012-02-15 10:38:23.000000000 +0100
@@ -0,0 +1,33 @@
+/*
+* this file is part of the oxygen gtk engine
+* Copyright (c) 2012 Hugo Pereira Da Costa
+*
+* This library is free software; you can redistribute it and/or
+* modify it under the terms of the GNU Lesser General Public
+* License as published by the Free Software Foundation; either
+* version 2 of the License, or(at your option ) any later version.
+*
+* This library is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this library; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,
+* MA 02110-1301, USA.
+*/
+
+#include "oxygenobjectcountermap.h"
+
+namespace Oxygen
+{
+
+ //___________________________________________________
+ ObjectCounterMap& ObjectCounterMap::get( void )
+ {
+ static ObjectCounterMap singleton;
+ return singleton;
+ }
+
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/oxygen-gtk3-1.0.0/src/oxygenobjectcountermap.h new/oxygen-gtk3-1.0.1/src/oxygenobjectcountermap.h
--- old/oxygen-gtk3-1.0.0/src/oxygenobjectcountermap.h 1970-01-01 01:00:00.000000000 +0100
+++ new/oxygen-gtk3-1.0.1/src/oxygenobjectcountermap.h 2012-02-15 10:38:23.000000000 +0100
@@ -0,0 +1,68 @@
+#ifndef ObjectCounterMap_h
+#define ObjectCounterMap_h
+
+/*
+* this file is part of the oxygen gtk engine
+* Copyright (c) 2012 Hugo Pereira Da Costa
+*
+* This library is free software; you can redistribute it and/or
+* modify it under the terms of the GNU Lesser General Public
+* License as published by the Free Software Foundation; either
+* version 2 of the License, or(at your option ) any later version.
+*
+* This library is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this library; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,
+* MA 02110-1301, USA.
+*/
+
+#include <map>
+#include <string>
+
+//! thread-safe Object counter storage map
+namespace Oxygen
+{
+ class ObjectCounterMap: public std::map
+ {
+
+ public:
+
+ //! singleton
+ static ObjectCounterMap& get( void );
+
+ //! get counter for a given name
+ /*!
+ if the name is found, returns adress of the existing counter
+ creates new counter otherwise and returns adress
+ */
+ int* counter( const std::string& name )
+ {
+ iterator iter = find( name );
+ if( iter == end() ) return &(insert( std::make_pair( name, 0 ) ).first->second);
+ else return &(iter->second);
+ }
+
+ //! increment
+ void increment( int& counter )
+ { counter++; }
+
+ //! increment
+ void decrement( int& counter )
+ { counter--; }
+
+ private:
+
+ //! constructor
+ ObjectCounterMap( void )
+ {}
+
+ };
+
+}
+
+#endif
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/oxygen-gtk3-1.0.0/src/oxygenqtsettings.cpp new/oxygen-gtk3-1.0.1/src/oxygenqtsettings.cpp
--- old/oxygen-gtk3-1.0.0/src/oxygenqtsettings.cpp 2012-01-16 09:46:33.000000000 +0100
+++ new/oxygen-gtk3-1.0.1/src/oxygenqtsettings.cpp 2012-02-15 10:38:23.000000000 +0100
@@ -23,6 +23,7 @@
#include "oxygencoloreffect.h"
#include "oxygencolorutils.h"
#include "oxygenfontinfo.h"
+#include "oxygentimeline.h"
#include "config.h"
#include
@@ -193,11 +194,11 @@
if( gtk_widget_get_default_direction() == GTK_TEXT_DIR_RTL )
{
- _css.addToCurrentSection( " -GtkButton-inner-border: 1 0 0 10;" );
+ _css.addToCurrentSection( " -GtkButton-inner-border: 1px 0px 0px 10px;" );
} else {
- _css.addToCurrentSection( " -GtkButton-inner-border: 1 10 0 0;" );
+ _css.addToCurrentSection( " -GtkButton-inner-border: 1px 10px 0px 0px;" );
}
@@ -667,7 +668,7 @@
// tooltips
_css.addSection( "GtkWindow#gtk-tooltip" );
_css.addToCurrentSection( Gtk::CSSOptionstd::string( GTK_STYLE_PROPERTY_BACKGROUND_COLOR, _palette.color( Palette::Tooltip ) ) );
- _css.addToCurrentSection( Gtk::CSSOption<int>( "padding", 3 ) );
+ _css.addToCurrentSection( " padding: 3px;" );
_css.addSection( "GtkWindow#gtk-tooltip GtkLabel" );
_css.addToCurrentSection( Gtk::CSSOptionstd::string( GTK_STYLE_PROPERTY_COLOR, _palette.color( Palette::TooltipText ) ) );
@@ -899,6 +900,9 @@
_menuFollowMouseAnimationsDuration = oxygen.getOption( "[Style]", "MenuFollowMouseAnimationsDuration" ).toVariant<int>(40);
_toolBarAnimationsDuration = oxygen.getOption( "[Style]", "ToolBarAnimationsDuration" ).toVariant<int>(50);
+ // animation steps
+ TimeLine::setSteps( oxygen.getOption( "[Style]", "AnimationSteps" ).toVariant<int>( 10 ) );
+
// window decoration button size
std::string buttonSize( oxygen.getValue( "[Windeco]", "ButtonSize", "Normal") );
if( buttonSize == "Small" ) _buttonSize = ButtonSmall;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/oxygen-gtk3-1.0.0/src/oxygenshadowhelper.cpp new/oxygen-gtk3-1.0.1/src/oxygenshadowhelper.cpp
--- old/oxygen-gtk3-1.0.0/src/oxygenshadowhelper.cpp 2012-01-16 09:46:33.000000000 +0100
+++ new/oxygen-gtk3-1.0.1/src/oxygenshadowhelper.cpp 2012-02-15 10:38:23.000000000 +0100
@@ -365,6 +365,9 @@
<< std::endl;
#endif
+ // check widget
+ if( !GTK_IS_WIDGET( widget ) ) return;
+
// make sure handles and atom are defined
createPixmapHandles();
@@ -408,7 +411,7 @@
void ShadowHelper::uninstallX11Shadows( GtkWidget* widget ) const
{
- if( !widget ) return;
+ if( !GTK_IS_WIDGET( widget ) ) return;
GdkWindow *window = gtk_widget_get_window( widget );
GdkDisplay *display = gtk_widget_get_display( widget );
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/oxygen-gtk3-1.0.0/src/oxygenthemingengine.cpp new/oxygen-gtk3-1.0.1/src/oxygenthemingengine.cpp
--- old/oxygen-gtk3-1.0.0/src/oxygenthemingengine.cpp 2012-01-16 09:46:33.000000000 +0100
+++ new/oxygen-gtk3-1.0.1/src/oxygenthemingengine.cpp 2012-02-15 10:38:23.000000000 +0100
@@ -446,6 +446,7 @@
gtk_widget_path_is_type( path, GTK_TYPE_INFO_BAR ) ||
gtk_widget_path_is_type( path, GTK_TYPE_BUTTON ) ||
gtk_widget_path_is_type( path, GTK_TYPE_MENU_ITEM ) ||
+ gtk_widget_path_is_type( path, GTK_TYPE_IMAGE ) ||
gtk_widget_path_is_type( path, GTK_TYPE_EXPANDER ) )
{
@@ -624,6 +625,10 @@
gtk_theming_engine_get_background_color( engine, state, &background );
Style::instance().renderInfoBar( widget, context, x, y, w, h, Gtk::gdk_get_color( background ) );
+ } else if( Gtk::gtk_widget_path_has_type( path, GTK_TYPE_STATUSBAR ) && borderStyle == GTK_BORDER_STYLE_INSET ) {
+
+ return;
+
} else if( gtk_theming_engine_has_class( engine, GTK_STYLE_CLASS_TOOLTIP ) ) {
// do nothing for tooltips
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/oxygen-gtk3-1.0.0/src/oxygentileset.cpp new/oxygen-gtk3-1.0.1/src/oxygentileset.cpp
--- old/oxygen-gtk3-1.0.0/src/oxygentileset.cpp 2012-01-16 09:46:33.000000000 +0100
+++ new/oxygen-gtk3-1.0.1/src/oxygentileset.cpp 2012-02-15 10:38:23.000000000 +0100
@@ -95,37 +95,6 @@
}
//______________________________________________________________
- TileSet::TileSet( const TileSet& other ):
- _surfaces( other._surfaces ),
- _w1( other._w1 ),
- _h1( other._h1 ),
- _w3( other._w3 ),
- _h3( other._h3 )
- {
-
- // increase ref counter
- for( SurfaceList::iterator iter = _surfaces.begin(); iter != _surfaces.end(); ++iter )
- { cairo_surface_reference( *iter ); }
-
- }
-
- //______________________________________________________________
- TileSet& TileSet::operator = ( const TileSet& other )
- {
-
- _w1 = other._w1;
- _h1 = other._h1;
- _w3 = other._w3;
- _h3 = other._h3;
-
- // copy pixmap list
- _surfaces = other._surfaces;
-
- return *this;
-
- }
-
- //______________________________________________________________
TileSet::~TileSet( void )
{}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/oxygen-gtk3-1.0.0/src/oxygentileset.h new/oxygen-gtk3-1.0.1/src/oxygentileset.h
--- old/oxygen-gtk3-1.0.0/src/oxygentileset.h 2012-01-16 09:46:33.000000000 +0100
+++ new/oxygen-gtk3-1.0.1/src/oxygentileset.h 2012-02-15 10:38:23.000000000 +0100
@@ -74,12 +74,6 @@
//! destructor
virtual ~TileSet();
- //! copy constructor
- TileSet( const TileSet& );
-
- //! assignment operator
- TileSet& operator = ( const TileSet& );
-
/*!
Flags specifying what sides to draw in ::render. Corners are drawn when
the sides forming that corner are drawn, e.g. Top|Left draws the
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/oxygen-gtk3-1.0.0/src/oxygentilesetcache.h new/oxygen-gtk3-1.0.1/src/oxygentilesetcache.h
--- old/oxygen-gtk3-1.0.0/src/oxygentilesetcache.h 2012-01-16 09:46:33.000000000 +0100
+++ new/oxygen-gtk3-1.0.1/src/oxygentilesetcache.h 2012-02-15 10:38:23.000000000 +0100
@@ -36,7 +36,8 @@
public:
//! constructor
- TileSetCache( size_t size = 100 )
+ TileSetCache( size_t size = 100 ):
+ Cache( size )
{}
//! destructor
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/oxygen-gtk3-1.0.0/src/oxygenwidgetlookup.cpp new/oxygen-gtk3-1.0.1/src/oxygenwidgetlookup.cpp
--- old/oxygen-gtk3-1.0.0/src/oxygenwidgetlookup.cpp 2012-01-16 09:46:33.000000000 +0100
+++ new/oxygen-gtk3-1.0.1/src/oxygenwidgetlookup.cpp 2012-02-15 10:38:23.000000000 +0100
@@ -121,12 +121,14 @@
}
}
+ #if OXYGEN_DEBUG
std::cerr
<< "Oxygen::WidgetLookup::find -"
<< " context: " << context
<< " type: " << g_type_name( type )
<< " - no match found"
<< std::endl;
+ #endif
return 0L;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/oxygen-gtk3-1.0.0/src/oxygenwindowmanager.cpp new/oxygen-gtk3-1.0.1/src/oxygenwindowmanager.cpp
--- old/oxygen-gtk3-1.0.0/src/oxygenwindowmanager.cpp 2012-01-16 09:46:33.000000000 +0100
+++ new/oxygen-gtk3-1.0.1/src/oxygenwindowmanager.cpp 2012-02-15 10:38:23.000000000 +0100
@@ -384,6 +384,7 @@
//_________________________________________________
bool WindowManager::isWindowDragWidget( GtkWidget* widget, GdkEventButton* event )
{
+
if( _mode == Disabled ) return false;
else if( (!_drag) && withinWidget(widget, event ) && useEvent( widget, event ) )
{
@@ -442,8 +443,14 @@
const GtkAllocation local( Gtk::gtk_widget_get_allocation( widget ) );
Gtk::gtk_notebook_get_tabbar_rect( GTK_NOTEBOOK( widget ), &allocation );
- allocation.x += wx - local.x;
- allocation.y += wy - local.y;
+
+ const int xLocal = int(event->x_root) - wx + local.x;
+ const int yLocal = int(event->y_root) - wy + local.y;
+
+ // compare to event root position
+ if( !Gtk::gdk_rectangle_contains( &allocation, xLocal, yLocal ) ) return false;
+ else if( !Style::instance().animations().tabWidgetEngine().contains( widget ) ) return false;
+ else return !Style::instance().animations().tabWidgetEngine().isInTab( widget, xLocal, yLocal );
} else {
@@ -451,10 +458,10 @@
allocation.x = wx;
allocation.y = wy;
- }
+ // compare to event root position
+ return Gtk::gdk_rectangle_contains( &allocation, int(event->x_root), int(event->y_root) );
- // compare to event root position
- return Gtk::gdk_rectangle_contains( &allocation, int(event->x_root), int(event->y_root) );
+ }
}
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org
For additional commands, e-mail: opensuse-commit+help@opensuse.org