Trevor Parscal has uploaded a new change for review.

  https://gerrit.wikimedia.org/r/155457

Change subject: Standardize less imports and image rule generation
......................................................................

Standardize less imports and image rule generation

* Combine mixins and variables into common file, which all styles include
* Always use common.less for styles and themes instead of using a variety of 
different includes
* Reorganize image styles to live within the images folder
* Generate image styles by defining mixins and then including a generic listing

Change-Id: Iccd3f827e2b7cb821ecd7c67c03061487c20fcdd
---
M build/modules.json
D src/styles/Icons-raster.less
D src/styles/Icons-vector.less
M src/styles/ToolGroup.less
M src/styles/Toolbar.less
M src/styles/Window.less
M src/styles/WindowManager.less
R src/styles/common.less
M src/styles/core.less
M src/styles/dialogs/MessageDialog.less
M src/styles/dialogs/ProcessDialog.less
M src/styles/elements/ButtonedElement.less
M src/styles/elements/ClippableElement.less
M src/styles/elements/LabledElement.less
A src/styles/images/icons.less
A src/styles/images/indicators.less
A src/styles/images/raster.less
A src/styles/images/textures.less
A src/styles/images/textures/transparency.svg
A src/styles/images/vector.less
M src/styles/layouts/BookletLayout.less
M src/styles/layouts/FieldLayout.less
M src/styles/layouts/FieldsetLayout.less
M src/styles/layouts/GridLayout.less
M src/styles/layouts/PanelLayout.less
M src/styles/layouts/StackLayout.less
M src/styles/toolgroups/BarToolgroup.less
M src/styles/toolgroups/ListToolgroup.less
M src/styles/toolgroups/MenuToolgroup.less
M src/styles/toolgroups/PopupToolgroup.less
M src/styles/tools/PopupTool.less
M src/styles/widgets/ButtonGroupWidget.less
M src/styles/widgets/ButtonOptionWidget.less
M src/styles/widgets/ButtonSelectWidget.less
M src/styles/widgets/ButtonWidget.less
M src/styles/widgets/DecoratedOptionWidget.less
M src/styles/widgets/IconWidget.less
M src/styles/widgets/IndicatorWidget.less
M src/styles/widgets/InlineMenuWidget.less
M src/styles/widgets/LabelWidget.less
M src/styles/widgets/MenuItemWidget.less
M src/styles/widgets/MenuSectionItemWidget.less
M src/styles/widgets/MenuWidget.less
M src/styles/widgets/OptionWidget.less
M src/styles/widgets/OutlineControlsWidget.less
M src/styles/widgets/OutlineItemWidget.less
M src/styles/widgets/PopupButtonWidget.less
M src/styles/widgets/PopupWidget.less
M src/styles/widgets/SearchWidget.less
M src/styles/widgets/SelectWidget.less
M src/styles/widgets/TextInputWidget.less
M src/styles/widgets/ToggleSwitchWidget.less
M src/themes/agora/Dialog.less
D src/themes/agora/Icons.less
M src/themes/agora/WindowManager.less
A src/themes/agora/common.less
M src/themes/agora/dialogs/MessageDialog.less
M src/themes/agora/dialogs/ProcessDialog.less
M src/themes/agora/elements/ButtonedElement.less
A src/themes/agora/images/icons.less
A src/themes/agora/images/raster.less
M src/themes/agora/layouts/BookletLayout.less
M src/themes/agora/layouts/PanelLayout.less
D src/themes/agora/mixins.less
D src/themes/agora/variables.less
M src/themes/agora/widgets/ButtonOptionWidget.less
M src/themes/agora/widgets/LookupWidget.less
M src/themes/agora/widgets/MenuItemWidget.less
M src/themes/agora/widgets/MenuSectionItemWidget.less
M src/themes/agora/widgets/OptionWidget.less
M src/themes/agora/widgets/TextInputWidget.less
M src/themes/apex/Dialog.less
M src/themes/apex/ToolGroup.less
M src/themes/apex/Toolbar.less
M src/themes/apex/Window.less
M src/themes/apex/WindowManager.less
A src/themes/apex/common.less
M src/themes/apex/dialogs/MessageDialog.less
M src/themes/apex/dialogs/ProcessDialog.less
M src/themes/apex/elements/ButtonedElement.less
M src/themes/apex/layouts/BookletLayout.less
M src/themes/apex/layouts/FieldLayout.less
M src/themes/apex/layouts/FieldsetLayout.less
M src/themes/apex/layouts/PanelLayout.less
M src/themes/apex/toolgroups/BarToolgroup.less
M src/themes/apex/toolgroups/ListToolgroup.less
M src/themes/apex/toolgroups/MenuToolgroup.less
M src/themes/apex/toolgroups/PopupToolgroup.less
M src/themes/apex/widgets/ButtonGroupWidget.less
M src/themes/apex/widgets/ButtonOptionWidget.less
M src/themes/apex/widgets/ButtonSelectWidget.less
M src/themes/apex/widgets/InlineMenuWidget.less
M src/themes/apex/widgets/MenuItemWidget.less
M src/themes/apex/widgets/MenuSectionItemWidget.less
M src/themes/apex/widgets/MenuWidget.less
M src/themes/apex/widgets/OptionWidget.less
M src/themes/apex/widgets/OutlineControlsWidget.less
M src/themes/apex/widgets/OutlineItemWidget.less
M src/themes/apex/widgets/PopupWidget.less
M src/themes/apex/widgets/SearchWidget.less
M src/themes/apex/widgets/TextInputWidget.less
M src/themes/apex/widgets/ToggleSwitchWidget.less
102 files changed, 294 insertions(+), 345 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/oojs/ui refs/changes/57/155457/1

diff --git a/build/modules.json b/build/modules.json
index fddc34a..7891b7d 100644
--- a/build/modules.json
+++ b/build/modules.json
@@ -86,27 +86,36 @@
                ],
                "styles": [
                        "src/styles/core.less",
+
                        "src/styles/Toolbar.less",
                        "src/styles/ToolGroup.less",
                        "src/styles/Window.less",
                        "src/styles/WindowManager.less",
+
                        "src/styles/dialogs/MessageDialog.less",
                        "src/styles/dialogs/ProcessDialog.less",
+
                        "src/styles/elements/ButtonedElement.less",
                        "src/styles/elements/ClippableElement.less",
                        "src/styles/elements/LabeledElement.less",
+
                        "src/styles/layouts/BookletLayout.less",
                        "src/styles/layouts/FieldLayout.less",
                        "src/styles/layouts/FieldsetLayout.less",
                        "src/styles/layouts/GridLayout.less",
+
                        "src/styles/widgets/LabelWidget.less",
+
                        "src/styles/layouts/PanelLayout.less",
                        "src/styles/layouts/StackLayout.less",
+
                        "src/styles/toolgroups/BarToolgroup.less",
                        "src/styles/toolgroups/ListToolgroup.less",
                        "src/styles/toolgroups/MenuToolgroup.less",
                        "src/styles/toolgroups/PopupToolgroup.less",
+
                        "src/styles/tools/PopupTool.less",
+
                        "src/styles/widgets/IconWidget.less",
                        "src/styles/widgets/IndicatorWidget.less",
                        "src/styles/widgets/SelectWidget.less",
@@ -127,9 +136,10 @@
                        "src/styles/widgets/SearchWidget.less",
                        "src/styles/widgets/TextInputWidget.less",
                        "src/styles/widgets/ToggleSwitchWidget.less",
+
                        {
-                               "default": "src/styles/Icons-raster.less",
-                               "svg": "src/styles/Icons-vector.less"
+                               "default": "src/styles/images/raster.less",
+                               "svg": "src/styles/images/vector.less"
                        }
                ]
        },
@@ -140,17 +150,22 @@
                        "src/themes/apex/ToolGroup.less",
                        "src/themes/apex/Window.less",
                        "src/themes/apex/WindowManager.less",
+
                        "src/themes/apex/dialogs/MessageDialog.less",
                        "src/themes/apex/dialogs/ProcessDialog.less",
