diff --git a/sample/GtkDemo/DemoSpinner.cs b/sample/GtkDemo/DemoSpinner.cs
new file mode 100644
index 000000000..ef81feda1
--- /dev/null
+++ b/sample/GtkDemo/DemoSpinner.cs
@@ -0,0 +1,73 @@
+/* Spinner
+ *
+ * GtkSpinner allows to show that background activity is on-going.
+ *
+ */
+
+using System;
+using Gtk;
+
+namespace GtkDemo
+{
+ [Demo ("Spinner", "DemoSpinner.cs")]
+ public class DemoSpinner : Dialog
+ {
+ Spinner spinner_sensitive;
+ Spinner spinner_unsensitive;
+
+ public DemoSpinner () : base ("Spinner", null, DialogFlags.DestroyWithParent)
+ {
+ Resizable = false;
+
+ VBox vbox = new VBox (false, 5);
+ vbox.BorderWidth = 5;
+ ContentArea.PackStart (vbox, true, true, 0);
+
+ /* Sensitive */
+ HBox hbox = new HBox (false, 5);
+ spinner_sensitive = new Spinner ();
+ hbox.Add (spinner_sensitive);
+ hbox.Add (new Entry ());
+ vbox.Add (hbox);
+
+ /* Disabled */
+ hbox = new HBox (false, 5);
+ spinner_unsensitive = new Spinner ();
+ spinner_unsensitive.Sensitive = false;
+ hbox.Add (spinner_unsensitive);
+ hbox.Add (new Entry ());
+ vbox.Add (hbox);
+
+ Button btn_play = new Button ();
+ btn_play.Label = "Play";
+ btn_play.Clicked += OnPlayClicked;
+ vbox.Add (btn_play);
+
+ Button btn_stop = new Button ();
+ btn_stop.Label = "Stop";
+ btn_stop.Clicked += OnStopClicked;
+ vbox.Add (btn_stop);
+
+ AddButton (Stock.Close, ResponseType.Close);
+
+ OnPlayClicked (null, null);
+
+ ShowAll ();
+ Run ();
+ Destroy ();
+ }
+
+ private void OnPlayClicked (object sender, EventArgs e)
+ {
+ spinner_sensitive.Start ();
+ spinner_unsensitive.Start ();
+ }
+
+ private void OnStopClicked (object sender, EventArgs e)
+ {
+ spinner_sensitive.Stop ();
+ spinner_unsensitive.Stop ();
+ }
+ }
+}
+
diff --git a/sample/GtkDemo/Makefile.am b/sample/GtkDemo/Makefile.am
index 89f25c486..3532a19b7 100644
--- a/sample/GtkDemo/Makefile.am
+++ b/sample/GtkDemo/Makefile.am
@@ -36,6 +36,7 @@ sources = \
DemoPixbuf.cs \
DemoRotatedText.cs \
DemoSizeGroup.cs \
+ DemoSpinner.cs \
DemoStockBrowser.cs \
DemoTextView.cs \
DemoTreeStore.cs \
diff --git a/sample/sample.csproj b/sample/sample.csproj
index 4b2f0fd71..f91d7a0e8 100644
--- a/sample/sample.csproj
+++ b/sample/sample.csproj
@@ -109,6 +109,7 @@
+