enyo.kind({
    name: "moon.MovieImageItem",
    classes: "moon-movie-list-item moon-3h moon-2v",
    spotlight: true,
    published: {
        option: {
            src: "",
            caption: ""
        }
    },
    handlers: {
        onSpotlightFocused: "focused",
        onSpotlightBlur: "released"
    },
    components: [
        {name: "caption", classes: "moon-movie-list-item-text"}
    ],
    create: function() {
        this.inherited(arguments);
        this.optionChanged();
    },
    getCaption: function() {
        return this.$.caption;
    },
    optionChanged: function(inOld) {
        this.applyStyle("background-image", 'url(' + this.option.src + ')');
        this.$.caption.setContent(this.option.caption);
    },
    focused: function() {
        this.$.caption.addClass("spotlight");
        return true;
    },
    released: function() {
        this.$.caption.removeClass("spotlight");
        return true;
    }
});

enyo.kind({
    name: "moon.ContextualLoginPopup",
    kind: "moon.ContextualPopup",
    classes: "moon-5h moon-3v",
    components: [
        {kind: "moon.Divider", content: "Log in to Service"},
        {kind: "moon.InputDecorator", spotlight: true, components: [
            {kind: "moon.Input", placeholder: "E-mail", onchange:""}
        ]},
        {kind: "moon.InputDecorator", spotlight: true, components: [
            {kind: "moon.Input", placeholder: "Password", onchange:""}
        ]},
        {content: "Log in setting Menu"},
        {kind: "moon.Button", content: "Log in"},
        {content: "or Connected with"},
        {kind: "moon.Button", content: "FACEBOOK"},
        {kind: "moon.Button", content: "TWITTER"}
    ]
});

// Sample view

enyo.kind({
    name: "moon.sample.login.ContextualPopupSample",
    kind: "moon.Panel",
    layoutKind: "FittableColumnsLayout",
    titleAbove: "01",
    title: "Main Menu",
    components: [
        {kind: "enyo.Spotlight"},
        {
            name: "menuList",
            kind: "enyo.DataList",
            style: "width: 300px;",
            components: [
                {bindFrom: "menuItem", kind: "moon.Item", ontap: "changePanel"}
            ]
        },
        {
            fit: true,
            layoutkind: "FittableRowsLayout", 
            components: [
            {
                name: "contentList",            
                kind: "enyo.DataGridList",
                fit: true,
                components: [
                    {kind: "moon.MovieImageItem", bindFrom: "itemOption", bindTo: "option"}
                ]
            },
            {
                name: "buttonList",
                kind: "enyo.DataGridList",
                //layoutkind: "FittableRowsLayout",
                components: [
                    {kind: "moon.ContextualPopupDecorator", components: [
                        {bindFrom: "content", bindTo: "content"},
                        {kind: "moon.ContextualLoginPopup"}
                    ]},
                ]
            }
        ]}
        
    ],
    bindings: [
        {from: ".controller.menus", to: "$.menuList.controller"},
        {from: ".controller.contents", to: "$.contentList.controller"},
        {from: ".controller.buttons", to: "$.buttonList.controller"}
    ]
 });

// Sample model

enyo.ready(function(){
    var sampleModel = new enyo.Model({
        menus: new enyo.Collection([
            {menuItem: "Browser Movies"},
            {menuItem: "Browser TV Shows"},
            {menuItem: "Queue"},
            {menuItem: "Search"}
        ]),
        contents: new enyo.Collection([
            {itemOption: {src: "assets/default-movie-vertical.png"}},
            {itemOption: {src: "assets/default-movie-vertical.png"}},
            {itemOption: {src: "assets/default-movie-vertical.png"}},
            {itemOption: {src: "assets/default-movie-vertical.png"}}
        ]),
        buttons: new enyo.Collection([
            {iconSrc: "assets/icon-like.png", content: "LIKE"},
            {iconSrc: "", content: "SHARE"}
        ])
    });

//  Application to render sample

    new enyo.Application({
        view: {
            classes: "enyo-unselectable moon",
            components: [
                {
                    kind: "moon.sample.login.ContextualPopupSample",
                    controller: ".app.controllers.movieController",
                    classes: "enyo-fit"
                }
            ]
        },
        controllers: [
            {
                name: "movieController",
                kind: "enyo.ModelController",
                model: sampleModel,
                changePanel: function(inSender, inEvent) {
                    enyo.log("Item: " + inEvent.originator.parent.controller.model.get("menuItem"));
                }
            }
        ]
    });
});
@@ -1507,32 +1507,60 @@
 : %22moon.Button%22,
+ classes: %22moon-light-gray%22,
  content: %22Log i
@@ -1625,32 +1625,60 @@
 : %22moon.Button%22,
+ classes: %22moon-light-gray%22,
  content: %22FACEB
@@ -1713,16 +1713,44 @@
 Button%22,
+ classes: %22moon-light-gray%22,
  content
@@ -2619,16 +2619,37 @@
 option%22%7D
+,                    
 %0A       
@@ -2744,53 +2744,8 @@
     
-kind: %22enyo.DataGridList%22,%0A                //
 layo
@@ -2907,45 +2907,439 @@
    %7B
-bindFrom: %22content%22, bindTo: %22content
+kind: %22moon.ContextualPopupButton%22, components: %5B%0A                            %7Btag: %22img%22, attributes: %7Bsrc: %22assets/icon-like.png%22%7D%7D,%0A                            %7Bcontent: %22LIKE%22%7D%0A                        %5D%7D,                        %0A                        %7Bkind: %22moon.ContextualLoginPopup%22%7D%0A                    %5D%7D,%0A                    %7Bkind: %22moon.ContextualPopupDecorator%22, components: %5B%0A                        %7Bcontent: %22SHARE
 %22%7D,%0A
@@ -3637,78 +3637,8 @@
 er%22%7D
-,%0A        %7Bfrom: %22.controller.buttons%22, to: %22$.buttonList.controller%22%7D
 %0A   
@@ -4249,167 +4249,8 @@
 %22%7D%7D%0A
-        %5D),%0A        buttons: new enyo.Collection(%5B%0A            %7BiconSrc: %22assets/icon-like.png%22, content: %22LIKE%22%7D,%0A            %7BiconSrc: %22%22, content: %22SHARE%22%7D%0A
     

Revert MVC just at button