Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add basic keyboard navigation to md menu content component #1

Open
wants to merge 75 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
75 commits
Select commit Hold shift + click to select a range
476a88e
Add basic keyboard navigation to md menu content component
michalp-iRonin Sep 15, 2017
b5b5430
Build
michalp-iRonin Sep 15, 2017
def8d5d
Add selecting on enter
michalp-iRonin Sep 18, 2017
5a51bf9
Fix arraow navigation
michalp-iRonin Sep 19, 2017
26550bf
Build
michalp-iRonin Sep 19, 2017
0cc7f75
Do not highlight item after backdrop close
michalp-iRonin Sep 20, 2017
7dada57
Build
michalp-iRonin Sep 20, 2017
ea83f7c
Add passive option to touch event listeners
michalp-iRonin Sep 21, 2017
e5bf400
Build
michalp-iRonin Sep 21, 2017
4074ebe
Close menu when empty query or list for autocomplete
Sep 25, 2017
15284d0
Build
Sep 25, 2017
9493241
Select tab navigation
michalp-iRonin Sep 26, 2017
9620f5b
Build
michalp-iRonin Sep 26, 2017
293e40b
Add focus to radio buttons on tab navigation
michalp-iRonin Sep 26, 2017
97ae1de
Build
michalp-iRonin Sep 26, 2017
0676dbd
Add space keyboard navigation
michalp-iRonin Sep 26, 2017
bbfc49a
Build
michalp-iRonin Sep 26, 2017
f01005a
Add keyboard navigation for checkboxes
michalp-iRonin Sep 26, 2017
8587689
Build
michalp-iRonin Sep 26, 2017
c79f241
Change component radio and checkbox default outline to none
michalp-iRonin Sep 26, 2017
0302fb0
Build
michalp-iRonin Sep 26, 2017
9d9597b
Fix highlight for autocomplete dropdown
Sep 28, 2017
313af62
Build
Sep 28, 2017
9cfa77d
Prevent arrow keys down for menu content
michalp-iRonin Sep 29, 2017
0f8d2c4
Build
michalp-iRonin Sep 29, 2017
8ce4a18
Remove scroll on arrow navigation
michalp-iRonin Sep 29, 2017
d2b0601
Build
michalp-iRonin Sep 29, 2017
9c2fd62
Revert scroll to
michalp-iRonin Sep 29, 2017
18f10f0
Build
michalp-iRonin Sep 29, 2017
df71140
Fix error in autocomplete when element is highlighted and in next sea…
Oct 2, 2017
3a652bb
Make fetch request for autocomplete when query changed
Oct 2, 2017
ae03bfc
Merge branch 'md-menu-keyboard-navigation' of github.com:iRonins/vue-…
Oct 2, 2017
76fbc46
Build
Oct 2, 2017
f73e7d2
Fix scrolling issue for select
michalp-iRonin Oct 2, 2017
7f09a16
Build
michalp-iRonin Oct 2, 2017
b37ae68
Set isItemSelected 0 in closeMenu for autocomplete
Oct 2, 2017
0d7a992
Fix checkbox space behavior
michalp-iRonin Oct 2, 2017
09b7f00
Close autocomplete dropdown when press esc button
Oct 3, 2017
756d2b9
Close autocomplete dropdown if input length is lower than minChars
Oct 3, 2017
d65821d
Build
Oct 3, 2017
4ec1038
Add tabindex to checkbox and radio component
michalp-iRonin Oct 3, 2017
026390c
Build
michalp-iRonin Oct 3, 2017
90d654d
Close autocomplete menu onBlur
Oct 4, 2017
8dda7cc
Build
Oct 4, 2017
2ddba90
Add tab index to autocomplete input field
michalp-iRonin Oct 4, 2017
dd31c07
Build
michalp-iRonin Oct 4, 2017
fd01557
Remove ink riple from table header, add passive listner to ink riple
michalp-iRonin Oct 4, 2017
1b0991d
Build
michalp-iRonin Oct 4, 2017
7c9d907
Better focus handling for radio buttons
michalp-iRonin Oct 4, 2017
39073e3
Build
michalp-iRonin Oct 4, 2017
5c8e3a3
Fix radio docs
michalp-iRonin Oct 4, 2017
685a027
Build
michalp-iRonin Oct 4, 2017
8e3bad5
Fix disappear autcomplete dropdown
Oct 5, 2017
48257b9
Build
Oct 5, 2017
3fe7db9
Remove setting items to empty array from closeMenu action
Oct 5, 2017
a7f1474
Build
Oct 5, 2017
3947cb1
Fix radio check error
michalp-iRonin Oct 6, 2017
5d1fc21
Build
michalp-iRonin Oct 6, 2017
629a0fc
Remove ink riple from md-radio
michalp-iRonin Oct 9, 2017
f0a5f9c
Build
michalp-iRonin Oct 9, 2017
497edb1
build
michalp-iRonin Oct 9, 2017
f5066f5
Build
michalp-iRonin Oct 9, 2017
425a7b7
Set default mdFixed as true in mdMenu
Oct 10, 2017
11065fa
Build
Oct 10, 2017
e013307
Merge branch 'md-menu-keyboard-navigation' into fix-performance
michalp-iRonin Oct 11, 2017
78abbff
Build
michalp-iRonin Oct 11, 2017
34068cb
Merge pull request #2 from iRonins/fix-performance
michalp-iRonin Oct 11, 2017
a8821ed
Run once submit autocomplete input when item selected and press enter…
Oct 12, 2017
b684926
Build
Oct 12, 2017
522d504
Set default mdFixed as false in mdMenu
Oct 13, 2017
a804cc7
Build
Oct 13, 2017
e0b3d46
Set autocomplete dropdown as not fixed [t: 223]
Oct 16, 2017
4006a09
Build
Oct 16, 2017
316bb16
Set autocomplete dropdown as fixed
Oct 16, 2017
3e50e62
Build
Oct 16, 2017
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
169 changes: 83 additions & 86 deletions dist/components/mdAvatar/index.debug.js
Original file line number Diff line number Diff line change
Expand Up @@ -11,41 +11,38 @@
return /******/ (function(modules) { // webpackBootstrap
/******/ // The module cache
/******/ var installedModules = {};

/******/
/******/ // The require function
/******/ function __webpack_require__(moduleId) {

/******/
/******/ // Check if module is in cache
/******/ if(installedModules[moduleId])
/******/ if(installedModules[moduleId]) {
/******/ return installedModules[moduleId].exports;

/******/ }
/******/ // Create a new module (and put it into the cache)
/******/ var module = installedModules[moduleId] = {
/******/ i: moduleId,
/******/ l: false,
/******/ exports: {}
/******/ };

/******/
/******/ // Execute the module function
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);

/******/
/******/ // Flag the module as loaded
/******/ module.l = true;

/******/
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ }


/******/
/******/
/******/ // expose the modules object (__webpack_modules__)
/******/ __webpack_require__.m = modules;

/******/
/******/ // expose the module cache
/******/ __webpack_require__.c = installedModules;

/******/ // identity function for calling harmony imports with the correct context
/******/ __webpack_require__.i = function(value) { return value; };

/******/
/******/ // define getter function for harmony exports
/******/ __webpack_require__.d = function(exports, name, getter) {
/******/ if(!__webpack_require__.o(exports, name)) {
Expand All @@ -56,7 +53,7 @@ return /******/ (function(modules) { // webpackBootstrap
/******/ });
/******/ }
/******/ };

/******/
/******/ // getDefaultExport function for compatibility with non-harmony modules
/******/ __webpack_require__.n = function(module) {
/******/ var getter = module && module.__esModule ?
Expand All @@ -65,15 +62,15 @@ return /******/ (function(modules) { // webpackBootstrap
/******/ __webpack_require__.d(getter, 'a', getter);
/******/ return getter;
/******/ };

/******/
/******/ // Object.prototype.hasOwnProperty.call
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };

/******/
/******/ // __webpack_public_path__
/******/ __webpack_require__.p = "/";

/******/
/******/ // Load entry module and return exports
/******/ return __webpack_require__(__webpack_require__.s = 447);
/******/ return __webpack_require__(__webpack_require__.s = 448);
/******/ })
/************************************************************************/
/******/ ({
Expand Down Expand Up @@ -230,73 +227,72 @@ module.exports = exports['default'];

/***/ }),

