• R/O
  • HTTP
  • SSH
  • HTTPS

nvdajp: List of commits

NVDA with Japanese branch


RSS
Rev. Time Author
98aa8ab 2006-11-12 20:58:16 mick <>

setup.py now copies lang instead of dictionaries.

7f646b1 2006-11-12 19:51:12 mick <>

Finally the python win32 extentions are no longer needed. Everything has been changed to use comtypes. comtypesClient has been changed so when generating com interface modules, it also compiles them to .pyc files and deletes the .py file (which just wastes space). All the general auto-generated comInterfaces modules have been deleted from svn and all the auto-generated .pyc files have been added. Since this is auto-generated code it figures that its probably best for both svn and NVDA itself to just deal with bytecode. As far as open-source goes, these .py files can be generated with out too much trouble.

33bee4c 2006-11-12 16:42:22 mick <>

Added some more messages. Fixed up a problem in the default config where alignment was set to always in documentDormatting, should be never.

9f907dc 2006-11-12 12:56:06 mick <>

messages.enu and gui.enu added to the lang directory. Changed mostly all speakMessage calls in NVDA to use strings from lang.messages. Changed gui menus and messages and titles etc to use strings from lang.gui. Lang now loads enu by default and then if the chosen language is not enu it merges that specific language in to the already loaded enu. This means things arn't going to badly crash if a language file isn't complete.

74d1604 2006-11-12 09:51:26 mick <>

Step2 of dictionaries to lang. Now dictionaries is called lang. lang no longer needs to load files individually, import lang gets what it needs automatically. the .py files in dictionaries dir are now .enu files in lang directory. A new config section language is added with a value language = enu. You can now place other characterSymbols, roleNames, textSymbols or stateNames files ending in .<your language code> and lang will pick up the right ones.

1702563 2006-11-12 09:35:00 mick <>

Step1 of moving dictionaries to lang. This commit is broken, please wait for next one.

209f820 2006-11-12 07:50:20 mick <>

Added voice menu item to preferences menu. Viavoice and sapi5 list voices properly, though sapi4 with the current com interface we can not get or set voices it seems, so it just reports default as its only voice. Fixed up problem where changes were still being made if ok wasn't pressed on synthesizer and voice dialogs, I assumed for some odd reason that ShowModal returns true for ok and false otherwise, but have to use the wx IDs.

383df09 2006-11-11 22:06:19 mick <>

Re-wrote quite a lot of synthDriverHandler. load is now called setDriver. get/set rate/pitch/volume/voice, getVoiceNames, speakText and cancel are all now added to synthDriverHandler. These fnctions call the real synth functions however the set versions update the current config. Also hpefully fixed up the handling of major crashes a bit better, now when a crash happens, there is an onAbortCommand which is called on the gui mainFrame to make sure it is destroyed along with the rest of NVDA. beeps are also different now so you can tell the difference exactly between an exiting crash and a normal exit.

8eeed0d 2006-11-11 20:28:01 mick <>

A save configuration menu item has been added to the NVDA menu. This saves the current configuration to nvda.ini. Core no longer runs config.save on exit. Save configuration has shortcut key ctrl+s in the NVDA window also.

1ffc0da 2006-11-11 20:04:09 mick <>

Temporarily disabled the refreshing of nodes in the internet explorer virtual buffer since it seems for some reason that the node has no children when rereshing on an ondeactivate. This just means for now when filling in forms etc the text won't change in the virtual buffer.

f1321ac 2006-11-11 17:01:11 mick <>

NVDAThreads.pump now orders the generators by ID before going through them all. This fixes the problem with audio cancels sometimes happening after a speakText (in the wrong order). This means that key echo works fine now also.

b666aec 2006-11-11 15:51:47 mick <>

Added scripts toggleSpeakTypedCharacters (insert+2), toggleSpeakTypedWords (insert+3) and toggleSpeakCommandKeys (insert+4) to the default appModule. A keyboard section as been added to nvda.ini, with speakTypedCharacters, speakTypedWords and speakCommandKeys as boolean values. speakTypedCharacters is for echoing any ascii character as it is typed, speakTypedWords echos a string of ascii characters when it reaches something that isn't an ascii character key, and speakCommandKeys speaks everything else (key combinations, escape, ener etc). For some reason every now and then a key character isn't spoken properly, may be something to do with the cancel happening so close to the key speaking.

c098576 2006-11-11 10:51:21 mick <>

Fixed some more crashes with the mouse movement code. Added an event_mouseMove to NVDAObject_edit, but currently its called old_event_mouseMove because it has some major problems with things like the address bar in windows explorer. Otherwise though, in Notepad, it currently reads as you move by line, word and character quite fine. Interesting idea, but if it causes more problems than there are advantages, it won't be used.

e18ae22 2006-11-10 22:39:47 mick <>

Fixed event_mouseMove in NVDAObject, getLocation returns (left,top,width,height) not (left,top,right,bottom). Thats what happens when you write mouse code but don't have a mouse to test it.

3367013 2006-11-10 21:59:00 mick <>

Fixed bug where insert+q would not have the exit message dialog in focus: we now use self.Raise() in gui.mainFrame.onExitCommand before invoking the messageDialog. I guess this fixes our menu problem as well, but until we get an icon, I wouldn't worry about it. Also completely ripped out the keyboardHandler, MSAAHandler and mouseHandler queues, no longerneeded. Now each of these modules call NVDAThreads.executeFunction with api.executeEvent or api.executeScript etc as a parameter. All seems to still work fine, and no responsivness has been lost, if anything its a tiny bit more responsive. This certainly makes core.py a lot nicer to read. The mouseMove event code has also been redesigned so that the object that it is called on gets x,y,oldX,oldY as parameters so it can work out if the mouse is entering the ojbect or its already in there. Cool things like reading the current line in edit fields when moving the mouse should be able to be possible now.

ee258f8 2006-11-10 18:24:39 mick <>

Added Jamie's gui change for onExit to work with insert+q. However, we run in to the same problem with focus, the yes no dialog comes up, but if focus is not currently on the NVDA window, it doesn't get focus, event a self.SetFocus() on the mainFrame still doesn't do the trick.

f2e9d12 2006-11-10 16:11:13 mick <>

Updated documentation

93e9713 2006-11-10 16:02:47 mick <>

Fixed up synth rate ratios a little. Added script_increaseRate (insert+pageUp) and script_descreaseRate (insert+pageDown) to the default appModule.

1d09b41 2006-11-10 15:31:13 mick <>

Changed config.checkSynth to take a synth name as a parameter, and instead of calling it from config.load, it gets called from synthDriverHandler.load instead.

934cd19 2006-11-10 14:44:41 mick <>

NVDAThreads.executeFunction can not block until the passed function has finished. Event with a time.sleep in a while loop it seems to never let the main thread finish. For now it still executes the function but just doesn't block, and instead of returning the functions result, it only returns the functions generator ID it received from addGenerator.

4355af8 2006-11-09 15:30:18 mick <>

Changed NVDAThreads module so that now there is addGenerator, removeGenerator, generatorExists, executeFunction, getLastGeneratorValue, makeGeneratorFunction. In Summary, now it is possible to either add a generator object to be iteraated until it stops, on the core main loop, or, you can execute a normal function on the core main loop, but executeFunction blocks until it completes and can still return its return value. executeFunction needs to be used in places like when changing the current synthesizer in a GUI event (onChooseSynthesizerCommand).

faf0cfc 2006-11-09 15:05:57 mick <>

Changed synthDriverHandler.load to only replace the current synth with the new one when it is all setup. If there is an exception when loading now, the old one is not destroyed.

c6f5875 2006-11-09 15:01:05 mick <>

Added a preferences menu and in it a synthesizer... menu item which allows you to change the current synthesizer. At the moment it doesn't update nvda.ini, not sure if its appropriate to or not.

3a7eaae 2006-11-09 10:31:27 mick <>

Added a help menu and an about... dialog to NVDA GUI. Added versionInfo.py which holds things like name, version, url etc which both setup.py and gui.__init__.py both use for their metadata.

3c8cbe8 2006-11-08 20:54:39 mick <>

The GUI has been changed a bit. Now it is a perminant window that has a menu bar with an NVDA menu, which ahs an exit menu item. There will be more menus and items comming. There was still trouble with having a single popup menu, gaining focus was a problem. Now with the window, if you close it, it will do an exit command, asks you and if yes completely exits NVDA. Insert+q doesn't work at the moment, gui.mainFrame.Close(True) seems to crash if its called from another thread, and I still really don't get this AddPendingEvent stuff.

0152e8b 2006-11-08 16:07:36 mick <>

VirtualBuffer objects now can completely handle their caret by themselves. They have caret_nextCharacter, caret_previousCharacter (word, line) etc which moves their caret (position in the text buffer) around. VirtaulBuffers also have their own keyMap which maps arrows etc to these new functions. NVDAObject_virtualBuffer now instead of having to have scripts for each key now uses the same coding as NVDAObject_edit (script_moveByCharacter, script_MoveByLine, script_MoveByWord etc) but firstly checks to see if focusInteractionMode is off, and also instead of using keyboardHandler's sendKey, it uses the virtualBuffer's processKey. So in theory now, a virtualBuffer acts exactly like an edit field, just you ned to use its processKey to get key presses to it. All this also now makes sayAll work properly in virtualBuffers.

7103e26 2006-11-08 14:51:17 mick <>

Changed audio functions back to being straight through, rather than using a queue, ended up causing more problems than solving them. keyboardHandler also sends SilenceSpeech through its queue again. SayAll still all works fine though. In the last commit, keyboardHandler was much improved by using getKeyState rather than keeping track of control, shift, alt and win with variables. However, insert is still tracked with a variable since we can not let it pass through to the application. The fixes to keyboardHandler fix problems where certain modifier keys were being thought to be stuck down after an alt+tab etc.

0cffeff 2006-11-08 12:02:49 mick <>

*Added an NVDAThreads module which keeps track of generator objects and has a pump function which can call next() on all of them.
*Core.py now calls NVDAThreads.pump() on each iteration of its main loop
*Audio module now has a synthLoop function which is executed with NVDAThreads, and this function reads commands from a queue and sends them to the current synthesizer. All normal audio functions now simply just add commands to the queue.
*Added a getLastIndex function to all the synthDrivers and also one to the audio module. All the speak functions also take an index keyword argument now.
*Added a sayAll script and sayAllGenerator function to NVDAObject_edit.

In summary: Audio functions can now be called from other threads such as key down/up events in keyboardHandler etc, also synths can speakText but also communicate when that certain peace of text is actually being spoken with an index.
Say all uses the current position as the index that it passes to audio.speakText.
It has a loop which does speakText, and then each time checks the index on the synth, and updates the caret position.

*Updated documentation

a198288 2006-11-04 17:32:37 mick <>

Updating documentation

5d06845 2006-11-04 17:32:01 mick <>

Added top (shift+numpad7), bottom (shift+numpad9), start of line (shift+numpad1) and end of line (shift+numpad3) to NVDAObject_edit. Also added home, end, controlHome and controlEnd to NVDAObject_virtualBuffer.

Show on old repository browser