[Date Prev][Date Next][Thread Prev][Thread Next][Thread Index]

Re: [XaraXtreme-dev] Galleries and focus handling




On 4 May 2006, at 16:46, Luke Hart wrote:

Phil Martin wrote:

*5. Release focus when done*
A modeless control or dialog should release focus when it has done its immediate job - it must not hold focus assuming the user will want to use that window again. Example: When the colour editor is dragged by its title bar, it is given input focus but if it's not going to use that focus it should hand it back to the previous owner.
The control or dialog can decide what its "immediate job" is.
Example: An edit control would retain focus until the user presses Return to indicate that he has finished typing.

Phil,

Do you mean previous owner, or (in the case of XareaLX) the canvas? In the case of editting width and height, first edit the width and then change focus to the height and then hit return to commit it. Following your rules that would take you back to the width edit. I think putting the focus back to the canvas (as we do now) would provide the fewest surprises.


Good point. What I was trying to say was, put the focus back where it came from intelligently, don't just slap it back in the active view because it may not have come from there. In other words, when focus first enters a dialog or one of its children, it should remember where the focus came from so that it can put it back. Could be tricky, you might get away with just putting focus back in the active view but don't say I didn't warn you!

BTW, everyone: I don't think this "canvas" concept exists in Camelot. There's an active view (DocView::GetSelected()) and an active document (Document::GetSelected()) and the document is rendered into the view. Anyone like to venture a definition of "canvas"?

Phil 8-)