/***/ 126:
/***/ 100:
/***/ (function(module, exports) {

module.exports = ".THEME_NAME.md-avatar.md-primary.md-avatar-icon {\n background-color: PRIMARY-COLOR; }\n .THEME_NAME.md-avatar.md-primary.md-avatar-icon .md-icon {\n color: PRIMARY-CONTRAST-0.99999; }\n\n.THEME_NAME.md-avatar.md-accent.md-avatar-icon {\n background-color: ACCENT-COLOR; }\n .THEME_NAME.md-avatar.md-accent.md-avatar-icon .md-icon {\n color: ACCENT-CONTRAST-0.99999; }\n\n.THEME_NAME.md-avatar.md-warn.md-avatar-icon {\n background-color: WARN-COLOR; }\n .THEME_NAME.md-avatar.md-warn.md-avatar-icon .md-icon {\n color: WARN-CONTRAST-0.99999; }\n"

/***/ }),

/***/ 448:
/***/ (function(module, exports, __webpack_require__) {

"use strict";
module.exports = __webpack_require__(95);


Object.defineProperty(exports, "__esModule", {
value: true
});
/***/ }),

var _mixin = __webpack_require__(1);
/***/ 95:
/***/ (function(module, exports, __webpack_require__) {

var _mixin2 = _interopRequireDefault(_mixin);
"use strict";

function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }

exports.default = {
name: 'md-avatar',
mixins: [_mixin2.default]
}; //
//
//
//
//
//
//
//
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = install;

module.exports = exports['default'];
var _mdAvatar = __webpack_require__(96);

/***/ }),
var _mdAvatar2 = _interopRequireDefault(_mdAvatar);

