Started to update for Polymer 0.5.0.

So much broken... I suspect that dropdown menus can't be in shadow DOM
for the <loot-dropdown-menu>, and <loot-dialog> doesn't seem to work
either for some reason.
This commit is contained in:
Oliver Hamlet
2014-11-12 19:28:55 +00:00
parent 50ce09e6ea
commit cdca6fd83d
10 changed files with 100 additions and 74 deletions
+13 -13
View File
@@ -13,19 +13,19 @@
"tests"
],
"dependencies": {
"polymer": "Polymer/polymer#~0.4.2",
"paper-icon-button": "Polymer/paper-icon-button#~0.4.2",
"paper-dropdown-menu": "Polymer/paper-dropdown-menu#~0.4.2",
"core-toolbar": "Polymer/core-toolbar#~0.4.2",
"core-icons": "Polymer/core-icons#~0.4.2",
"core-tooltip": "Polymer/core-tooltip#~0.4.2",
"core-drawer-panel": "Polymer/core-drawer-panel#~0.4.2",
"paper-input": "Polymer/paper-input#~0.4.2",
"paper-tabs": "Polymer/paper-tabs#~0.4.2",
"core-menu": "Polymer/core-menu#~0.4.2",
"paper-checkbox": "Polymer/paper-checkbox#~0.4.2",
"paper-dialog": "Polymer/paper-dialog#~0.4.2",
"paper-menu-button": "Polymer/paper-menu-button#~0.4.2",
"polymer": "Polymer/polymer#~0.5.0",
"paper-icon-button": "Polymer/paper-icon-button#~0.5.0",
"paper-dropdown-menu": "Polymer/paper-dropdown-menu#~0.5.0",
"core-toolbar": "Polymer/core-toolbar#~0.5.0",
"core-icons": "Polymer/core-icons#~0.5.0",
"core-tooltip": "Polymer/core-tooltip#~0.5.0",
"core-drawer-panel": "Polymer/core-drawer-panel#~0.5.0",
"paper-input": "Polymer/paper-input#~0.5.0",
"paper-tabs": "Polymer/paper-tabs#~0.5.0",
"core-menu": "Polymer/core-menu#~0.5.0",
"paper-checkbox": "Polymer/paper-checkbox#~0.5.0",
"paper-dialog": "Polymer/paper-dialog#~0.5.0",
"paper-menu-button": "Polymer/paper-menu-button#~0.5.0",
"Jed": "SlexAxton/Jed#a9d03e1bbca9211a8b29a93a298a7ee9ddb353f0",
"marked": "chjj/marked#~0.3.2",
"requirejs": "jrburke/requirejs-bower#~2.1.15"
+5 -3
View File
@@ -12,10 +12,12 @@
}
/* These overrides change the colour of the game menu's text and underline. */
#gameMenu::shadow #control {
color: white;
#gameMenu {
border-bottom-color: #f1f1f1;
}
#gameMenu::shadow #label, #gameMenu::shadow #arrow {
color: white;
}
#gameMenu::shadow #menu {
color: black;
}
@@ -54,7 +56,7 @@ loot-plugin-item::shadow ::content > a {
}
/* This override change the positioning of the progress dialog to adapt to content changes. */
#progressDialog {
html /deep/ paper-dialog#progressDialog {
position: inherit !important;
margin: 0 auto;
top: 0;
+4 -10
View File
@@ -38,21 +38,15 @@ noscript {
}
#mainToolbar {
background: #4285f4;
/*font-size: 1em;
height: 3em;*/
color: white;
color: white;
}
#mainToolbar paper-dropdown {
color: black;
}
/*#mainToolbar > * {
top: -1em;
}*/
#gameMenu {
background: inherit;
}
#filtersToggle > span {
margin-right: 1em;
}
div[drawer] > core-tooltip {
width: 100%;
margin: 0 12px;
+1 -1
View File
@@ -182,7 +182,7 @@ td paper-icon-button.hidden {
for (var j = 0; j < classMask.length; ++j) {
if (inputs[i].classList.contains(classMask[j])) {
if (inputs[i].tagName == 'PAPER-INPUT') {
inputs[i].readonly = readOnly;
inputs[i].disabled = readOnly;
} else {
inputs[i].readOnly = readOnly;
}
+5 -8
View File
@@ -9,9 +9,9 @@ Still missing compared to <dialog> are:
-->
<link rel="import" href="../bower_components/polymer/polymer.html">
<link rel="import" href="../bower_components/paper-dialog/paper-dialog.html">
<link rel="import" href="../bower_components/paper-dialog/paper-action-dialog.html">
<polymer-element name="loot-dialog" extends="paper-dialog" attributes="open" transition="core-transition-center" autoCloseDisabled backdrop>
<polymer-element name="loot-dialog" extends="paper-action-dialog" attributes="open" transition="core-transition-center" autoCloseDisabled backdrop>
<script>
Polymer({
open: false,
@@ -26,18 +26,15 @@ Still missing compared to <dialog> are:
show: function() {
this.backdrop = false;
this.opened = true;
this.layered = false;
this.setAttribute(opened, true);
},
showModal: function() {
this.backdrop = true;
this.opened = true;
// The layered attribute seems to cause the dialog to be destroyed for some reason, so don't use it. It doesn't seem to be necessary anyway.
this.layered = false;
this.setAttribute('opened', true);
},
close: function(retVal) {
this.setAttribute('returnValue', retVal);
this.opened = false;
this.removeAttribute(opened);
},
});
</script>
+18 -5
View File
@@ -8,26 +8,39 @@ it a <select>-like API. This means:
-->
<link rel="import" href="../bower_components/polymer/polymer.html">
<link rel="import" href="../bower_components/paper-dropdown/paper-dropdown.html">
<link rel="import" href="../bower_components/paper-dropdown-menu/paper-dropdown-menu.html">
<link rel="import" href="../bower_components/core-menu/core-menu.html">
<polymer-element name="loot-dropdown-menu" extends="paper-dropdown-menu">
<template>
<shadow></shadow>
<paper-dropdown class="dropdown">
<core-menu valueattr="value">
<content></content>
</core-menu>
</paper-dropdown>
</template>
<script>
Polymer({
value: undefined,
ready: function() {
this.valueattr = 'value';
attached: function() {
this.shadowRoot.lastElementChild.firstElementChild.addEventListener('core-select', this.onItemSelect, false);
},
selectedChanged: function(oldValue, newValue) {
this.value = newValue;
detached: function() {
this.shadowRoot.lastElementChild.firstElementChild.removeEventListener('core-select', this.onItemSelect, false);
},
onItemSelect: function(evt) {
if (evt.detail.isSelected) {
evt.currentTarget.parentElement.parentNode.host.value = evt.currentTarget.selected;
}
},
valueChanged: function(oldValue, newValue) {
this.selected = newValue;
this.shadowRoot.lastElementChild.firstElementChild.selected = newValue;
},
});
</script>
+15 -7
View File
@@ -20,12 +20,15 @@ loot-clear-metadata
<link rel="import" href="../bower_components/core-tooltip/core-tooltip.html">
<link rel="import" href="../bower_components/core-icon/core-icon.html">
<link rel="import" href="../bower_components/core-icons/core-icons.html">
<link rel="import" href="../bower_components/core-menu/core-menu.html">
<link rel="import" href="../bower_components/paper-menu-button/paper-menu-button.html">
<link rel="import" href="../bower_components/paper-item/paper-item.html">
<link rel="import" href="../bower_components/paper-checkbox/paper-checkbox.html">
<link rel="import" href="../bower_components/paper-input/paper-input.html">
<link rel="import" href="../bower_components/paper-tabs/paper-tabs.html">
<link rel="import" href="../bower_components/paper-button/paper-button.html">
<link rel="import" href="../bower_components/paper-dropdown/paper-dropdown.html">
<link rel="import" href="../bower_components/paper-icon-button/paper-icon-button.html">
<link rel="import" href="editable-table.html">
@@ -196,13 +199,18 @@ loot-clear-metadata
<core-tooltip id="hasUserEdits" label="Has User Metadata">
<core-icon icon="account-circle"></core-icon>
</core-tooltip>
<paper-menu-button icon="more-vert" halign="right">
<paper-item>
<paper-checkbox id="showOnlyConflicts" label="Show Only Conflicts" flex></paper-checkbox>
</paper-item>
<paper-item id="editMetadata" icon="create" label="Edit Metadata"></paper-item>
<paper-item id="copyMetadata" icon="content-copy" label="Copy Metadata As Text"></paper-item>
<paper-item id="clearMetadata" icon="delete" label="Clear User Metadata"></paper-item>
<paper-menu-button halign="right">
<paper-icon-button icon="more-vert"></paper-icon-button>
<paper-dropdown class="dropdown">
<core-menu>
<paper-item>
<paper-checkbox id="showOnlyConflicts" label="Show Only Conflicts" flex></paper-checkbox>
</paper-item>
<paper-item id="editMetadata" icon="create" label="Edit Metadata"></paper-item>
<paper-item id="copyMetadata" icon="content-copy" label="Copy Metadata As Text"></paper-item>
<paper-item id="clearMetadata" icon="delete" label="Clear User Metadata"></paper-item>
</core-menu>
</paper-dropdown>
</paper-menu-button>
</core-toolbar>
<content select=".tag.add"></content>
+1 -1
View File
@@ -206,7 +206,7 @@
document.getElementById('settingsDialog').heading = l10n.translate("Settings").fetch();
document.getElementById('defaultGameSelect').previousElementSibling.textContent = l10n.translate("Default Game").fetch();
document.getElementById('defaultGameSelect').children[0].label = l10n.translate("Autodetect").fetch();
document.getElementById('defaultGameSelect').firstElementChild.label = l10n.translate("Autodetect").fetch();
document.getElementById('languageSelect').previousElementSibling.textContent = l10n.translate("Language").fetch();
+21 -14
View File
@@ -1331,8 +1331,15 @@ function initVars() {
console.log('getSettings response: ' + results[2]);
}
if (!result) {
loot.query('getGameData').then(function(result){
var promise;
if (result) {
promise = new Promise(function(resolve, reject){
closeProgressDialog();
document.getElementById('settingsButton').click();
resolve('');
});
} else {
promise = loot.query('getGameData').then(function(result){
try {
var game = JSON.parse(result, jsonToPlugin);
loot.game.folder = game.folder;
@@ -1346,21 +1353,21 @@ function initVars() {
applySavedFilters();
closeProgressDialog();
return '';
}).catch(processCefError);
} else {
document.getElementById('settingsButton').click();
closeProgressDialog();
}
/* So much easier than trying to set up my own C++ message loop to listen
to window messages looking for a focus change. */
if (loot.settings.autoRefresh) {
window.addEventListener('focus', onFocus, false);
}
promise.then(function(){
/* So much easier than trying to set up my own C++ message loop to listen
to window messages looking for a focus change. */
if (loot.settings.autoRefresh) {
window.addEventListener('focus', onFocus, false);
}
if (!loot.settings.lastVersion || loot.settings.lastVersion != loot.version) {
document.getElementById('firstRun').showModal();
}
if (!loot.settings.lastVersion || loot.settings.lastVersion != loot.version) {
document.getElementById('firstRun').showModal();
}
});
}).catch(processCefError);
}).catch(processCefError);
@@ -1451,6 +1458,6 @@ window.addEventListener('polymer-ready', function(e) {
sanitize: true
});
setupEventHandlers();
initVars();
//initVars();
});
}, false);
+17 -12
View File
@@ -5,7 +5,6 @@
<link rel="stylesheet" href="css/style.css" />
<link rel="stylesheet" href="css/overrides.css" />
<script src="bower_components/platform/platform.js"></script>
<link rel="import" href="bower_components/polymer/polymer.html">
<link rel="import" href="html/editable-table.html">
@@ -33,23 +32,29 @@
<link rel="import" href="bower_components/paper-checkbox/paper-checkbox.html">
<link rel="import" href="bower_components/paper-dialog/paper-dialog.html">
<link rel="import" href="bower_components/paper-dialog/paper-dialog-transition.html">
<link rel="import" href="bower_components/paper-dropdown/paper-dropdown.html">
<script src="bower_components/requirejs/require.js"></script>
</head>
<!-- oncontextmenu attribute disables the right-click menu. -->
<body oncontextmenu="return false" unresolved fullbleed vertical layout >
<core-toolbar id="mainToolbar">
<paper-menu-button icon="menu">
<paper-item id="redatePluginsButton" icon="today" label="Redate Plugins"></paper-item>
<paper-item id="wipeUserlistButton" icon="delete" label="Clear All User Metadata"></paper-item>
<paper-item id="copyContentButton" icon="content-copy" label="Copy Content As Text"></paper-item>
<paper-item id="refreshContentButton" icon="cached" label="Refresh Content"></paper-item>
<paper-item separator></paper-item>
<paper-item id="settingsButton" icon="settings" label="Settings"></paper-item>
<paper-item separator></paper-item>
<paper-item id="helpButton" icon="book" label="View Documentation"></paper-item>
<paper-item id="openLogButton" icon="folder" label="Open Debug Log Location"></paper-item>
<paper-item id="aboutButton" icon="help" label="About"></paper-item>
<paper-menu-button>
<paper-icon-button icon="menu"></paper-icon-button>
<paper-dropdown class="dropdown">
<core-menu>
<paper-item id="redatePluginsButton" icon="today" label="Redate Plugins"></paper-item>
<paper-item id="wipeUserlistButton" icon="delete" label="Clear All User Metadata"></paper-item>
<paper-item id="copyContentButton" icon="content-copy" label="Copy Content As Text"></paper-item>
<paper-item id="refreshContentButton" icon="cached" label="Refresh Content"></paper-item>
<paper-item separator></paper-item>
<paper-item id="settingsButton" icon="settings" label="Settings"></paper-item>
<paper-item separator></paper-item>
<paper-item id="helpButton" icon="book" label="View Documentation"></paper-item>
<paper-item id="openLogButton" icon="folder" label="Open Debug Log Location"></paper-item>
<paper-item id="aboutButton" icon="help" label="About"></paper-item>
</core-menu>
</paper-dropdown>
</paper-menu-button>
<loot-dropdown-menu id="gameMenu">
<!-- Generated game <li> elements go here. -->