Compare commits

...

2 commits

Author SHA1 Message Date
Tom Najdek
ca83e4303c
Windows installer: Add option to remove installdir when previous installation detected (#4564)
Some checks are pending
CI / Build, Upload, Test (push) Waiting to run
2024-08-14 04:53:19 -04:00
Dan Stillman
f5af1898fd Proper fix for getDirection() problems
Hopefully the last fix for my edits to 181afb9 (#4534)

Follow-up to the previous two commits
2024-08-14 04:01:26 -04:00
4 changed files with 25 additions and 16 deletions

Binary file not shown.

View file

@ -606,17 +606,27 @@ FunctionEnd
Function CheckExistingInstall
; If there is a pending file copy from a previous upgrade don't allow
; installing until after the system has rebooted.
IfFileExists "$INSTDIR\${FileMainEXE}.moz-upgrade" +1 +4
MessageBox MB_YESNO|MB_ICONEXCLAMATION "$(WARN_RESTART_REQUIRED_UPGRADE)" IDNO +2
IfFileExists "$INSTDIR\${FileMainEXE}.moz-upgrade" +1 +5
MessageBox MB_YESNOCANCEL|MB_ICONEXCLAMATION "$(WARN_RESTART_REQUIRED_UPGRADE)" IDNO +3 IDCANCEL +2
Reboot
Quit
RMDir /r $INSTDIR
IfFileExists "$INSTDIR\${FileMainEXE}.moz-upgrade" +1 +3
MessageBox MB_OK|MB_ICONEXCLAMATION "Failed to remove the previous installation. Please delete $INSTDIR and try again."
Quit
; If there is a pending file deletion from a previous uninstall don't allow
; installing until after the system has rebooted.
IfFileExists "$INSTDIR\${FileMainEXE}.moz-delete" +1 +4
MessageBox MB_YESNO|MB_ICONEXCLAMATION "$(WARN_RESTART_REQUIRED_UNINSTALL)" IDNO +2
IfFileExists "$INSTDIR\${FileMainEXE}.moz-delete" +1 +5
MessageBox MB_YESNOCANCEL|MB_ICONEXCLAMATION "$(WARN_RESTART_REQUIRED_UNINSTALL)" IDNO +3 IDCANCEL +2
Reboot
Quit
RMDir /r $INSTDIR
IfFileExists "$INSTDIR\${FileMainEXE}.moz-delete" +1 +3
MessageBox MB_OK|MB_ICONEXCLAMATION "Failed to remove the previous installation. Please delete $INSTDIR and try again."
Quit
${If} ${FileExists} "$INSTDIR\${FileMainEXE}"
; Disable the next, cancel, and back buttons

View file

@ -433,13 +433,11 @@ Zotero.ItemFields = new function() {
}
var fieldName = this.getName(fieldName);
if (!fieldName) {
return 'auto';
}
var baseField = this.getBaseIDFromTypeAndField(itemTypeID, fieldName);
if (baseField) {
fieldName = this.getName(baseField);
if (fieldName) {
let baseField = this.getBaseIDFromTypeAndField(itemTypeID, fieldName);
if (baseField) {
fieldName = this.getName(baseField);
}
}
switch (fieldName) {
// Certain fields containing IDs, numbers, and data: always LTR
@ -466,7 +464,8 @@ Zotero.ItemFields = new function() {
case 'extra':
return 'ltr';
// Everything else: guess based on the language if we have one; otherwise auto
// Everything else (including false): guess based on the language if we have one;
// otherwise auto
default:
if (itemLanguage) {
let languageCode = Zotero.Utilities.Item.languageToISO6391(itemLanguage);

View file

@ -46,12 +46,12 @@ describe("Zotero.ItemFields", function () {
});
describe("#getDirection()", function () {
it("should return 'auto' for non-field", function () {
assert.equal(Zotero.ItemFields.getDirection('book', 'creator-0-lastName', ''), 'auto');
});
it("should follow app locale for primary field", function () {
assert.equal(Zotero.ItemFields.getDirection('book', 'dateAdded', ''), Zotero.dir)
});
it("should use item language for non-field", function () {
assert.equal(Zotero.ItemFields.getDirection('book', 'creator-0-lastName', 'ar'), 'rtl');
});
});
})