/***/ 246:
/***/ (function(module, exports) {
var _mdAvatar3 = __webpack_require__(100);

// removed by extract-text-webpack-plugin
var _mdAvatar4 = _interopRequireDefault(_mdAvatar3);

/***/ }),
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }

/***/ 266:
/***/ (function(module, exports) {
function install(Vue) {
Vue.component('md-avatar', _mdAvatar2.default);

module.exports = ".THEME_NAME.md-avatar.md-primary.md-avatar-icon {\n background-color: PRIMARY-COLOR; }\n .THEME_NAME.md-avatar.md-primary.md-avatar-icon .md-icon {\n color: PRIMARY-CONTRAST-0.99999; }\n\n.THEME_NAME.md-avatar.md-accent.md-avatar-icon {\n background-color: ACCENT-COLOR; }\n .THEME_NAME.md-avatar.md-accent.md-avatar-icon .md-icon {\n color: ACCENT-CONTRAST-0.99999; }\n\n.THEME_NAME.md-avatar.md-warn.md-avatar-icon {\n background-color: WARN-COLOR; }\n .THEME_NAME.md-avatar.md-warn.md-avatar-icon .md-icon {\n color: WARN-CONTRAST-0.99999; }\n"
Vue.material.styles.push(_mdAvatar4.default);
}
module.exports = exports['default'];

/***/ }),

/***/ 296:
/***/ 96:
/***/ (function(module, exports, __webpack_require__) {

var disposed = false
function injectStyle (ssrContext) {
if (disposed) return
__webpack_require__(246)
__webpack_require__(97)
}
var Component = __webpack_require__(0)(
/* script */
__webpack_require__(126),
__webpack_require__(98),
/* template */
__webpack_require__(412),
__webpack_require__(99),
/* styles */
injectStyle,
/* scopeId */
null,
/* moduleIdentifier (server only) */
null
)
Component.options.__file = "/Users/pablohpsilva/Code/vue-material/src/components/mdAvatar/mdAvatar.vue"
Component.options.__file = "/Users/jaceksamol/apps/vue-material/src/components/mdAvatar/mdAvatar.vue"
if (Component.esModule && Object.keys(Component.esModule).some((function (key) {return key !== "default" && key.substr(0, 2) !== "__"}))) {console.error("named exports are not supported in *.vue files.")}
if (Component.options.functional) {console.error("[vue-loader] mdAvatar.vue: functional components are not supported with templates, they should use render functions.")}

Expand All @@ -321,34 +317,14 @@ module.exports = Component.exports

/***/ }),

/***/ 412:
/***/ (function(module, exports, __webpack_require__) {

module.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;
return _c('div', {
staticClass: "md-avatar",
class: [_vm.themeClass]
}, [_vm._t("default")], 2)
},staticRenderFns: []}
module.exports.render._withStripped = true
if (false) {
module.hot.accept()
if (module.hot.data) {
require("vue-hot-reload-api").rerender("data-v-4fb5ecf8", module.exports)
}
}

/***/ }),

/***/ 447:
/***/ (function(module, exports, __webpack_require__) {

module.exports = __webpack_require__(80);
/***/ 97:
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ 80:
/***/ 98:
/***/ (function(module, exports, __webpack_require__) {

"use strict";
Expand All @@ -357,24 +333,45 @@ module.exports = __webpack_require__(80);
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = install;

var _mdAvatar = __webpack_require__(296);
var _mixin = __webpack_require__(1);

var _mdAvatar2 = _interopRequireDefault(_mdAvatar);
var _mixin2 = _interopRequireDefault(_mixin);

var _mdAvatar3 = __webpack_require__(266);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }

var _mdAvatar4 = _interopRequireDefault(_mdAvatar3);
exports.default = {
name: 'md-avatar',
mixins: [_mixin2.default]
}; //
//
//
//
//
//
//
//

function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
module.exports = exports['default'];

function install(Vue) {
Vue.component('md-avatar', _mdAvatar2.default);
/***/ }),

Vue.material.styles.push(_mdAvatar4.default);
/***/ 99:
/***/ (function(module, exports, __webpack_require__) {

module.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;
return _c('div', {
staticClass: "md-avatar",
class: [_vm.themeClass]
}, [_vm._t("default")], 2)
},staticRenderFns: []}
module.exports.render._withStripped = true
if (false) {
module.hot.accept()
if (module.hot.data) {
require("vue-hot-reload-api").rerender("data-v-4fb5ecf8", module.exports)
}
}
module.exports = exports['default'];

/***/ })

Expand Down
2 changes: 1 addition & 1 deletion dist/components/mdAvatar/index.js

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading