diff --git a/chrome.manifest b/chrome.manifest
index 70a48c3..935a8a4 100644
--- a/chrome.manifest
+++ b/chrome.manifest
@@ -1,4 +1,4 @@
-content xulmigemo jar:chrome/xulmigemo.jar!/content/xulmigemo/
+content xulmigemo chrome/content/xulmigemo/
overlay chrome://browser/content/browser.xul chrome://xulmigemo/content/browserOverlay.xul
@@ -14,14 +14,14 @@ overlay chrome://browser/content/places/places.xul chrome://xulmigemo/content/pl
overlay chrome://messenger/content/messenger.xul chrome://xulmigemo/content/mailWindowOverlay.xul
overlay chrome://messenger/content/messageWindow.xul chrome://xulmigemo/content/mailWindowOverlay.xul
-locale xulmigemo en-US jar:chrome/xulmigemo.jar!/locale/en-US/xulmigemo/
-locale xulmigemo-platform en-US jar:chrome/xulmigemo.jar!/locale/en-US/xulmigemo/
+locale xulmigemo en-US chrome/locale/en-US/xulmigemo/
+locale xulmigemo-platform en-US chrome/locale/en-US/xulmigemo/
locale xulmigemo-platform en-US jar:platform/Darwin/chrome/xulmigemo.jar!/locale/en-US/xulmigemo/ os=Darwin
-locale xulmigemo ja jar:chrome/xulmigemo.jar!/locale/ja/xulmigemo/
-locale xulmigemo-platform ja jar:chrome/xulmigemo.jar!/locale/ja/xulmigemo/
+locale xulmigemo ja chrome/locale/ja/xulmigemo/
+locale xulmigemo-platform ja chrome/locale/ja/xulmigemo/
locale xulmigemo-platform ja jar:platform/Darwin/chrome/xulmigemo.jar!/locale/ja/xulmigemo/ os=Darwin
-skin xulmigemo classic/1.0 jar:chrome/xulmigemo.jar!/skin/classic/xulmigemo/
+skin xulmigemo classic/1.0 chrome/skin/classic/xulmigemo/
resource xulmigemo-modules modules/
diff --git a/chrome/content/xulmigemo/config/config.xul b/chrome/content/xulmigemo/config/config.xul
index fb78c38..5f62bc8 100644
--- a/chrome/content/xulmigemo/config/config.xul
+++ b/chrome/content/xulmigemo/config/config.xul
@@ -141,12 +141,6 @@
-
-
@@ -171,35 +165,6 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
@@ -582,7 +547,7 @@
&config.combination.description;
-
+
@@ -615,7 +580,6 @@
preference="xulmigemo.mailnews.threadsearch.enabled"/>
-
diff --git a/chrome/content/xulmigemo/highlight/highlight.js b/chrome/content/xulmigemo/highlight/highlight.js
index a5de267..9eb054d 100644
--- a/chrome/content/xulmigemo/highlight/highlight.js
+++ b/chrome/content/xulmigemo/highlight/highlight.js
@@ -52,21 +52,21 @@ var XMigemoHighlight = {
else if ('gSearchWP' in window && 'Highlighting' in gSearchWP) {
eval('gSearchWP.Highlighting.toggleHighlight = '+gSearchWP.Highlighting.toggleHighlight.toSource().replace(
/(\}\)?)$/,
-
+ "\
+ if (XMigemoHighlight.strongHighlight)\
+ XMigemoHighlight.toggleHighlightScreen(gSearchWP.Preferences.highlighted);\
+ $1"
));
}
if (typeof GBL_Listener != 'undefined') { // Googlebar Lite
eval('window.GBL_ToggleHighlighting = '+window.GBL_ToggleHighlighting.toSource().replace(
'var hb = document.getElementById("GBL-TB-Highlighter");',
-
+ "\
+ var hb = document.getElementById(\"GBL-TB-Highlighter\");\
+ if (XMigemoHighlight.strongHighlight)\
+ XMigemoHighlight.toggleHighlightScreen(!hb.checked);\
+ "
));
}
@@ -407,14 +407,14 @@ var XMigemoHighlight = {
}
},
domain : 'xulmigemo',
- preferences : <>>.toString(),
+ preferences : "\
+ xulmigemo.highlight.showScreen\
+ xulmigemo.highlight.hideScreen.restoreButtons\
+ xulmigemo.highlight.animateFound\
+ xulmigemo.highlight.animationStyle\
+ xulmigemo.highlight.animationStyle.0.size\
+ xulmigemo.highlight.animationStyle.1.size\
+ ",
/* Safari style highlight, dark screen
based on http://kuonn.mydns.jp/fx/SafariHighlight.uc.js
diff --git a/chrome/content/xulmigemo/initializer/downloader.js b/chrome/content/xulmigemo/initializer/downloader.js
index 0af0753..83f51c5 100644
--- a/chrome/content/xulmigemo/initializer/downloader.js
+++ b/chrome/content/xulmigemo/initializer/downloader.js
@@ -57,7 +57,7 @@ var XMigemoFileDownloader = {
nsIWebBrowserPersist.PERSIST_FLAGS_BYPASS_CACHE;
Persist.progressListener = this;
- Persist.saveURI(source, null, null, null, null, tempFile);
+ Persist.saveURI(source, null, null, null, null, tempFile, null);
},
onComplete : function()
diff --git a/chrome/content/xulmigemo/marker/marker.js b/chrome/content/xulmigemo/marker/marker.js
index 0cd314a..daed393 100644
--- a/chrome/content/xulmigemo/marker/marker.js
+++ b/chrome/content/xulmigemo/marker/marker.js
@@ -348,15 +348,15 @@ var XMigemoMarker = {
}
},
domain : 'xulmigemo.highlight.foundMarker',
- preferences : <>>.toString(),
+ preferences : "\
+ xulmigemo.highlight.foundMarker.enabled\
+ xulmigemo.highlight.foundMarker.size\
+ xulmigemo.highlight.foundMarker.padding\
+ xulmigemo.highlight.foundMarker.fill\
+ xulmigemo.highlight.foundMarker.stroke\
+ xulmigemo.highlight.foundMarker.fill.active\
+ xulmigemo.highlight.foundMarker.stroke.active\
+ ",
/* rendering position markers */
diff --git a/chrome/content/xulmigemo/places/bookmarksPanelOverlay.js b/chrome/content/xulmigemo/places/bookmarksPanelOverlay.js
index 75e6f9e..2da802a 100644
--- a/chrome/content/xulmigemo/places/bookmarksPanelOverlay.js
+++ b/chrome/content/xulmigemo/places/bookmarksPanelOverlay.js
@@ -13,14 +13,14 @@ var XMigemoBookmarksPanelOverlay = {
eval('tree.applyFilter = '+
tree.applyFilter.toSource().replace(
'this.load([query], options);',
-
+ "\
+ if (XMigemoService.getPref('xulmigemo.places.bookmarksPanel') &&\
+ XMigemoPlaces.isValidInput(query.searchTerms))\
+ XMigemoPlaces.startProgressiveLoad(query, options, this,\
+ XMigemoPlaces.bookmarksInRangeSQL);\
+ else\
+ $&\
+ "
)
);
}
diff --git a/chrome/content/xulmigemo/places/historyPanelOverlay.js b/chrome/content/xulmigemo/places/historyPanelOverlay.js
index d39f523..6c97831 100644
--- a/chrome/content/xulmigemo/places/historyPanelOverlay.js
+++ b/chrome/content/xulmigemo/places/historyPanelOverlay.js
@@ -13,28 +13,28 @@ var XMigemoHistoryPanelOverlay = {
eval('window.searchHistory = '+
window.searchHistory.toSource().replace(
'gHistoryTree.load([query], options);',
-
+ "\
+ if (XMigemoService.getPref('xulmigemo.places.historyPanel') &&\
+ XMigemoPlaces.isValidInput(query.searchTerms))\
+ XMigemoPlaces.startProgressiveLoad(query, options, gHistoryTree,\
+ XMigemoPlaces.historyInRangeSQL);\
+ else\
+ $&\
+ "
)
);
eval('tree.applyFilter = '+
tree.applyFilter.toSource().replace(
'this.load([query], options);',
-
+ "\
+ if (XMigemoService.getPref('xulmigemo.places.historyPanel') &&\
+ XMigemoPlaces.isValidInput(query.searchTerms))\
+ XMigemoPlaces.startProgressiveLoad(query, options, this,\
+ XMigemoPlaces.historyInRangeSQL);\
+ else\
+ $&\
+ "
)
);
}
diff --git a/chrome/content/xulmigemo/places/locationBarOverlay.js b/chrome/content/xulmigemo/places/locationBarOverlay.js
index 9afe411..5308928 100644
--- a/chrome/content/xulmigemo/places/locationBarOverlay.js
+++ b/chrome/content/xulmigemo/places/locationBarOverlay.js
@@ -302,12 +302,12 @@ var XMigemoLocationBarOverlay = {
'xulmigemo.places.locationBar',
'browser.urlbar.autocomplete.enabled'
],
- preferences : .toString(),
+ preferences : "\
+ xulmigemo.places.locationBar\
+ xulmigemo.places.locationBar.delay\
+ xulmigemo.places.locationBar.useThread\
+ browser.urlbar.autocomplete.enabled\
+ ",
handleEvent : function(aEvent)
{
@@ -861,12 +861,12 @@ var XMigemoLocationBarOverlay = {
overrideFunctions : function()
{
- eval('LocationBarHelpers._searchBegin = '+
- LocationBarHelpers._searchBegin.toSource().replace(
- /(\}\))?$/,
- 'if (XMigemoLocationBarOverlay.isMigemoActive) XMigemoLocationBarOverlay.onSearchBegin(); $1'
- )
- );
+ //eval('LocationBarHelpers._searchBegin = '+
+ // LocationBarHelpers._searchBegin.toSource().replace(
+ // /(\}\))?$/,
+ // 'if (XMigemoLocationBarOverlay.isMigemoActive) XMigemoLocationBarOverlay.onSearchBegin(); $1'
+ // )
+ //);
var panel = this.panel;
eval('panel._appendCurrentResult = '+
diff --git a/chrome/content/xulmigemo/places/organizerOverlay.js b/chrome/content/xulmigemo/places/organizerOverlay.js
index 8377ccb..112d8b2 100644
--- a/chrome/content/xulmigemo/places/organizerOverlay.js
+++ b/chrome/content/xulmigemo/places/organizerOverlay.js
@@ -10,14 +10,14 @@ var XMigemoOrganizerOverlay = {
eval('PlacesSearchBox.search = '+
PlacesSearchBox.search.toSource().replace(
'content.load([query], options)',
-
+ "\
+ if (XMigemoService.getPref('xulmigemo.places.organizer') &&\
+ XMigemoPlaces.isValidInput(query.searchTerms))\
+ XMigemoPlaces.startProgressiveLoad(query, options, content,\
+ XMigemoPlaces.historyInRangeSQL);\
+ else\
+ $&\
+ "
)
);
@@ -25,22 +25,22 @@ var XMigemoOrganizerOverlay = {
eval('tree.applyFilter = '+
tree.applyFilter.toSource().replace(
'this.load([query], options);',
-
+ "\
+ if (XMigemoService.getPref('xulmigemo.places.organizer') &&\
+ XMigemoPlaces.isValidInput(query.searchTerms)) {\
+ XMigemoPlaces.startProgressiveLoad(query, options, this,\
+ options.queryType == Ci.nsINavHistoryQueryOptions.QUERY_TYPE_HISTORY ?\
+ XMigemoPlaces.historyInRangeSQL :\
+ XMigemoPlaces.bookmarksInRangeSQL,\
+ XMigemoOrganizerOverlay.saveCommand\
+ );\
+ }\
+ else {\
+ if (XMigemoOrganizerOverlay.saveCommand)\
+ XMigemoOrganizerOverlay.saveCommand.removeAttribute('disabled');\
+ $&\
+ }\
+ "
)
);
},
diff --git a/chrome/content/xulmigemo/tabPreviews.js b/chrome/content/xulmigemo/tabPreviews.js
index 935b3ce..f0459cd 100644
--- a/chrome/content/xulmigemo/tabPreviews.js
+++ b/chrome/content/xulmigemo/tabPreviews.js
@@ -22,14 +22,14 @@ var XMigemoTabPreviews = {
var getter = ctrlTab.__lookupGetter__('tabList');
eval('getter = '+getter.toSource().replace(
'if (this.searchField.value) {',
- .toString()
+ "\
+ if (this.searchField.value &&\
+ XMigemoTabPreviews.enabled &&\
+ migemo.isValidFunctionalInput(this.searchField.value)) {\
+ list = XMigemoTabPreviews.filterListFromInput(list, this.searchField.value);\
+ }\
+ else $&\
+ "
));
ctrlTab.__defineGetter__('tabList', getter);
},
@@ -96,9 +96,9 @@ var XMigemoTabPreviews = {
}
},
domain : 'xulmigemo.ctrlTab',
- preferences : <>>.toString(),
+ preferences : "\
+ xulmigemo.ctrlTab.enabled\
+ ",
dummy : null
};
diff --git a/chrome/content/xulmigemo/ui.js b/chrome/content/xulmigemo/ui.js
index d33b0f4..b781e86 100644
--- a/chrome/content/xulmigemo/ui.js
+++ b/chrome/content/xulmigemo/ui.js
@@ -118,21 +118,6 @@ var XMigemoUI = {
kLABELS_HIDE : 2,
buttonLabelsMode : 1,
- kCLOSEBUTTON_POSITION_LEFTMOST : 0,
- kCLOSEBUTTON_POSITION_RIGHTMOST : 1,
- closeButtonPosition : 0,
- lastCloseButtonPosition : 0,
-
- kFINDBAR_POSITION_BELOW_CONTENT : 0,
- kFINDBAR_POSITION_ABOVE_CONTENT : 1,
- kFINDBAR_POSITION_BELOW_TABS : 2,
- findBarPositionAttrValues : [
- 'belowcontent',
- 'abovecontent',
- 'belowtabbar'
- ],
- findBarPosition : 0,
-
get highlightSelectionOnly()
{
return this.highlightSelectionAvailable &&
@@ -203,30 +188,6 @@ var XMigemoUI = {
},
_findBar : null,
- get findBarItems()
- {
- var node = this.closeButton;
- var items = [];
- do {
- items.push(node);
- node = node.nextSibling;
- }
- while (node);
- return items;
- },
-
- get closeButton()
- {
- if (this._closeButton === void(0)) {
- this._closeButton = document.getElementById('find-closebutton');
- if (!this._closeButton && this.findBar) {
- this._closeButton = this.findBar.getElement('find-closebutton');
- }
- }
- return this._closeButton;
- },
-// _closeButton : null,
-
get label()
{
if (this._label === void(0)) {
@@ -684,40 +645,39 @@ var XMigemoUI = {
domain : 'xulmigemo',
- preferences : .toString(),
- preferencesFindBar : .toString(),
+ preferences : "\
+ xulmigemo.autostart\
+ xulmigemo.autostart.regExpFind\
+ xulmigemo.enableautoexit.inherit\
+ xulmigemo.enableautoexit.nokeyword\
+ xulmigemo.checked_by_default.highlight.always\
+ xulmigemo.checked_by_default.highlight.always.minLength\
+ xulmigemo.checked_by_default.caseSensitive\
+ xulmigemo.findMode.always\
+ xulmigemo.enabletimeout\
+ xulmigemo.enabletimeout.indicator\
+ xulmigemo.timeout\
+ xulmigemo.timeout.stopWhileScrolling\
+ xulmigemo.shortcut.findForward\
+ xulmigemo.shortcut.findBackward\
+ xulmigemo.shortcut.manualStart\
+ xulmigemo.shortcut.manualStart2\
+ xulmigemo.shortcut.manualStartLinksOnly\
+ xulmigemo.shortcut.manualStartLinksOnly2\
+ xulmigemo.shortcut.goDicManager\
+ xulmigemo.shortcut.manualExit\
+ xulmigemo.shortcut.modeCirculation\
+ xulmigemo.disableIME.quickFindFor\
+ xulmigemo.disableIME.normalFindFor\
+ xulmigemo.find_delay\
+ xulmigemo.ignore_find_links_only_behavior\
+ xulmigemo.prefillwithselection\
+ xulmigemo.work_for_any_xml_document\
+ ",
+ preferencesFindBar : "\
+ xulmigemo.appearance.buttonLabelsMode\
+ xulmigemo.appearance.indicator.height\
+ ",
observe : function(aSubject, aTopic, aPrefName)
{
@@ -832,11 +792,6 @@ var XMigemoUI = {
this.updateIndicatorHeight(value);
return;
- case 'xulmigemo.appearance.closeButtonPosition':
- this.closeButtonPosition = value;
- this.findBarInitialShown = false;
- return;
-
case 'xulmigemo.disableIME.quickFindFor':
this.disableIMEOnQuickFindFor = value;
return;
@@ -934,7 +889,6 @@ var XMigemoUI = {
case 'XMigemoFindBarUpdateRequest':
if (this.updatingFindBar) return;
this.updatingFindBar = true;
- this.updateFloatingFindBarAppearance(aEvent);
this.onChangeFindBarSize(aEvent);
window.setTimeout(function(aSelf) {
aSelf.updatingFindBar = false;
@@ -946,19 +900,11 @@ var XMigemoUI = {
case 'SubBrowserAdded':
case 'SubBrowserRemoved':
case 'SubBrowserContentCollapsed':
- if (this.findBarPosition != this.kFINDBAR_POSITION_BELOW_TABS)
- return;
- gFindBar.close();
- window.setTimeout('gFindBar.open();', 100);
return;
case 'SubBrowserFocusMoved':
XMigemoFind.target = this.activeBrowser;
this.findBar.setAttribute(this.kTARGET, this.activeBrowser.id || 'subbrowser');
- if (this.findBarPosition != this.kFINDBAR_POSITION_BELOW_TABS)
- return;
- gFindBar.close();
- window.setTimeout('gFindBar.open();', 100);
return;
default:
@@ -1302,20 +1248,22 @@ var XMigemoUI = {
onXMigemoFindProgress : function(aEvent)
{
+ var detail = aEvent.detail;
+
var statusRes = (
XMigemoFind.isLinksOnly ?
- aEvent.resultFlag & XMigemoFind.FOUND_IN_LINK :
- aEvent.resultFlag & XMigemoFind.FOUND
+ detail.resultFlag & XMigemoFind.FOUND_IN_LINK :
+ detail.resultFlag & XMigemoFind.FOUND
) ?
this.nsITypeAheadFind.FIND_FOUND :
- (aEvent.resultFlag & XMigemoFind.WRAPPED) ?
+ (detail.resultFlag & XMigemoFind.WRAPPED) ?
this.nsITypeAheadFind.FIND_WRAPPED :
this.nsITypeAheadFind.FIND_NOTFOUND;
var found = (statusRes == this.nsITypeAheadFind.FIND_FOUND || statusRes == this.nsITypeAheadFind.FIND_WRAPPED);
gFindBar._enableFindButtons(this.findTerm);
- if (this.lastHighlightedKeyword != aEvent.findTerm) {
- this.lastHighlightedKeyword = aEvent.findTerm;
+ if (this.lastHighlightedKeyword != detail.findTerm) {
+ this.lastHighlightedKeyword = detail.findTerm;
if (found && this.highlightCheck.checked)
gFindBar._setHighlightTimeout();
}
@@ -1326,7 +1274,7 @@ var XMigemoUI = {
if (link) link.setAttribute(this.kFOCUSED, true);
}
- gFindBar._updateStatusUI(statusRes, !(aEvent.findFlag & XMigemoFind.FIND_BACK));
+ gFindBar._updateStatusUI(statusRes, !(detail.findFlag & XMigemoFind.FIND_BACK));
},
lastHighlightedKeyword : null,
@@ -1370,11 +1318,6 @@ var XMigemoUI = {
onChangeFindBarSize : function(aEvent)
{
var shouldUpdatePosition = false;
- if (this.findBarPosition == this.kFINDBAR_POSITION_BELOW_TABS &&
- this.lastTargetBox) {
- this.setFloatingFindBarWidth(this.lastTargetBox.boxObject.width, aEvent);
- shouldUpdatePosition = true;
- }
if (this.buttonLabelsMode == this.kLABELS_AUTO) {
this.showHideLabels(true);
var box = this.caseSensitiveCheck.boxObject;
@@ -1486,7 +1429,6 @@ var XMigemoUI = {
onFindBarOpen : function(aEvent)
{
this.updateItemOrder();
- this.updateFindBarAppearance();
this.updateModeSelectorPosition(true);
if (this.lastWindowWidth != window.innerWidth) {
this.onChangeFindBarSize();
@@ -1507,34 +1449,6 @@ var XMigemoUI = {
{
if (this.findBarInitialShown) return;
this.findBarInitialShown = true;
- if (this.findBarPosition == this.kFINDBAR_POSITION_BELOW_CONTENT &&
- this.closeButtonPosition == this.kCLOSEBUTTON_POSITION_LEFTMOST)
- return;
- window.setTimeout(function(aSelf) {
- var items = aSelf.findBarItems;
- items = items.sort(function(aA, aB) {
- return parseInt(aA.ordinal) - parseInt(aB.ordinal);
- }).filter(function(aItem) {
- return aItem.boxObject.x;
- });
- var wrongOrder = false;
- for (var i = 0, maxi = items.length-1; i < maxi; i++)
- {
- if (items[i].boxObject.x < items[i+1].boxObject.x)
- continue;
- wrongOrder = true;
- break;
- }
- if (!wrongOrder) return;
-
- aSelf.findBar.hidden = true;
- window.setTimeout(function(aSelf) {
- aSelf.findBar.hidden = false;
- window.setTimeout(function(aSelf) {
- aSelf.field.focus();
- }, 0, aSelf);
- }, 0, aSelf);
- }, 0, this);
},
doPrefillWithSelection : function(aShowMinimalUI)
@@ -1839,17 +1753,7 @@ var XMigemoUI = {
updateItemOrder : function(aPosition)
{
- if (this.closeButtonPosition == this.lastCloseButtonPosition) return;
- this.lastCloseButtonPosition = this.closeButtonPosition;
-
- var items = this.findBarItems;
- var closebox = items.shift();
- closebox.ordinal = (this.closeButtonPosition == this.kCLOSEBUTTON_POSITION_RIGHTMOST) ?
- (items.length + 2) * 100 :
- 1 ;
- items.forEach(function(aItem, aIndex) {
- aItem.ordinal = (aIndex + 1) * 100;
- });
+ // deleted
},
updateModeSelectorPosition : function(aForceUpdate)
@@ -1869,105 +1773,18 @@ var XMigemoUI = {
document.documentElement.boxObject.width
- findBarBox.x
- findBarBox.width
- + (
- (this.closeButtonPosition == this.kCLOSEBUTTON_POSITION_RIGHTMOST) ?
- this.closeButton.boxObject.width + this.rightMostOffset :
- 0
- )
)+'px';
- box.style.top = (this.findBarPosition == this.kFINDBAR_POSITION_BELOW_CONTENT) ?
- 'auto' :
- this.findBar.boxObject.y+'px' ;
- box.style.bottom = (this.findBarPosition == this.kFINDBAR_POSITION_BELOW_CONTENT) ?
+ box.style.top = 'auto';
+ box.style.bottom =
(
document.documentElement.boxObject.height
- findBarBox.y
- findBarBox.height
- )+'px' :
- 'auto' ;
+ )+'px';
box.lastBaseState = baseState;
},
rightMostOffset : 5,
- updateFindBarPosition : function()
- {
- this.findBarPosition = XMigemoService.getPref('xulmigemo.appearance.findBarPosition');
- if (this.findBarPosition < 0 || this.findBarPosition >= this.findBarPositionAttrValues.length)
- this.findBarPosition = this.kFINDBAR_POSITION_BELOW_CONTENT;
-
- if ('XMigemoMail' in window && this.findBarPosition == this.kFINDBAR_POSITION_BELOW_TABS)
- this.findBarPosition = this.kFINDBAR_POSITION_ABOVE_CONTENT;
-
- var bar = this.findBar;
- bar.setAttribute(this.kFINDBAR_POSITION, this.findBarPositionAttrValues[this.findBarPosition]);
-
- if (this.findBarPosition != this.kFINDBAR_POSITION_ABOVE_CONTENT) return;
-
- var contentArea = document.getElementById('browser') || // Firefox
- document.getElementById('messagepane'); // Thunderbird
- contentArea.parentNode.insertBefore(bar, contentArea);
- },
-
- updateFindBarAppearance : function()
- {
- if (this.findBarPosition != this.kFINDBAR_POSITION_BELOW_TABS &&
- this.findBarPosition != this.kFINDBAR_POSITION_ABOVE_CONTENT)
- return;
-
- this.cleanUpOnFindBarHidden()
-
- var floating = (this.findBarPosition == this.kFINDBAR_POSITION_BELOW_TABS);
- if (floating) {
- this.updateFloatingFindBarAppearance();
- this.onChangeFindBarSize();
- }
-
- var height = this.findBar.boxObject.height;
-
- var target = this.target;
- var targetBox = this.targetBox;
- if (floating) targetBox.style.paddingTop = height+'px';
- target.contentWindow.scrollBy(0, height);
-
- this.lastTarget = target;
- this.lastTargetBox = targetBox;
- this.contentAreaYOffset = height;
- },
-
- cleanUpOnFindBarHidden : function()
- {
- if (!this.lastTarget) return;
- switch (this.findBarPosition)
- {
- case this.kFINDBAR_POSITION_BELOW_TABS:
- this.lastTargetBox.style.paddingTop = 0;
-
- case this.kFINDBAR_POSITION_ABOVE_CONTENT:
- this.lastTarget.contentWindow.scrollBy(0, -this.contentAreaYOffset);
- this.lastTarget = null;
- this.lastTargetBox = null;
- this.contentAreaYOffset = 0;
- return;
-
- default:
- return;
- }
- },
-
- updateFloatingFindBarAppearance : function(aEvent)
- {
- if (this.findBarPosition != this.kFINDBAR_POSITION_BELOW_TABS) return;
-
- var bar = this.findBar;
- var target = this.targetBox;
-
- bar.style.position = 'fixed';
- bar.style.top = target.boxObject.y+'px';
- bar.style.left = target.boxObject.x+'px';
-
- this.setFloatingFindBarWidth(target.boxObject.width, aEvent);
- },
-
setFloatingFindBarWidth : function(aWidth, aEvent)
{
if (aEvent &&
@@ -2055,10 +1872,10 @@ var XMigemoUI = {
eval('gFindBar._highlightDoc = '+gFindBar._highlightDoc.toSource()
.replace(
/((?:var|let) win = [^;]+;)/,
- .toString()
+ "$1\
+ if (!aWord || aWord != this._lastHighlightString)\
+ XMigemoUI.clearHighlight(win.document);\
+ "
).replace(
'return textFound;',
'XMigemoUI.clearHighlight(win.document); $&'
@@ -2073,18 +1890,18 @@ var XMigemoUI = {
'XMigemoUI.getDocumentBody(doc)'
).replace(
'var retRange = null;',
- .toString()
+ "\
+ if (XMigemoUI.isActive || !XMigemoUI.highlightSelectionOnly) {\
+ if (XMigemoUI.highlightText(aHighlight, aWord, null, searchRange)) {\
+ this._lastHighlightString = aWord;\
+ return true;\
+ }\
+ else {\
+ return false;\
+ }\
+ }\
+ $&\
+ "
)
);
eval('gFindBar.xmigemoOriginalToggleHighlight = '+gFindBar.xmigemoOriginalToggleHighlight.toSource()
@@ -2121,18 +1938,18 @@ var XMigemoUI = {
gFindBar._setHighlightTimeout.toSource()
.replace(
/^(\(?function)([^\(]*)\(\) \{/,
-
+ "$1$2(aAutoChecked) {\
+ if (XMigemoUI.findTerm == XMigemoUI.activeBrowser.contentDocument.documentElement.getAttribute(XMigemoUI.kLAST_HIGHLIGHT))\
+ return;\
+ "
).replace(
/(\w+\.toggleHighlight\(false)(\);)/,
-
+ "\
+ var checked = !XMigemoUI.highlightCheck.disabled && XMigemoUI.highlightCheck.checked;\
+ $1, false, true$2\
+ if (checked)\
+ XMigemoUI.textUtils.setSelectionLook(XMigemoUI.activeBrowser.contentDocument, true);\
+ "
).replace(
/(\b[^\.]+\.toggleHighlight\(true)(\);)/,
'$1, !checked$2'
@@ -2266,7 +2083,6 @@ var XMigemoUI = {
XMigemoUI.findModeSelectorBox.setAttribute('hidden', true);
XMigemoUI.findMigemoBar.setAttribute('collapsed', true);
}
- XMigemoUI.cleanUpOnFindBarHidden();
var event = document.createEvent('Events');
event.initEvent('XMigemoFindBarClose', true, false);
@@ -2399,11 +2215,11 @@ var XMigemoUI = {
var color = this.highlightSelectionAvailable ?
'' :
'color: black; background-color: yellow;' ;
- node.setAttribute('style', color + .toString());
+ node.setAttribute('style', color + "\
+ display: inline;\
+ font-size: inherit;\
+ padding: 0;\
+ ");
node.className = '__mozilla-findbar-search';
this.updateHighlightNode(node);
return node;
@@ -2411,28 +2227,28 @@ var XMigemoUI = {
updateHighlightNode : function(aNode)
{
- aNode.setAttribute('onmousedown', <>>);
+ aNode.setAttribute('onmousedown', "\
+ try {\
+ var xpathResult = this.ownerDocument.evaluate(\
+ 'ancestor::*[contains(\" INPUT input TEXTAREA textarea \", concat(\" \", local-name(), \" \"))]',\
+ this,\
+ null,\
+ XPathResult.FIRST_ORDERED_NODE_TYPE,\
+ null\
+ );\
+ if (!xpathResult.singleNodeValue) return;\
+ }\
+ catch(e) {\
+ // permission denied, then this is in the input area!\
+ }\
+ var range = document.createRange();\
+ range.selectNodeContents(this);\
+ var contents = range.extractContents(true);\
+ range.selectNode(this);\
+ range.deleteContents();\
+ range.insertNode(contents);\
+ range.detach();\
+ ");
XMigemoService.ObserverService.notifyObservers(aNode, 'XMigemo:highlightNodeReaday', null);
},
@@ -2688,7 +2504,6 @@ if (typeof window.gFindBar == 'undefined') {
this.findBar.addEventListener('XMigemoFindBarOpen', this, false);
this.findBar.addEventListener('XMigemoFindBarClose', this, false);
- this.updateFindBarPosition();
this.updateItemOrder();
this.overrideFindBar();
XMigemoService.firstListenPrefChange(this, this.preferencesFindBar);
diff --git a/chrome/locale/en-US/xulmigemo/xulmigemo.dtd b/chrome/locale/en-US/xulmigemo/xulmigemo.dtd
index 32b7189..0be7481 100644
--- a/chrome/locale/en-US/xulmigemo/xulmigemo.dtd
+++ b/chrome/locale/en-US/xulmigemo/xulmigemo.dtd
@@ -46,13 +46,6 @@
-
-
-
-
-
-
-
diff --git a/chrome/locale/ja/xulmigemo/xulmigemo.dtd b/chrome/locale/ja/xulmigemo/xulmigemo.dtd
index 3dfb0f0..c2f7eca 100644
--- a/chrome/locale/ja/xulmigemo/xulmigemo.dtd
+++ b/chrome/locale/ja/xulmigemo/xulmigemo.dtd
@@ -46,13 +46,6 @@
-
-
-
-
-
-
-
@@ -122,7 +115,7 @@
-
+
diff --git a/components/xmXMigemoFind.js b/components/xmXMigemoFind.js
index d777d6d..54ff662 100644
--- a/components/xmXMigemoFind.js
+++ b/components/xmXMigemoFind.js
@@ -450,12 +450,13 @@ mydump("findInDocument ==========================================");
dispatchProgressEvent : function(aFindFlag, aResultFlag)
{
- var event = this.document.createEvent('Events');
- event.initEvent('XMigemoFindProgress', true, false);
- event.resultFlag = aResultFlag;
- event.findFlag = aFindFlag;
- event.findTerm = this.lastKeyword;
- event.foundTerm = aResultFlag & this.FOUND ? this.lastFoundWord : null ;
+ var event = this.document.createEvent('CustomEvent');
+ event.initCustomEvent('XMigemoFindProgress', true, false, {
+ resultFlag : aResultFlag,
+ findFlag : aFindFlag,
+ findTerm : this.lastKeyword,
+ foundTerm : aResultFlag & this.FOUND ? this.lastFoundWord : null
+ });
this.document.dispatchEvent(event);
},
diff --git a/defaults/preferences/xulmigemo.js b/defaults/preferences/xulmigemo.js
index f8446ad..28cee69 100644
--- a/defaults/preferences/xulmigemo.js
+++ b/defaults/preferences/xulmigemo.js
@@ -67,10 +67,6 @@ pref("xulmigemo.enabletimeout.indicator", true);
// 0 = always show labels, 1 = auto, 2 = always hide labels
pref("xulmigemo.appearance.buttonLabelsMode", 1);
pref("xulmigemo.appearance.indicator.height", 5);
-// 0 = leftmost, 1 = rightmost
-pref("xulmigemo.appearance.closeButtonPosition", 0);
-// 0 = below content area, 1 = above content area, 2 = between tab bar and content area
-pref("xulmigemo.appearance.findBarPosition", 0);
pref("xulmigemo.shortcut.manualStart", "/");
pref("xulmigemo.shortcut.manualStart2", "Accel+Shift+F");
diff --git a/install.rdf b/install.rdf
index c0f75a4..26dad9e 100644
--- a/install.rdf
+++ b/install.rdf
@@ -1,57 +1,58 @@
-
-
-
- plus7, SHIMODA Hiroshi
- alice0775 0.13.6mod4
- Dear Periwinkle
-
-
-
-
-
-
-
-
- plus7, SHIMODA Hiroshi
- alice0775
- Dear Periwinkle
-
-
-
-
- plus7, SHIMODA Hiroshi
- alice0775
- Dear Periwinkle
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+ plus7, SHIMODA Hiroshi
+ Kyosuke Takayama
+ alice0775
+ Dear Periwinkle
+
+
+ http://piro.sakura.ne.jp/xul/update.rdf
+ MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDLI43lgUhWE0E7bfiuTrQMKIP53KM3w71VEPc9FxE7YS3Hpr85dC/GgEUDPd6xD7UP7ckzEusN49LCAKoipepxgyAWzQjZ3CzvkD7PWsZFTi7lpj9ytYDysoFwHs0L96i5oiVopNj1NQM2AC0Y5Lr0b6lz2L5ece0/z6monpZXPQIDAQAB
+
+
+
+
+ plus7, SHIMODA Hiroshi
+ alice0775
+ Dear Periwinkle
+
+
+
+
+ plus7, SHIMODA Hiroshi
+ alice0775
+ Dear Periwinkle
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/modules/mail.jsm b/modules/mail.jsm
index 41754f8..c589c74 100644
--- a/modules/mail.jsm
+++ b/modules/mail.jsm
@@ -64,13 +64,13 @@ var XMigemoMail = {
}
regexp = new RegExp(regexp, 'ig');
- let sql = .toString().replace('%COLUMNS%', columns.join(' || '));
+ let sql = "\
+ SELECT GROUP_CONCAT(%COLUMNS%, ?1)\
+ FROM messagesText_content c\
+ LEFT JOIN messages m ON m.id = c.docid\
+ LEFT JOIN folderLocations f ON f.id = m.folderID\
+ WHERE f.folderURI = ?2\
+ ".replace('%COLUMNS%', columns.join(' || '));
let statement = this.DBConnection.createStatement(sql);
statement.bindStringParameter(0, '\n');
statement.bindStringParameter(1, aFolder.folderURL);
diff --git a/modules/places.jsm b/modules/places.jsm
index 98cfddc..5913dba 100644
--- a/modules/places.jsm
+++ b/modules/places.jsm
@@ -236,26 +236,26 @@ var XMigemoPlaces = {
return sql;
},
- placesSourceInRangeSQLBase : 0 AND p.hidden <> 1
- %EXCLUDE_JAVASCRIPT%
- %ONLY_TYPED%
- %ONLY_TAGGED%
- %ONLY_OPENPAGE%
- ORDER BY frecency DESC
- LIMIT %PLACE_FOR_START%,%PLACE_FOR_RANGE%)
- ]]>.toString(),
+ placesSourceInRangeSQLBase : "\
+ SELECT GROUP_CONCAT(%FINDKEY_CONTENTS%, %PLACE_FOR_LINEBREAK%)\
+ FROM (SELECT p.id id,\
+ p.title title,\
+ p.url uri,\
+ p.frecency frecency,\
+ p.typed typed,\
+ %BOOKMARK_TITLE%,\
+ %TAGS%\
+ FROM moz_places p\
+ LEFT OUTER JOIN moz_favicons f ON f.id = p.favicon_id\
+ %SOURCE_FILTER%\
+ WHERE p.frecency <> 0 AND p.hidden <> 1\
+ %EXCLUDE_JAVASCRIPT%\
+ %ONLY_TYPED%\
+ %ONLY_TAGGED%\
+ %ONLY_OPENPAGE%\
+ ORDER BY frecency DESC\
+ LIMIT %PLACE_FOR_START%,%PLACE_FOR_RANGE%)\
+ ",
getPlacesItemsSQL : function(aFindFlag)
{
@@ -284,31 +284,31 @@ var XMigemoPlaces = {
return sql;
},
- placesItemsSQLBase : 0 AND p.hidden <> 1
- %EXCLUDE_JAVASCRIPT%
- %ONLY_TYPED%
- %ONLY_TAGGED%
- %ONLY_OPENPAGE%
- ORDER BY frecency DESC
- %SOURCES_LIMIT_PART%)
- GROUP BY uri)
- WHERE %TERMS_RULES%
- ]]>.toString(),
+ placesItemsSQLBase : "\
+ SELECT title, uri, favicon, bookmark, tags, findkey %OPEN_COUNT_FINAL%\
+ FROM (SELECT *,\
+ GROUP_CONCAT(%FINDKEY_CONTENTS%, ' ') findkey\
+ FROM (SELECT p.title title,\
+ p.url uri,\
+ f.url favicon,\
+ p.frecency frecency,\
+ p.typed typed,\
+ %BOOKMARK_TITLE%,\
+ %TAGS%\
+ %OPEN_COUNT%\
+ FROM moz_places p\
+ LEFT OUTER JOIN moz_favicons f ON f.id = p.favicon_id\
+ %SOURCE_FILTER%\
+ WHERE p.frecency <> 0 AND p.hidden <> 1\
+ %EXCLUDE_JAVASCRIPT%\
+ %ONLY_TYPED%\
+ %ONLY_TAGGED%\
+ %ONLY_OPENPAGE%\
+ ORDER BY frecency DESC\
+ %SOURCES_LIMIT_PART%)\
+ GROUP BY uri)\
+ WHERE %TERMS_RULES%\
+ ",
/* ͗̌ */
@@ -337,35 +337,35 @@ var XMigemoPlaces = {
return sql;
},
- inputHistorySourceInRangeSQLBase : 0
- ) AS i
- LEFT OUTER JOIN moz_places p ON i.place_id = p.id
- %SOURCE_FILTER%
- WHERE 1 %EXCLUDE_JAVASCRIPT%
- %ONLY_TYPED%
- %ONLY_TAGGED%
- %ONLY_OPENPAGE%
- ORDER BY rank DESC, frecency DESC
- LIMIT %PLACE_FOR_START%,%PLACE_FOR_RANGE%)
- ]]>.toString(),
+ inputHistorySourceInRangeSQLBase : "\
+ SELECT GROUP_CONCAT(%FINDKEY_CONTENTS%, %PLACE_FOR_LINEBREAK%)\
+ FROM (SELECT p.title title,\
+ p.url uri,\
+ p.frecency frecency,\
+ %BOOKMARK_TITLE%,\
+ %TAGS%,\
+ i.rank rank\
+ FROM (SELECT ROUND(\
+ MAX(\
+ (\
+ (i.input = ?1) + (SUBSTR(i.input, 1, LENGTH(?1)) = ?1)\
+ ) * i.use_count\
+ ),\
+ 1\
+ ) AS rank,\
+ place_id\
+ FROM moz_inputhistory i\
+ GROUP BY i.place_id HAVING rank > 0\
+ ) AS i\
+ LEFT OUTER JOIN moz_places p ON i.place_id = p.id\
+ %SOURCE_FILTER%\
+ WHERE 1 %EXCLUDE_JAVASCRIPT%\
+ %ONLY_TYPED%\
+ %ONLY_TAGGED%\
+ %ONLY_OPENPAGE%\
+ ORDER BY rank DESC, frecency DESC\
+ LIMIT %PLACE_FOR_START%,%PLACE_FOR_RANGE%)\
+ ",
getInputHistoryItemsSQL : function(aFindFlag)
{
@@ -392,77 +392,77 @@ var XMigemoPlaces = {
return sql;
},
- inputHistoryItemsSQLBase : 0
- ) AS i
- LEFT OUTER JOIN moz_places p ON i.place_id = p.id
- %SOURCE_FILTER%
- LEFT OUTER JOIN moz_favicons f ON f.id = p.favicon_id
- WHERE 1 %EXCLUDE_JAVASCRIPT%
- %ONLY_TYPED%
- %ONLY_TAGGED%
- %ONLY_OPENPAGE%
- %SOURCES_LIMIT_PART%)
- GROUP BY uri
- ORDER BY rank DESC, frecency DESC)
- WHERE %TERMS_RULES%
- ]]>.toString(),
+ inputHistoryItemsSQLBase : "\
+ SELECT title, uri, favicon, bookmark, tags, findkey\
+ FROM (SELECT *,\
+ GROUP_CONCAT(%FINDKEY_CONTENTS%, ' ') findkey\
+ FROM (SELECT p.title title,\
+ p.url uri,\
+ f.url favicon,\
+ p.frecency frecency,\
+ %BOOKMARK_TITLE%,\
+ %TAGS%,\
+ i.rank rank\
+ FROM (SELECT ROUND(\
+ MAX(\
+ (\
+ (i.input = ?1) + (SUBSTR(i.input, 1, LENGTH(?1)) = ?1)\
+ ) * i.use_count\
+ ),\
+ 1\
+ ) AS rank,\
+ place_id\
+ FROM moz_inputhistory i\
+ GROUP BY i.place_id HAVING rank > 0\
+ ) AS i\
+ LEFT OUTER JOIN moz_places p ON i.place_id = p.id\
+ %SOURCE_FILTER%\
+ LEFT OUTER JOIN moz_favicons f ON f.id = p.favicon_id\
+ WHERE 1 %EXCLUDE_JAVASCRIPT%\
+ %ONLY_TYPED%\
+ %ONLY_TAGGED%\
+ %ONLY_OPENPAGE%\
+ %SOURCES_LIMIT_PART%)\
+ GROUP BY uri\
+ ORDER BY rank DESC, frecency DESC)\
+ WHERE %TERMS_RULES%\
+ ",
/* X}[gL[[ȟ */
- keywordSearchSourceInRangeSQL : .toString(),
+ keywordSearchSourceInRangeSQL : "\
+ SELECT GROUP_CONCAT(search_url, %PLACE_FOR_LINEBREAK%)\
+ FROM (SELECT REPLACE(s.url, '%s', ?2) search_url\
+ FROM moz_keywords k\
+ JOIN moz_bookmarks b ON b.keyword_id = k.id\
+ JOIN moz_places s ON s.id = b.fk\
+ LEFT OUTER JOIN moz_places h ON h.url = search_url\
+ WHERE LOWER(k.keyword) = LOWER(?1)\
+ ORDER BY h.frecency DESC\
+ LIMIT %PLACE_FOR_START%,%PLACE_FOR_RANGE%)\
+ ",
- keywordSearchItemInRangeSQL : .toString(),
+ keywordSearchItemInRangeSQL : "\
+ SELECT h.title,\
+ REPLACE(s.url, '%s', ?2) search_url,\
+ IFNULL(f.url,\
+ (SELECT f.url\
+ FROM moz_places r\
+ JOIN moz_favicons f ON f.id = r.favicon_id\
+ WHERE r.rev_host = s.rev_host\
+ ORDER BY r.frecency DESC LIMIT 1)),\
+ b.title,\
+ NULL,\
+ REPLACE(s.url, '%s', ?2) search_source\
+ FROM moz_keywords k\
+ JOIN moz_bookmarks b ON b.keyword_id = k.id\
+ JOIN moz_places s ON s.id = b.fk\
+ LEFT OUTER JOIN moz_places h ON h.url = search_url\
+ LEFT OUTER JOIN moz_favicons f ON f.id = h.favicon_id\
+ WHERE LOWER(k.keyword) = LOWER(?1)\
+ ORDER BY h.frecency DESC\
+ %SOURCES_LIMIT_PART%\
+ ",
/* Places OrganizerƃTCho[̌ */
@@ -476,17 +476,17 @@ var XMigemoPlaces = {
return this._historyInRangeSQL;
},
- historyInRangeSQLBase : 1
- LIMIT %PLACE_FOR_START%,%PLACE_FOR_RANGE%)
- ]]>.toString(),
+ historyInRangeSQLBase : "\
+ SELECT GROUP_CONCAT(%FINDKEY_CONTENTS%, %PLACE_FOR_LINEBREAK%)\
+ FROM (SELECT p.id id,\
+ p.title title,\
+ p.url uri,\
+ p.title bookmark,\
+ %TAGS%\
+ FROM moz_places p\
+ WHERE p.hidden <> 1\
+ LIMIT %PLACE_FOR_START%,%PLACE_FOR_RANGE%)\
+ ",
get bookmarksInRangeSQL()
{
@@ -498,18 +498,18 @@ var XMigemoPlaces = {
return this._bookmarksInRangeSQL;
},
- bookmarksInRangeSQLBase : .toString(),
+ bookmarksInRangeSQLBase : "\
+ SELECT GROUP_CONCAT(%FINDKEY_CONTENTS%, %PLACE_FOR_LINEBREAK%)\
+ FROM (SELECT b.id id,\
+ b.title title,\
+ p.url uri,\
+ b.title bookmark,\
+ %TAGS%\
+ FROM moz_bookmarks b\
+ LEFT OUTER JOIN moz_places p ON b.fk = p.id\
+ WHERE b.type = 1 AND b.title IS NOT NULL\
+ LIMIT %PLACE_FOR_START%,%PLACE_FOR_RANGE%)\
+ ",
insertFilter : function(aSQL, aFindFlag)
{
@@ -568,40 +568,40 @@ var XMigemoPlaces = {
);
},
- parentFolderSQLFragment : .toString(),
+ parentFolderSQLFragment : "\
+ SELECT b.parent\
+ FROM moz_bookmarks b\
+ JOIN moz_bookmarks t\
+ ON t.id = b.parent\
+ AND t.parent != (SELECT folder_id\
+ FROM moz_bookmarks_roots\
+ WHERE root_name = 'tags')\
+ WHERE b.type = 1 AND b.fk = p.id\
+ ORDER BY b.lastModified DESC LIMIT 1\
+ ",
- bookmarkTitleSQLFragment : .toString(),
+ bookmarkTitleSQLFragment : "\
+ (SELECT b.title\
+ FROM moz_bookmarks b\
+ JOIN moz_bookmarks t\
+ ON t.id = b.parent\
+ AND t.parent != (SELECT folder_id\
+ FROM moz_bookmarks_roots\
+ WHERE root_name = 'tags')\
+ WHERE b.type = 1 AND b.fk = p.id\
+ ORDER BY b.lastModified DESC LIMIT 1) bookmark\
+ ",
- tagsSQLFragment : .toString(),
+ tagsSQLFragment : "\
+ (SELECT GROUP_CONCAT(t.title, ',')\
+ FROM moz_bookmarks b\
+ JOIN moz_bookmarks t\
+ ON t.id = b.parent\
+ AND t.parent = (SELECT folder_id\
+ FROM moz_bookmarks_roots\
+ WHERE root_name = 'tags')\
+ WHERE b.type = 1 AND b.fk = p.id) tags\
+ ",
openCountColumnSQLFragment : ', o.open_count open_count',
openCountFinalColumnSQLFragment : ', open_count',
@@ -901,23 +901,23 @@ var XMigemoPlaces = {
'xulmigemo.autostart.regExpFind',
'browser.urlbar'
],
- preferences : .toString(),
+ preferences : "\
+ xulmigemo.places.enableBoundaryFind\
+ xulmigemo.places.ignoreURI\
+ xulmigemo.places.chunk\
+ xulmigemo.places.minLength\
+ xulmigemo.autostart.regExpFind\
+ browser.urlbar.filter.javascript\
+ browser.urlbar.restrict.history\
+ browser.urlbar.restrict.bookmark\
+ browser.urlbar.restrict.tag\
+ browser.urlbar.restrict.typed\
+ browser.urlbar.restrict.openpage\
+ browser.urlbar.match.title\
+ browser.urlbar.match.url\
+ browser.urlbar.matchBehavior\
+ browser.urlbar.default.behavior\
+ ",
init : function()
{