+
                        "src/themes/apex/elements/ButtonedElement.less",
+
                        "src/themes/apex/layouts/BookletLayout.less",
                        "src/themes/apex/layouts/FieldLayout.less",
                        "src/themes/apex/layouts/FieldsetLayout.less",
                        "src/themes/apex/layouts/PanelLayout.less",
+
                        "src/themes/apex/toolgroups/BarToolgroup.less",
                        "src/themes/apex/toolgroups/ListToolgroup.less",
                        "src/themes/apex/toolgroups/MenuToolgroup.less",
                        "src/themes/apex/toolgroups/PopupToolgroup.less",
+
                        "src/themes/apex/widgets/OptionWidget.less",
                        "src/themes/apex/widgets/MenuWidget.less",
                        "src/themes/apex/widgets/PopupWidget.less",
@@ -171,18 +186,23 @@
                "styles": [
                        "src/themes/agora/Dialog.less",
                        "src/themes/agora/WindowManager.less",
+
                        "src/themes/agora/dialogs/MessageDialog.less",
                        "src/themes/agora/dialogs/ProcessDialog.less",
+
                        "src/themes/agora/elements/ButtonedElement.less",
+
                        "src/themes/agora/layouts/BookletLayout.less",
                        "src/themes/agora/layouts/PanelLayout.less",
+
                        "src/themes/agora/widgets/OptionWidget.less",
                        "src/themes/agora/widgets/ButtonOptionWidget.less",
                        "src/themes/agora/widgets/LookupWidget.less",
                        "src/themes/agora/widgets/MenuItemWidget.less",
                        "src/themes/agora/widgets/MenuSectionItemWidget.less",
                        "src/themes/agora/widgets/TextInputWidget.less",
-                       "src/themes/agora/Icons.less"
+
+                       "src/themes/agora/images/raster.less"
                ]
        }
 }
diff --git a/src/styles/Icons-raster.less b/src/styles/Icons-raster.less
deleted file mode 100644
index 9372f32..0000000
--- a/src/styles/Icons-raster.less
+++ /dev/null
@@ -1,129 +0,0 @@
-@import 'mixins';
-
-/* Icons */
-
-.oo-ui-icon {
-       &-add-item {
-               .oo-ui-background-image('images/icons/add-item.png');
-       }
-
-       &-advanced {
-               .oo-ui-background-image('images/icons/advanced.png');
-       }
-
-       &-alert {
-               .oo-ui-background-image('images/icons/alert.png');
-       }
-
-       &-check {
-               .oo-ui-background-image('images/icons/check.png');
-       }
-
-       &-clear {
-               .oo-ui-background-image('images/icons/clear.png');
-       }
-
-       &-close {
-               .oo-ui-background-image('images/icons/close.png');
-       }
-
-       &-code {
-               .oo-ui-background-image('images/icons/code.png');
-       }
-
-       &-collapse {
-               .oo-ui-background-image('images/icons/collapse.png');
-       }
-
-       &-comment {
-               .oo-ui-background-image('images/icons/comment.png');
-       }
-
-       &-expand {
-               .oo-ui-background-image('images/icons/expand.png');
-       }
-
-       &-help {
-               .oo-ui-background-image('images/icons/help.png');
-       }
-
-       &-info {
-               .oo-ui-background-image('images/icons/info.png');
-       }
-
-       &-link {
-               .oo-ui-background-image('images/icons/link.png');
-       }
-
-       &-menu {
-               .oo-ui-background-image('images/icons/menu.png');
-       }
-
-       &-next {
-               .oo-ui-background-image('images/icons/move-ltr.png');
-       }
-
-       &-picture {
-               .oo-ui-background-image('images/icons/picture.png');
-       }
-
-       &-previous {
-               .oo-ui-background-image('images/icons/move-rtl.png');
-       }
-
-       &-redo {
-               .oo-ui-background-image('images/icons/arched-arrow-ltr.png');
-       }
-
-       &-remove {
-               .oo-ui-background-image('images/icons/remove.png');
-       }
-
-       &-search {
-               .oo-ui-background-image('images/icons/search.png');
-       }
-
-       &-settings {
-               .oo-ui-background-image('images/icons/settings.png');
-       }
-
-       &-tag {
-               .oo-ui-background-image('images/icons/tag.png');
-       }
-
-       &-undo {
-               .oo-ui-background-image('images/icons/arched-arrow-rtl.png');
-       }
-
-       &-window {
-               .oo-ui-background-image('images/icons/window.png');
-       }
-}
-
-/* Indicators */
-
-.oo-ui-indicator {
-       &-alert {
-               .oo-ui-background-image('images/indicators/alert.png');
-       }
-
-       &-down {
-               .oo-ui-background-image('images/indicators/arrow-down.png');
-       }
-
-       &-next {
-               .oo-ui-background-image('images/indicators/arrow-ltr.png');
-       }
-
-       &-previous {
-               .oo-ui-background-image('images/indicators/arrow-rtl.png');
-       }
-
-       &-required {
-               .oo-ui-background-image('images/indicators/required.png');
-       }
-
-       &-up {
-               .oo-ui-background-image('images/indicators/arrow-up.png');
-       }
-}
diff --git a/src/styles/Icons-vector.less b/src/styles/Icons-vector.less
deleted file mode 100644
index 4748bd1..0000000
--- a/src/styles/Icons-vector.less
+++ /dev/null
@@ -1,130 +0,0 @@
-@import 'mixins';
-
-/* Icons */
-
-.oo-ui-icon {
-       &-add-item {
-               .oo-ui-background-image('images/icons/add-item.svg');
-       }
-
-       &-advanced {
-               .oo-ui-background-image('images/icons/advanced.svg');
-       }
-
-       &-alert {
-               .oo-ui-background-image('images/icons/alert.svg');
-       }
-
-       &-check {
-               .oo-ui-background-image('images/icons/check.svg');
-       }
-
-       &-clear {
-               .oo-ui-background-image('images/icons/clear.svg');
-       }
-
-       &-close {
-               .oo-ui-background-image('images/icons/close.svg');
-       }
-
-       &-code {
-               .oo-ui-background-image('images/icons/code.svg');
-       }
-
-       &-collapse {
-               .oo-ui-background-image('images/icons/collapse.svg');
-       }
-
-       &-comment {
-               .oo-ui-background-image('images/icons/comment.svg');
-       }
-
-       &-expand {
-               .oo-ui-background-image('images/icons/expand.svg');
-       }
-
-       &-help {
-               .oo-ui-background-image('images/icons/help.svg');
-       }
-
-       &-info {
-               .oo-ui-background-image('images/icons/info.svg');
-       }
-
-       &-link {
-               .oo-ui-background-image('images/icons/link.svg');
-       }
-
-       &-menu {
-               .oo-ui-background-image('images/icons/menu.svg');
-       }
-
-       &-next {
-               .oo-ui-background-image('images/icons/move-ltr.svg');
-       }
-
-       &-picture {
-               .oo-ui-background-image('images/icons/picture.svg');
-       }
-
-       &-previous {
-               .oo-ui-background-image('images/icons/move-rtl.svg');
-       }
-
-       &-redo {
-               .oo-ui-background-image('images/icons/arched-arrow-ltr.svg');
-       }
-
-       &-remove {
-               .oo-ui-background-image('images/icons/remove.svg');
-       }
-
-       &-search {
-               .oo-ui-background-image('images/icons/search.svg');
-       }
-
-       &-settings {
-               .oo-ui-background-image('images/icons/settings.svg');
-       }
-
-       &-tag {
-               .oo-ui-background-image('images/icons/tag.svg');
-       }
-
-       &-undo {
-               .oo-ui-background-image('images/icons/arched-arrow-rtl.svg');
-       }
-
-       &-window {
-               .oo-ui-background-image('images/icons/window.svg');
-       }
-}
-
-
-/* Indicators */
-
-.oo-ui-indicator {
-       &-alert {
-               .oo-ui-background-image('images/indicators/alert.svg');
-       }
-
-       &-down {
-               .oo-ui-background-image('images/indicators/arrow-down.svg');
-       }
-
-       &-next {
-               .oo-ui-background-image('images/indicators/arrow-ltr.svg');
-       }
-
-       &-previous {
-               .oo-ui-background-image('images/indicators/arrow-rtl.svg');
-       }
-
-       &-required {
-               .oo-ui-background-image('images/indicators/required.svg');
-       }
-
-       &-up {
-               .oo-ui-background-image('images/indicators/arrow-up.svg');
-       }
-}
diff --git a/src/styles/ToolGroup.less b/src/styles/ToolGroup.less
index e9cdf21..825cfad 100644
--- a/src/styles/ToolGroup.less
+++ b/src/styles/ToolGroup.less
@@ -1,4 +1,4 @@
-@import 'mixins';
+@import 'common';
 
 .oo-ui-toolGroup {
        display: inline-block;
diff --git a/src/styles/Toolbar.less b/src/styles/Toolbar.less
index 0ace0ac..6f07c14 100644
--- a/src/styles/Toolbar.less
+++ b/src/styles/Toolbar.less
@@ -1,4 +1,4 @@
-@import 'mixins';
+@import 'common';
 
 .oo-ui-toolbar {
        clear: both;
diff --git a/src/styles/Window.less b/src/styles/Window.less
index 3eaee52..fad30c8 100644
--- a/src/styles/Window.less
+++ b/src/styles/Window.less
@@ -1,4 +1,4 @@
-@import 'mixins';
+@import 'common';
 
 .oo-ui-window {
        line-height: 1em;
diff --git a/src/styles/WindowManager.less b/src/styles/WindowManager.less
index dc625d3..1c10af0 100644
--- a/src/styles/WindowManager.less
+++ b/src/styles/WindowManager.less
@@ -1,3 +1,5 @@
+@import 'common';
+
 .oo-ui-windowManager {
        &-modal > .oo-ui-dialog {
                position: fixed;
diff --git a/src/styles/mixins.less b/src/styles/common.less
similarity index 100%
rename from src/styles/mixins.less
rename to src/styles/common.less
diff --git a/src/styles/core.less b/src/styles/core.less
index 643577c..fd74985 100644
--- a/src/styles/core.less
+++ b/src/styles/core.less
@@ -1,16 +1,4 @@
-@import 'mixins';
-
-/* Textures */
-
-.oo-ui-texture {
-       &-pending {
-               .oo-ui-background-image('images/textures/pending.gif');
-       }
-
-       &-transparency {
-               .oo-ui-background-image('images/textures/transparency.png');
-       }
-}
+@import 'common';
 
 /* RTL Definitions */
 
diff --git a/src/styles/dialogs/MessageDialog.less 
b/src/styles/dialogs/MessageDialog.less
index 1f03bc7..d3cb31d 100644
--- a/src/styles/dialogs/MessageDialog.less
+++ b/src/styles/dialogs/MessageDialog.less
@@ -1,3 +1,5 @@
+@import '../common';
+
 .oo-ui-messageDialog {
        &-actions {
                &-horizontal {
diff --git a/src/styles/dialogs/ProcessDialog.less 
b/src/styles/dialogs/ProcessDialog.less
index 5948232..79aa3a0 100644
--- a/src/styles/dialogs/ProcessDialog.less
+++ b/src/styles/dialogs/ProcessDialog.less
@@ -1,3 +1,5 @@
+@import '../common';
+
 .oo-ui-processDialog {
        &-location {
                overflow: hidden;
diff --git a/src/styles/elements/ButtonedElement.less 
b/src/styles/elements/ButtonedElement.less
index 3a68d91..ba0d5b4 100644
--- a/src/styles/elements/ButtonedElement.less
+++ b/src/styles/elements/ButtonedElement.less
@@ -1,4 +1,4 @@
-@import '../mixins';
+@import '../common';
 
 .oo-ui-buttonedElement {
        > .oo-ui-buttonedElement-button {
diff --git a/src/styles/elements/ClippableElement.less 
b/src/styles/elements/ClippableElement.less
index 0382a27..d280e8c 100644
--- a/src/styles/elements/ClippableElement.less
+++ b/src/styles/elements/ClippableElement.less
@@ -1,4 +1,4 @@
-@import '../mixins';
+@import '../common';
 
 .oo-ui-clippableElement-clippable {
        .oo-ui-box-sizing(border-box);
diff --git a/src/styles/elements/LabledElement.less 
b/src/styles/elements/LabledElement.less
index 09e3e19..4c1bf96 100644
--- a/src/styles/elements/LabledElement.less
+++ b/src/styles/elements/LabledElement.less
@@ -1,3 +1,5 @@
+@import '../common';
+
 .oo-ui-labeledElement-label {
        display: block;
 }
diff --git a/src/styles/images/icons.less b/src/styles/images/icons.less
new file mode 100644
index 0000000..84a84ae
--- /dev/null
+++ b/src/styles/images/icons.less
@@ -0,0 +1,31 @@
+//
+// Don't include this file directly, it is included by either the raster or 
vector icons file
+//
+
+@import '../common';
+
+.oo-ui-icon( add-item, add-item );
+.oo-ui-icon( add-item, add-item );
+.oo-ui-icon( advanced, advanced );
+.oo-ui-icon( alert, alert );
+.oo-ui-icon( check, check );
+.oo-ui-icon( clear, clear );
+.oo-ui-icon( close, close );
+.oo-ui-icon( code, code );
+.oo-ui-icon( collapse, collapse );
+.oo-ui-icon( comment, comment );
+.oo-ui-icon( expand, expand );
+.oo-ui-icon( help, help );
+.oo-ui-icon( info, info );
+.oo-ui-icon( link, link );
+.oo-ui-icon( menu, menu );
+.oo-ui-icon( next, move-ltr );
+.oo-ui-icon( picture, picture );
+.oo-ui-icon( previous, move-rtl );
+.oo-ui-icon( redo, arched-arrow-ltr );
+.oo-ui-icon( remove, remove );
+.oo-ui-icon( search, search );
+.oo-ui-icon( settings, settings );
+.oo-ui-icon( tag, tag );
+.oo-ui-icon( undo, arched-arrow-rtl );
+.oo-ui-icon( window, window );
diff --git a/src/styles/images/indicators.less 
b/src/styles/images/indicators.less
new file mode 100644
index 0000000..ca04f04
--- /dev/null
+++ b/src/styles/images/indicators.less
@@ -0,0 +1,12 @@
+//
+// Don't include this file directly, it is included by either the raster or 
vector indicators file
+//
+
+@import '../common';
+
+.oo-ui-indicator( alert, alert );
+.oo-ui-indicator( down, arrow-down );
+.oo-ui-indicator( next, arrow-ltr );
+.oo-ui-indicator( previous, arrow-rtl );
+.oo-ui-indicator( required, required );
+.oo-ui-indicator( up, arrow-up );
diff --git a/src/styles/images/raster.less b/src/styles/images/raster.less
new file mode 100644
index 0000000..86cd06d
--- /dev/null
+++ b/src/styles/images/raster.less
@@ -0,0 +1,23 @@
+@import '../common';
+
+.oo-ui-icon( @name, @file, @ext: png ) {
+       .oo-ui-icon-@{name} {
+               .oo-ui-background-image( 'images/icons/@{file}.@{ext}' );
+       }
+}
+
+.oo-ui-indicator( @name, @file, @ext: png ) {
+       .oo-ui-indicator-@{name} {
+               .oo-ui-background-image( 'images/indicators/@{file}.@{ext}' );
+       }
+}
+
+.oo-ui-texture( @name, @file, @ext: png ) {
+       .oo-ui-texture-@{name} {
+               .oo-ui-background-image( 'images/textures/@{file}.@{ext}' );
+       }
+}
+
+@import 'icons';
+@import 'indicators';
+@import 'textures';
diff --git a/src/styles/images/textures.less b/src/styles/images/textures.less
new file mode 100644
index 0000000..35ac975
--- /dev/null
+++ b/src/styles/images/textures.less
@@ -0,0 +1,4 @@
+@import '../common';
+
+.oo-ui-texture( pending, pending, gif );
+.oo-ui-texture( transparency, transparency );
diff --git a/src/styles/images/textures/transparency.svg 
b/src/styles/images/textures/transparency.svg
new file mode 100644
index 0000000..63a0b57
--- /dev/null
+++ b/src/styles/images/textures/transparency.svg
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" 
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd";>
+<svg version="1.1" xmlns="http://www.w3.org/2000/svg"; 
xmlns:xlink="http://www.w3.org/1999/xlink"; x="0" y="0" width="16" height="16" 
viewBox="0, 0, 16, 16">
+       <g id="transparency">
+               <path d="M0,0 L8,0 L8,8 L0,8 z" fill="#CCCCCC"/>
+               <path d="M8,8 L16,8 L16,16 L8,16 z" fill="#CCCCCC"/>
+               <path d="M8,0 L16,0 L16,8 L8,8 z" fill="#FFFFFF"/>
+               <path d="M0,8 L8,8 L8,16 L0,16 z" fill="#FFFFFF"/>
+       </g>
+</svg>
diff --git a/src/styles/images/vector.less b/src/styles/images/vector.less
new file mode 100644
index 0000000..04c7941
--- /dev/null
+++ b/src/styles/images/vector.less
@@ -0,0 +1,23 @@
+@import '../common';
+
+.oo-ui-icon( @name, @file, @ext: svg ) {
+       .oo-ui-icon-@{name} {
+               .oo-ui-background-image( 'images/icons/@{file}.@{ext}' );
+       }
+}
+
+.oo-ui-indicator( @name, @file, @ext: svg ) {
+       .oo-ui-indicator-@{name} {
+               .oo-ui-background-image( 'images/indicators/@{file}.@{ext}' );
+       }
+}
+
+.oo-ui-texture( @name, @file, @ext: svg ) {
+       .oo-ui-texture-@{name} {
+               .oo-ui-background-image( 'images/textures/@{file}.@{ext}' );
+       }
+}
+
+@import 'icons';
+@import 'indicators';
+@import 'textures';
diff --git a/src/styles/layouts/BookletLayout.less 
b/src/styles/layouts/BookletLayout.less
index 16c4d86..1313d72 100644
--- a/src/styles/layouts/BookletLayout.less
+++ b/src/styles/layouts/BookletLayout.less
@@ -1,4 +1,4 @@
-@import '../mixins';
+@import '../common';
 
 .oo-ui-bookletLayout {
        &-stackLayout {
diff --git a/src/styles/layouts/FieldLayout.less 
b/src/styles/layouts/FieldLayout.less
index b377abc..414cbcd 100644
--- a/src/styles/layouts/FieldLayout.less
+++ b/src/styles/layouts/FieldLayout.less
@@ -1,3 +1,5 @@
+@import '../common';
+
 .oo-ui-fieldLayout {
        margin-bottom: 1em;
 
diff --git a/src/styles/layouts/FieldsetLayout.less 
b/src/styles/layouts/FieldsetLayout.less
index 9bd786e..8e22868 100644
--- a/src/styles/layouts/FieldsetLayout.less
+++ b/src/styles/layouts/FieldsetLayout.less
@@ -1,3 +1,5 @@
+@import '../common';
+
 .oo-ui-fieldsetLayout {
        position: relative;
        margin: 0;
diff --git a/src/styles/layouts/GridLayout.less 
b/src/styles/layouts/GridLayout.less
index ff3592c..7531ec2 100644
--- a/src/styles/layouts/GridLayout.less
+++ b/src/styles/layouts/GridLayout.less
@@ -1,3 +1,5 @@
+@import '../common';
+
 .oo-ui-gridLayout {
        position: absolute;
        top: 0;
diff --git a/src/styles/layouts/PanelLayout.less 
b/src/styles/layouts/PanelLayout.less
index 61fe171..71534e3 100644
--- a/src/styles/layouts/PanelLayout.less
+++ b/src/styles/layouts/PanelLayout.less
@@ -1,3 +1,5 @@
+@import '../common';
+
 .oo-ui-panelLayout {
        position: relative;
 
diff --git a/src/styles/layouts/StackLayout.less 
b/src/styles/layouts/StackLayout.less
index df1a2e2..6138f32 100644
--- a/src/styles/layouts/StackLayout.less
+++ b/src/styles/layouts/StackLayout.less
@@ -1,3 +1,5 @@
+@import '../common';
+
 .oo-ui-stackLayout {
        > .oo-ui-panelLayout {
                display: none;
diff --git a/src/styles/toolgroups/BarToolgroup.less 
b/src/styles/toolgroups/BarToolgroup.less
index 5ba2fbf..b413f4f 100644
--- a/src/styles/toolgroups/BarToolgroup.less
+++ b/src/styles/toolgroups/BarToolgroup.less
@@ -1,4 +1,4 @@
-@import '../mixins';
+@import '../common';
 
 .oo-ui-barToolGroup {
        > .oo-ui-iconedElement-icon,
diff --git a/src/styles/toolgroups/ListToolgroup.less 
b/src/styles/toolgroups/ListToolgroup.less
index 2b8d772..6c50e98 100644
--- a/src/styles/toolgroups/ListToolgroup.less
+++ b/src/styles/toolgroups/ListToolgroup.less
@@ -1,4 +1,4 @@
-@import '../mixins';
+@import '../common';
 
 .oo-ui-listToolGroup {
        .oo-ui-toolGroup-tools {
diff --git a/src/styles/toolgroups/MenuToolgroup.less 
b/src/styles/toolgroups/MenuToolgroup.less
index 3d8bf46..0c49840 100644
--- a/src/styles/toolgroups/MenuToolgroup.less
+++ b/src/styles/toolgroups/MenuToolgroup.less
@@ -1,4 +1,4 @@
-@import '../mixins';
+@import '../common';
 
 .oo-ui-menuToolGroup {
        .oo-ui-popupToolGroup-handle {
diff --git a/src/styles/toolgroups/PopupToolgroup.less 
b/src/styles/toolgroups/PopupToolgroup.less
index 196d90f..23a6dd3 100644
--- a/src/styles/toolgroups/PopupToolgroup.less
+++ b/src/styles/toolgroups/PopupToolgroup.less
@@ -1,4 +1,4 @@
-@import '../mixins';
+@import '../common';
 
 .oo-ui-popupToolGroup {
        position: relative;
diff --git a/src/styles/tools/PopupTool.less b/src/styles/tools/PopupTool.less
index db7a9dc..b382f7e 100644
--- a/src/styles/tools/PopupTool.less
+++ b/src/styles/tools/PopupTool.less
@@ -1,3 +1,5 @@
+@import '../common';
+
 .oo-ui-popupTool .oo-ui-popupWidget {
        margin-left: 1.25em;
        font-size: 0.8em;
diff --git a/src/styles/widgets/ButtonGroupWidget.less 
b/src/styles/widgets/ButtonGroupWidget.less
index 2e62f2e..a8a8e41 100644
--- a/src/styles/widgets/ButtonGroupWidget.less
+++ b/src/styles/widgets/ButtonGroupWidget.less
@@ -1,3 +1,5 @@
+@import '../common';
+
 .oo-ui-buttonGroupWidget {
        border-radius: 0.3em;
 
diff --git a/src/styles/widgets/ButtonOptionWidget.less 
b/src/styles/widgets/ButtonOptionWidget.less
index 4eac547..a9cb8d2 100644
--- a/src/styles/widgets/ButtonOptionWidget.less
+++ b/src/styles/widgets/ButtonOptionWidget.less
@@ -1,3 +1,5 @@
+@import '../common';
+
 .oo-ui-buttonOptionWidget {
        display: inline-block;
        background-color: transparent;
diff --git a/src/styles/widgets/ButtonSelectWidget.less 
b/src/styles/widgets/ButtonSelectWidget.less
index 18c2e7c..e93861a 100644
--- a/src/styles/widgets/ButtonSelectWidget.less
+++ b/src/styles/widgets/ButtonSelectWidget.less
@@ -1,3 +1,5 @@
+@import '../common';
+
 .oo-ui-buttonSelectWidget {
        display: inline-block;
        white-space: nowrap;
diff --git a/src/styles/widgets/ButtonWidget.less 
b/src/styles/widgets/ButtonWidget.less
index 30f6ebc..54491c8 100644
--- a/src/styles/widgets/ButtonWidget.less
+++ b/src/styles/widgets/ButtonWidget.less
@@ -1,3 +1,5 @@
+@import '../common';
+
 .oo-ui-buttonWidget {
        display: inline-block;
        vertical-align: middle;
diff --git a/src/styles/widgets/DecoratedOptionWidget.less 
b/src/styles/widgets/DecoratedOptionWidget.less
index 86f1afc..f492ca6 100644
--- a/src/styles/widgets/DecoratedOptionWidget.less
+++ b/src/styles/widgets/DecoratedOptionWidget.less
@@ -1,3 +1,5 @@
+@import '../common';
+
 .oo-ui-decoratedOptionWidget {
        .oo-ui-iconedElement-icon,
        .oo-ui-indicatedElement-indicator {
diff --git a/src/styles/widgets/IconWidget.less 
b/src/styles/widgets/IconWidget.less
index e85ad63..cc73603 100644
--- a/src/styles/widgets/IconWidget.less
+++ b/src/styles/widgets/IconWidget.less
@@ -1,3 +1,5 @@
+@import '../common';
+
 .oo-ui-iconWidget {
        display: inline-block;
        vertical-align: middle;
diff --git a/src/styles/widgets/IndicatorWidget.less 
b/src/styles/widgets/IndicatorWidget.less
index 6b336b2..e2be7d1 100644
--- a/src/styles/widgets/IndicatorWidget.less
+++ b/src/styles/widgets/IndicatorWidget.less
@@ -1,3 +1,5 @@
+@import '../common';
+
 .oo-ui-indicatorWidget {
        display: inline-block;
        vertical-align: middle;
diff --git a/src/styles/widgets/InlineMenuWidget.less 
b/src/styles/widgets/InlineMenuWidget.less
index 73e3d33..7aaa450 100644
--- a/src/styles/widgets/InlineMenuWidget.less
+++ b/src/styles/widgets/InlineMenuWidget.less
@@ -1,4 +1,4 @@
-@import '../mixins';
+@import '../common';
 
 .oo-ui-inlineMenuWidget {
        position: relative;
diff --git a/src/styles/widgets/LabelWidget.less 
b/src/styles/widgets/LabelWidget.less
index 7fc3b67..f90118c 100644
--- a/src/styles/widgets/LabelWidget.less
+++ b/src/styles/widgets/LabelWidget.less
@@ -1,3 +1,5 @@
+@import '../common';
+
 .oo-ui-labelWidget {
        display: inline-block;
        padding: 0.5em 0;
diff --git a/src/styles/widgets/MenuItemWidget.less 
b/src/styles/widgets/MenuItemWidget.less
index 7fc7f9b..48975e1 100644
--- a/src/styles/widgets/MenuItemWidget.less
+++ b/src/styles/widgets/MenuItemWidget.less
@@ -1,3 +1,5 @@
+@import '../common';
+
 .oo-ui-menuItemWidget {
        position: relative;
 
diff --git a/src/styles/widgets/MenuSectionItemWidget.less 
b/src/styles/widgets/MenuSectionItemWidget.less
index 5e902a6..d37ea7f 100644
--- a/src/styles/widgets/MenuSectionItemWidget.less
+++ b/src/styles/widgets/MenuSectionItemWidget.less
@@ -1,3 +1,5 @@
+@import '../common';
+
 .oo-ui-menuSectionItemWidget {
        cursor: default;
 }
diff --git a/src/styles/widgets/MenuWidget.less 
b/src/styles/widgets/MenuWidget.less
index 4931243..107647b 100644
--- a/src/styles/widgets/MenuWidget.less
+++ b/src/styles/widgets/MenuWidget.less
@@ -1,3 +1,5 @@
+@import '../common';
+
 .oo-ui-menuWidget {
        position: absolute;
 
diff --git a/src/styles/widgets/OptionWidget.less 
b/src/styles/widgets/OptionWidget.less
index 2adb2c7..6fb6a96 100644
--- a/src/styles/widgets/OptionWidget.less
+++ b/src/styles/widgets/OptionWidget.less
@@ -1,3 +1,5 @@
+@import '../common';
+
 .oo-ui-optionWidget {
        position: relative;
        display: block;
diff --git a/src/styles/widgets/OutlineControlsWidget.less 
b/src/styles/widgets/OutlineControlsWidget.less
index a9dbe45..1aa6cb3 100644
--- a/src/styles/widgets/OutlineControlsWidget.less
+++ b/src/styles/widgets/OutlineControlsWidget.less
@@ -1,4 +1,4 @@
-@import '../mixins';
+@import '../common';
 
 .oo-ui-outlineControlsWidget {
        height: 3em;
diff --git a/src/styles/widgets/OutlineItemWidget.less 
b/src/styles/widgets/OutlineItemWidget.less
index 4a6d028..6228914 100644
--- a/src/styles/widgets/OutlineItemWidget.less
+++ b/src/styles/widgets/OutlineItemWidget.less
@@ -1,4 +1,4 @@
-@import '../mixins';
+@import '../common';
 
 .oo-ui-outlineItemWidget {
        position: relative;
diff --git a/src/styles/widgets/PopupButtonWidget.less 
b/src/styles/widgets/PopupButtonWidget.less
index 74fce0e..def18ab 100644
--- a/src/styles/widgets/PopupButtonWidget.less
+++ b/src/styles/widgets/PopupButtonWidget.less
@@ -1,3 +1,5 @@
+@import '../common';
+
 .oo-ui-popupButtonWidget {
        position: relative;
 
diff --git a/src/styles/widgets/PopupWidget.less 
b/src/styles/widgets/PopupWidget.less
index 9e23906..e0e4efb 100644
--- a/src/styles/widgets/PopupWidget.less
+++ b/src/styles/widgets/PopupWidget.less
@@ -1,4 +1,4 @@
-@import '../mixins';
+@import '../common';
 
 .oo-ui-popupWidget {
        &-popup {
diff --git a/src/styles/widgets/SearchWidget.less 
b/src/styles/widgets/SearchWidget.less
index bccfcb5..5b1e199 100644
--- a/src/styles/widgets/SearchWidget.less
+++ b/src/styles/widgets/SearchWidget.less
@@ -1,3 +1,5 @@
+@import '../common';
+
 .oo-ui-searchWidget {
        &-query {
                position: absolute;
diff --git a/src/styles/widgets/SelectWidget.less 
b/src/styles/widgets/SelectWidget.less
index 6afbad7..2887ec8 100644
--- a/src/styles/widgets/SelectWidget.less
+++ b/src/styles/widgets/SelectWidget.less
@@ -1,3 +1,5 @@
+@import '../common';
+
 .oo-ui-selectWidget {
        list-style: none;
        margin: 0;
diff --git a/src/styles/widgets/TextInputWidget.less 
b/src/styles/widgets/TextInputWidget.less
index 5457749..1ace08e 100644
--- a/src/styles/widgets/TextInputWidget.less
+++ b/src/styles/widgets/TextInputWidget.less
@@ -1,4 +1,4 @@
-@import '../mixins';
+@import '../common';
 
 .oo-ui-textInputWidget {
        position: relative;
diff --git a/src/styles/widgets/ToggleSwitchWidget.less 
b/src/styles/widgets/ToggleSwitchWidget.less
index d4b3b81..27faeb0 100644
--- a/src/styles/widgets/ToggleSwitchWidget.less
+++ b/src/styles/widgets/ToggleSwitchWidget.less
@@ -1,4 +1,4 @@
-@import '../mixins';
+@import '../common';
 
 .oo-ui-toggleSwitchWidget {
        @travelDistance: 2em;
diff --git a/src/themes/agora/Dialog.less b/src/themes/agora/Dialog.less
index 524192e..885de51 100644
--- a/src/themes/agora/Dialog.less
+++ b/src/themes/agora/Dialog.less
@@ -1,6 +1,4 @@
-@import '../../styles/mixins';
-@import 'mixins';
-@import 'variables';
+@import 'common';
 
 .oo-ui-dialog {
        &-content {
diff --git a/src/themes/agora/Icons.less b/src/themes/agora/Icons.less
deleted file mode 100644
index 24d8d59..0000000
--- a/src/themes/agora/Icons.less
+++ /dev/null
@@ -1,11 +0,0 @@
-@import '../../styles/mixins';
-@import 'variables';
-
-/* Icons */
-
-.oo-ui-icon {
-       &-check {
-               .oo-ui-background-image('themes/agora/images/icons/check.svg');
-               background: @color-progressive;
-       }
-}
diff --git a/src/themes/agora/WindowManager.less 
b/src/themes/agora/WindowManager.less
index ac914fc..c5c0d67 100644
--- a/src/themes/agora/WindowManager.less
+++ b/src/themes/agora/WindowManager.less
@@ -1,4 +1,4 @@
-@import '../../styles/mixins';
+@import 'common';
 
 .oo-ui-windowManager {
        &-modal > .oo-ui-dialog {
diff --git a/src/themes/agora/common.less b/src/themes/agora/common.less
new file mode 100644
index 0000000..714737c
--- /dev/null
+++ b/src/themes/agora/common.less
@@ -0,0 +1,18 @@
+@import '../../styles/common';
+
+// Variables
+
+@color-progressive: #347BFF;
+@color-destructive: #D11D13;
+@color-white: #FFF;
+@color-shadow: #DDD;
+@color-neutral: #777;
+@window-header-height: 3.35em;
+
+// Mixins
+
+.icon() {
+       width: @window-header-height;
+       height: @window-header-height;
+       background-size: 2em auto;
+}
diff --git a/src/themes/agora/dialogs/MessageDialog.less 
b/src/themes/agora/dialogs/MessageDialog.less
index 5657a7f..902bd60 100644
--- a/src/themes/agora/dialogs/MessageDialog.less
+++ b/src/themes/agora/dialogs/MessageDialog.less
@@ -1,3 +1,5 @@
+@import '../common';
+
 .oo-ui-messageDialog {
        &-title,
        &-message {
diff --git a/src/themes/agora/dialogs/ProcessDialog.less 
b/src/themes/agora/dialogs/ProcessDialog.less
index b65d9c3..6dd75e3 100644
--- a/src/themes/agora/dialogs/ProcessDialog.less
+++ b/src/themes/agora/dialogs/ProcessDialog.less
@@ -1,6 +1,4 @@
-@import '../../../styles/mixins';
-@import '../mixins';
-@import '../variables';
+@import '../common';
 
 @window-header-inner-height: @window-header-height - 1.5em;
 
diff --git a/src/themes/agora/elements/ButtonedElement.less 
b/src/themes/agora/elements/ButtonedElement.less
index cfad5f5..ecf6990 100644
--- a/src/themes/agora/elements/ButtonedElement.less
+++ b/src/themes/agora/elements/ButtonedElement.less
@@ -1,4 +1,4 @@
-@import '../mixins';
+@import '../common';
 
 .oo-ui-buttonedElement {
        &.oo-ui-indicatedElement .oo-ui-buttonedElement-button > 
.oo-ui-indicatedElement-indicator,
diff --git a/src/themes/agora/images/icons.less 
b/src/themes/agora/images/icons.less
new file mode 100644
index 0000000..3574971
--- /dev/null
+++ b/src/themes/agora/images/icons.less
@@ -0,0 +1,7 @@
+//
+// Don't include this file directly, it is included by either the raster or 
vector icons file
+//
+
+@import '../common';
+
+.oo-ui-icon( check, check, @color-progressive );
diff --git a/src/themes/agora/images/raster.less 
b/src/themes/agora/images/raster.less
new file mode 100644
index 0000000..5da5671
--- /dev/null
+++ b/src/themes/agora/images/raster.less
@@ -0,0 +1,10 @@
+@import '../common';
+
+.oo-ui-icon( @name, @file, @background ) {
+       .oo-ui-icon-@{name} {
+               
.oo-ui-background-image('themes/agora/images/icons/@{file}.png');
+               background: @background;
+       }
+}
+
+@import 'icons';
diff --git a/src/themes/agora/layouts/BookletLayout.less 
b/src/themes/agora/layouts/BookletLayout.less
index 045d545..0c66a76 100644
--- a/src/themes/agora/layouts/BookletLayout.less
+++ b/src/themes/agora/layouts/BookletLayout.less
@@ -1,3 +1,5 @@
+@import '../common';
+
 .oo-ui-bookletLayout {
        &-stackLayout {
                .oo-ui-panelLayout {
diff --git a/src/themes/agora/layouts/PanelLayout.less 
b/src/themes/agora/layouts/PanelLayout.less
index ab0de2e..9147e7c 100644
--- a/src/themes/agora/layouts/PanelLayout.less
+++ b/src/themes/agora/layouts/PanelLayout.less
@@ -1,3 +1,5 @@
+@import '../common';
+
 .oo-ui-panelLayout {
   padding: 1em 3.35em;
 }
diff --git a/src/themes/agora/mixins.less b/src/themes/agora/mixins.less
deleted file mode 100644
index f1f42b0..0000000
--- a/src/themes/agora/mixins.less
+++ /dev/null
@@ -1,7 +0,0 @@
-@import 'variables';
-
-.icon() {
-       width: @window-header-height;
-       height: @window-header-height;
-       background-size: 2em auto;
-}
diff --git a/src/themes/agora/variables.less b/src/themes/agora/variables.less
deleted file mode 100644
index 36836f0..0000000
--- a/src/themes/agora/variables.less
+++ /dev/null
@@ -1,11 +0,0 @@
-// colors
-// 
https://trello-attachments.s3.amazonaws.com/52fbe6b75b3096573f4ad245/52fc1b69cf7ee14c67b5829a/d97b1eb814b05e730268799de9b3509e/WMFColors.png
-@color-progressive: #347BFF;
-@color-destructive: #D11D13;
-@color-white: #FFF;
-@color-shadow: #DDD;
-@color-neutral: #777;
-
-// other
-
-@window-header-height: 3.35em;
diff --git a/src/themes/agora/widgets/ButtonOptionWidget.less 
b/src/themes/agora/widgets/ButtonOptionWidget.less
index 3e590d2..fd46b69 100644
--- a/src/themes/agora/widgets/ButtonOptionWidget.less
+++ b/src/themes/agora/widgets/ButtonOptionWidget.less
@@ -1,3 +1,5 @@
+@import '../common';
+
 .oo-ui-buttonOptionWidget {
        padding: 0;
 }
diff --git a/src/themes/agora/widgets/LookupWidget.less 
b/src/themes/agora/widgets/LookupWidget.less
index 54a2f49..bbfb9f8 100644
--- a/src/themes/agora/widgets/LookupWidget.less
+++ b/src/themes/agora/widgets/LookupWidget.less
@@ -1,3 +1,5 @@
+@import '../common';
+
 .oo-ui-lookupWidget {
        &-menu {
                background-color: #fff;
diff --git a/src/themes/agora/widgets/MenuItemWidget.less 
b/src/themes/agora/widgets/MenuItemWidget.less
index f14448f..29929d4 100644
--- a/src/themes/agora/widgets/MenuItemWidget.less
+++ b/src/themes/agora/widgets/MenuItemWidget.less
@@ -1,4 +1,4 @@
-@import '../variables';
+@import '../common';
 
 .oo-ui-menuItemWidget {
        &.oo-ui-optionWidget-selected {
diff --git a/src/themes/agora/widgets/MenuSectionItemWidget.less 
b/src/themes/agora/widgets/MenuSectionItemWidget.less
index 18c4d4b..694624a 100644
--- a/src/themes/agora/widgets/MenuSectionItemWidget.less
+++ b/src/themes/agora/widgets/MenuSectionItemWidget.less
@@ -1,4 +1,4 @@
-@import '../variables';
+@import '../common';
 
 .oo-ui-menuSectionItemWidget {
        font-weight: normal;
diff --git a/src/themes/agora/widgets/OptionWidget.less 
b/src/themes/agora/widgets/OptionWidget.less
index 061e40c..f31b509 100644
--- a/src/themes/agora/widgets/OptionWidget.less
+++ b/src/themes/agora/widgets/OptionWidget.less
@@ -1,4 +1,4 @@
-@import '../variables';
+@import '../common';
 
 .oo-ui-optionWidget {
        padding: .8em 1em .8em @window-header-height;
diff --git a/src/themes/agora/widgets/TextInputWidget.less 
b/src/themes/agora/widgets/TextInputWidget.less
index c153129..c020461 100644
--- a/src/themes/agora/widgets/TextInputWidget.less
+++ b/src/themes/agora/widgets/TextInputWidget.less
@@ -1,3 +1,5 @@
+@import '../common';
+
 .oo-ui-textInputWidget {
        input,
        textarea {
diff --git a/src/themes/apex/Dialog.less b/src/themes/apex/Dialog.less
index 6768bb4..fe126e1 100644
--- a/src/themes/apex/Dialog.less
+++ b/src/themes/apex/Dialog.less
@@ -1,4 +1,4 @@
-@import '../../styles/mixins';
+@import 'common';
 
 .oo-ui-dialog {
        &-content {
diff --git a/src/themes/apex/ToolGroup.less b/src/themes/apex/ToolGroup.less
index 5545299..489bca5 100644
--- a/src/themes/apex/ToolGroup.less
+++ b/src/themes/apex/ToolGroup.less
@@ -1,4 +1,4 @@
-@import '../../styles/mixins';
+@import 'common';
 
 .oo-ui-toolGroup {
        border-radius: 0.25em;
diff --git a/src/themes/apex/Toolbar.less b/src/themes/apex/Toolbar.less
index 8aabca0..5a41d47 100644
--- a/src/themes/apex/Toolbar.less
+++ b/src/themes/apex/Toolbar.less
@@ -1,4 +1,4 @@
-@import '../../styles/mixins';
+@import 'common';
 
 .oo-ui-toolbar {
        &-bar {
diff --git a/src/themes/apex/Window.less b/src/themes/apex/Window.less
index 21544f9..4d47449 100644
--- a/src/themes/apex/Window.less
+++ b/src/themes/apex/Window.less
@@ -1,4 +1,4 @@
-@import '../../styles/mixins';
+@import 'common';
 
 .oo-ui-window {
        &-isolated&-content {
diff --git a/src/themes/apex/WindowManager.less 
b/src/themes/apex/WindowManager.less
index ebd588e..5f58c44 100644
--- a/src/themes/apex/WindowManager.less
+++ b/src/themes/apex/WindowManager.less
@@ -1,4 +1,4 @@
-@import '../../styles/mixins';
+@import 'common';
 
 .oo-ui-windowManager {
        &-modal > .oo-ui-dialog {
diff --git a/src/themes/apex/common.less b/src/themes/apex/common.less
new file mode 100644
index 0000000..94067dc
--- /dev/null
+++ b/src/themes/apex/common.less
@@ -0,0 +1 @@
+@import '../../styles/common';
\ No newline at end of file
diff --git a/src/themes/apex/dialogs/MessageDialog.less 
b/src/themes/apex/dialogs/MessageDialog.less
index 61c9706..3ece0d6 100644
--- a/src/themes/apex/dialogs/MessageDialog.less
+++ b/src/themes/apex/dialogs/MessageDialog.less
@@ -1,3 +1,5 @@
+@import '../common';
+
 .oo-ui-messageDialog {
        &-content {
                .oo-ui-window-body {
diff --git a/src/themes/apex/dialogs/ProcessDialog.less 
b/src/themes/apex/dialogs/ProcessDialog.less
index 571c63a..897b13b 100644
--- a/src/themes/apex/dialogs/ProcessDialog.less
+++ b/src/themes/apex/dialogs/ProcessDialog.less
@@ -1,3 +1,5 @@
+@import '../common';
+
 .oo-ui-processDialog {
        &-content {
                .oo-ui-window-head {
diff --git a/src/themes/apex/elements/ButtonedElement.less 
b/src/themes/apex/elements/ButtonedElement.less
index 80424a1..8cce8a0 100644
--- a/src/themes/apex/elements/ButtonedElement.less
+++ b/src/themes/apex/elements/ButtonedElement.less
@@ -1,4 +1,4 @@
-@import '../../../styles/mixins';
+@import '../common';
 
 .oo-ui-buttonedElement {
        > .oo-ui-buttonedElement-button {
diff --git a/src/themes/apex/layouts/BookletLayout.less 
b/src/themes/apex/layouts/BookletLayout.less
index a62f1ab..5513894 100644
--- a/src/themes/apex/layouts/BookletLayout.less
+++ b/src/themes/apex/layouts/BookletLayout.less
@@ -1,4 +1,4 @@
-@import '../../../styles/mixins';
+@import '../common';
 
 .oo-ui-bookletLayout {
        &-stackLayout {
diff --git a/src/themes/apex/layouts/FieldLayout.less 
b/src/themes/apex/layouts/FieldLayout.less
index de68d14..64ec87f 100644
--- a/src/themes/apex/layouts/FieldLayout.less
+++ b/src/themes/apex/layouts/FieldLayout.less
@@ -1,3 +1,5 @@
+@import '../common';
+
 .oo-ui-fieldLayout {
        &-disabled .oo-ui-labeledElement-label {
                color: #ccc;
diff --git a/src/themes/apex/layouts/FieldsetLayout.less 
b/src/themes/apex/layouts/FieldsetLayout.less
index 9f7a1c6..9722a3c 100644
--- a/src/themes/apex/layouts/FieldsetLayout.less
+++ b/src/themes/apex/layouts/FieldsetLayout.less
@@ -1,3 +1,5 @@
+@import '../common';
+
 .oo-ui-fieldsetLayout {
        border: none;
 
diff --git a/src/themes/apex/layouts/PanelLayout.less 
b/src/themes/apex/layouts/PanelLayout.less
index e1d918f..ab0b53a 100644
--- a/src/themes/apex/layouts/PanelLayout.less
+++ b/src/themes/apex/layouts/PanelLayout.less
@@ -1,3 +1,5 @@
+@import '../common';
+
 .oo-ui-panelLayout {
        &-padded {
                padding: 1.25em;
diff --git a/src/themes/apex/toolgroups/BarToolgroup.less 
b/src/themes/apex/toolgroups/BarToolgroup.less
index 805275d..cd2a324 100644
--- a/src/themes/apex/toolgroups/BarToolgroup.less
+++ b/src/themes/apex/toolgroups/BarToolgroup.less
@@ -1,4 +1,4 @@
-@import '../../../styles/mixins';
+@import '../common';
 
 .oo-ui-barToolGroup {
        .oo-ui-tool {
diff --git a/src/themes/apex/toolgroups/ListToolgroup.less 
b/src/themes/apex/toolgroups/ListToolgroup.less
index 0c2da18..c501798 100644
--- a/src/themes/apex/toolgroups/ListToolgroup.less
+++ b/src/themes/apex/toolgroups/ListToolgroup.less
@@ -1,4 +1,4 @@
-@import '../../../styles/mixins';
+@import '../common';
 
 .oo-ui-listToolGroup {
        &.oo-ui-popupToolGroup-active {
diff --git a/src/themes/apex/toolgroups/MenuToolgroup.less 
b/src/themes/apex/toolgroups/MenuToolgroup.less
index fe49fc8..012a63c 100644
--- a/src/themes/apex/toolgroups/MenuToolgroup.less
+++ b/src/themes/apex/toolgroups/MenuToolgroup.less
@@ -1,3 +1,5 @@
+@import '../common';
+
 .oo-ui-menuToolGroup {
        border-color: rgba(0,0,0,0.1);
 
diff --git a/src/themes/apex/toolgroups/PopupToolgroup.less 
b/src/themes/apex/toolgroups/PopupToolgroup.less
index 54dafc1..570b5a6 100644
--- a/src/themes/apex/toolgroups/PopupToolgroup.less
+++ b/src/themes/apex/toolgroups/PopupToolgroup.less
@@ -1,4 +1,4 @@
-@import '../../../styles/mixins';
+@import '../common';
 
 .oo-ui-popupToolGroup {
        &-handle {
diff --git a/src/themes/apex/widgets/ButtonGroupWidget.less 
b/src/themes/apex/widgets/ButtonGroupWidget.less
index df3466f..2309326 100644
--- a/src/themes/apex/widgets/ButtonGroupWidget.less
+++ b/src/themes/apex/widgets/ButtonGroupWidget.less
@@ -1,3 +1,5 @@
+@import '../common';
+
 .oo-ui-buttonGroupWidget {
        display: inline-block;
        white-space: nowrap;
diff --git a/src/themes/apex/widgets/ButtonOptionWidget.less 
b/src/themes/apex/widgets/ButtonOptionWidget.less
index 86adb08..b773862 100644
--- a/src/themes/apex/widgets/ButtonOptionWidget.less
+++ b/src/themes/apex/widgets/ButtonOptionWidget.less
@@ -1,3 +1,5 @@
+@import '../common';
+
 .oo-ui-buttonOptionWidget {
        padding: 0;
 
diff --git a/src/themes/apex/widgets/ButtonSelectWidget.less 
b/src/themes/apex/widgets/ButtonSelectWidget.less
index e7c6541..3cbb1ed 100644
--- a/src/themes/apex/widgets/ButtonSelectWidget.less
+++ b/src/themes/apex/widgets/ButtonSelectWidget.less
@@ -1,3 +1,5 @@
+@import '../common';
+
 .oo-ui-buttonSelectWidget {
        border-radius: 0.3em;
 
diff --git a/src/themes/apex/widgets/InlineMenuWidget.less 
b/src/themes/apex/widgets/InlineMenuWidget.less
index d6706b2..beb629e 100644
--- a/src/themes/apex/widgets/InlineMenuWidget.less
+++ b/src/themes/apex/widgets/InlineMenuWidget.less
@@ -1,4 +1,4 @@
-@import '../../../styles/mixins';
+@import '../common';
 
 .oo-ui-inlineMenuWidget {
        &-handle {
diff --git a/src/themes/apex/widgets/MenuItemWidget.less 
b/src/themes/apex/widgets/MenuItemWidget.less
index fbe732e..d5c7221 100644
--- a/src/themes/apex/widgets/MenuItemWidget.less
+++ b/src/themes/apex/widgets/MenuItemWidget.less
@@ -1,3 +1,5 @@
+@import '../common';
+
 .oo-ui-menuItemWidget {
        &.oo-ui-optionWidget {
                &-selected {
diff --git a/src/themes/apex/widgets/MenuSectionItemWidget.less 
b/src/themes/apex/widgets/MenuSectionItemWidget.less
index 29fd434..7db10e2 100644
--- a/src/themes/apex/widgets/MenuSectionItemWidget.less
+++ b/src/themes/apex/widgets/MenuSectionItemWidget.less
@@ -1,3 +1,5 @@
+@import '../common';
+
 .oo-ui-menuSectionItemWidget {
        padding: 0.33em 0.75em;
        color: #888;
diff --git a/src/themes/apex/widgets/MenuWidget.less 
b/src/themes/apex/widgets/MenuWidget.less
index 2008597..e04d0e6 100644
--- a/src/themes/apex/widgets/MenuWidget.less
+++ b/src/themes/apex/widgets/MenuWidget.less
@@ -1,3 +1,5 @@
+@import '../common';
+
 .oo-ui-menuWidget {
        background: #fff;
        margin-top: -1px;
diff --git a/src/themes/apex/widgets/OptionWidget.less 
b/src/themes/apex/widgets/OptionWidget.less
index 813c1ae..a5cf98e 100644
--- a/src/themes/apex/widgets/OptionWidget.less
+++ b/src/themes/apex/widgets/OptionWidget.less
@@ -1,3 +1,5 @@
+@import '../common';
+
 .oo-ui-optionWidget {
        padding: 0.5em 2em 0.5em 3em;
 
diff --git a/src/themes/apex/widgets/OutlineControlsWidget.less 
b/src/themes/apex/widgets/OutlineControlsWidget.less
index 4519263..eb9676c 100644
--- a/src/themes/apex/widgets/OutlineControlsWidget.less
+++ b/src/themes/apex/widgets/OutlineControlsWidget.less
@@ -1,3 +1,5 @@
+@import '../common';
+
 .oo-ui-outlineControlsWidget {
        background-color: #fff;
 
diff --git a/src/themes/apex/widgets/OutlineItemWidget.less 
b/src/themes/apex/widgets/OutlineItemWidget.less
index 6ce4978..5c08aa5 100644
--- a/src/themes/apex/widgets/OutlineItemWidget.less
+++ b/src/themes/apex/widgets/OutlineItemWidget.less
@@ -1,3 +1,5 @@
+@import '../common';
+
 .oo-ui-outlineItemWidget {
        font-size: 1.1em;
 
diff --git a/src/themes/apex/widgets/PopupWidget.less 
b/src/themes/apex/widgets/PopupWidget.less
index ffff220..f64e48c 100644
--- a/src/themes/apex/widgets/PopupWidget.less
+++ b/src/themes/apex/widgets/PopupWidget.less
@@ -1,4 +1,4 @@
-@import '../../../styles/mixins';
+@import '../common';
 
 .oo-ui-popupWidget {
        &-popup {
diff --git a/src/themes/apex/widgets/SearchWidget.less 
b/src/themes/apex/widgets/SearchWidget.less
index 878e262..9407787 100644
--- a/src/themes/apex/widgets/SearchWidget.less
+++ b/src/themes/apex/widgets/SearchWidget.less
@@ -1,3 +1,5 @@
+@import '../common';
+
 .oo-ui-searchWidget {
        &-query {
                box-shadow: 0 0 0.5em rgba(0,0,0,0.2);
diff --git a/src/themes/apex/widgets/TextInputWidget.less 
b/src/themes/apex/widgets/TextInputWidget.less
index a1c18e6..d09db54 100644
--- a/src/themes/apex/widgets/TextInputWidget.less
+++ b/src/themes/apex/widgets/TextInputWidget.less
@@ -1,4 +1,4 @@
-@import '../../../styles/mixins';
+@import '../common';
 
 .oo-ui-textInputWidget {
        width: 20em;
diff --git a/src/themes/apex/widgets/ToggleSwitchWidget.less 
b/src/themes/apex/widgets/ToggleSwitchWidget.less
index dde2364..0ba5c53 100644
--- a/src/themes/apex/widgets/ToggleSwitchWidget.less
+++ b/src/themes/apex/widgets/ToggleSwitchWidget.less
@@ -1,4 +1,4 @@
-@import '../../../styles/mixins';
+@import '../common';
 
 .oo-ui-toggleSwitchWidget {
        border-radius: 1em;

-- 
To view, visit https://gerrit.wikimedia.org/r/155457
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: Iccd3f827e2b7cb821ecd7c67c03061487c20fcdd
Gerrit-PatchSet: 1
Gerrit-Project: oojs/ui
Gerrit-Branch: master
Gerrit-Owner: Trevor Parscal <[email protected]>

_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to