Difference between revisions of "Specification Common find toolbar"
((checkpoint save)) |
|||
(25 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
== (name changed in ''''Find'''' toolbar) == | == (name changed in ''''Find'''' toolbar) == | ||
− | {{Specification_Header|[mailto:Christoph.Lukasiak@ | + | {{Specification_Header|[mailto:Christoph.Lukasiak@Oracle.com?subject:OOoWiki Christoph Lukasiak] ([http://wiki.services.openoffice.org/wiki/User:Clu Clu])|18. Aug 2010|Standard}} |
== Abstract == | == Abstract == | ||
Line 18: | Line 18: | ||
|- | |- | ||
| '''[http://wiki.services.openoffice.org/wiki/Specification#Before_Writing_a_Software_Specification_--_What_Else_Do_I_have_to_Do.3F Prerequisites]''' | | '''[http://wiki.services.openoffice.org/wiki/Specification#Before_Writing_a_Software_Specification_--_What_Else_Do_I_have_to_Do.3F Prerequisites]''' | ||
− | | | + | | done |
− | | | + | | |
|- | |- | ||
| '''Product Requirement, RFE, Issue ID''' (required) | | '''Product Requirement, RFE, Issue ID''' (required) | ||
Line 26: | Line 26: | ||
|- | |- | ||
| '''Accessibility Check''' (required) | | '''Accessibility Check''' (required) | ||
− | | | + | | done |
| See accessibility section for check list | | See accessibility section for check list | ||
|- | |- | ||
| '''[[Test case specification]]''' (required) | | '''[[Test case specification]]''' (required) | ||
− | | | + | | available |
− | | & | + | | [http://quaste.services.openoffice.org/index.php?option=com_tcs&task=tcs_show&tcsid=3114 TCS Find Toolbar] |
|- | |- | ||
| IDL Specification | | IDL Specification | ||
− | | | + | | does not apply |
− | | | + | | |
|- | |- | ||
| [http://wiki.services.openoffice.org/wiki/The_Three_Golden_Rules_for_Writing_OpenOffice.org_Specifications '''Software Specification Rules'''] | | [http://wiki.services.openoffice.org/wiki/The_Three_Golden_Rules_for_Writing_OpenOffice.org_Specifications '''Software Specification Rules'''] | ||
− | | | + | | done |
− | | | + | | |
|- | |- | ||
| Other, e.g. references to related specs, Product Concept Document | | Other, e.g. references to related specs, Product Concept Document | ||
− | | | + | | available |
| specification: [http://wiki.services.openoffice.org/wiki/Specification_search_toolbar search toolbar] | | specification: [http://wiki.services.openoffice.org/wiki/Specification_search_toolbar search toolbar] | ||
|- | |- | ||
| Release Roadmap OOo 3.3 | | Release Roadmap OOo 3.3 | ||
− | | | + | | available |
| http://wiki.services.openoffice.org/wiki/OOoRelease33 | | http://wiki.services.openoffice.org/wiki/OOoRelease33 | ||
|} | |} | ||
Line 73: | Line 73: | ||
| Stefan Baltzer | | Stefan Baltzer | ||
| [mailto:sba@openoffice.org?subject:OOoWiki sba@openoffice.org] | | [mailto:sba@openoffice.org?subject:OOoWiki sba@openoffice.org] | ||
+ | |- | ||
+ | | | ||
+ | | Jörg Skottke | ||
+ | | [mailto:Joerg.Skottke@sun.com?subject:OOoWiki Joerg.Skottke@Oracle.com] | ||
|- | |- | ||
| '''Documentation''' | | '''Documentation''' | ||
| Uwe Fischer | | Uwe Fischer | ||
− | | [mailto:Uwe.Fischer@sun.com?subject:OOoWiki Uwe.Fischer@ | + | | [mailto:Uwe.Fischer@sun.com?subject:OOoWiki Uwe.Fischer@Oracle.com] |
|- | |- | ||
| '''Icon Design''' | | '''Icon Design''' | ||
| Stella Schulze | | Stella Schulze | ||
− | | [mailto:Stella.Schulze@sun.com?subject:OOoWiki Stella.Schulze@ | + | | [mailto:Stella.Schulze@sun.com?subject:OOoWiki Stella.Schulze@Oracle.com] |
|- | |- | ||
| '''User Experience''' | | '''User Experience''' | ||
| Christoph Lukasiak | | Christoph Lukasiak | ||
− | | [mailto:Christoph.Lukasiak@Sun.com?subject:OOoWiki Christoph.Lukasiak@ | + | | [mailto:Christoph.Lukasiak@Sun.com?subject:OOoWiki Christoph.Lukasiak@Oracle.com] |
|- | |- | ||
| | | | ||
Line 114: | Line 118: | ||
<br> | <br> | ||
− | === | + | === Customize Menu / Context Menu === |
+ | |||
+ | |||
{| cellspacing="0" cellpadding="4" border="2" style="border: 1px solid rgb(204, 204, 204); margin: 1em 1em 1em 0pt; border-collapse: collapse; width: 100%;" | {| cellspacing="0" cellpadding="4" border="2" style="border: 1px solid rgb(204, 204, 204); margin: 1em 1em 1em 0pt; border-collapse: collapse; width: 100%;" | ||
Line 309: | Line 315: | ||
The Find toolbar should be migrateable (adaptable) for all OOo applications (Writer, Calc, Draw/Impress) over uno api.<br> <br> | The Find toolbar should be migrateable (adaptable) for all OOo applications (Writer, Calc, Draw/Impress) over uno api.<br> <br> | ||
− | [[Image:AllApps4.png]] | + | [[Image:AllApps4.png|800px]] |
== Configuration == | == Configuration == | ||
Line 370: | Line 376: | ||
== File Format == | == File Format == | ||
− | + | does not apply | |
− | + | ||
− | + | ||
== Future Tasks == | == Future Tasks == | ||
− | - '''Inline messaging''' / info text inside textbox (messages like: nothing found etc.) .. info text in message boxes or dialogs look old fashioned, disturb the sight on the document, must be closed manually and bugs a lot of user; inline messages get more and more popular and give the same info in a more appropriate way. | + | - '''Inline messaging''' / non modal info text inside textbox/infobox/overlay/statusbar etc. (messages like: nothing found etc.) .. info text in message boxes or dialogs look old fashioned, disturb the sight on the document, must be closed manually and bugs a lot of user; inline messages get more and more popular and give the same info in a more appropriate way. Also the background color of the search text can switch to a warning color if f.e. nothing is found (demands 'searching by first letter'). |
+ | |||
+ | => currently there does not exist a framework to support such a functionality (is in focus of renaissance project) .. it make no sense to create an island solution just for the find toolbar. | ||
+ | |||
+ | => but the additional color info make sense at this point and will probably be integrated soon.<br> - '''Searching by inserting first letter''' (start searching by first char) .. from the first letter on the engine starts to search and to mark the corresponding words; by inserting the first letter the search starts from the cursor position in the writer text on and mark the first search result. after inserting the second letter the search starts again from the cursor position and mark the first search result etc..by deleting letters also the search starts from the cursor position on. | ||
+ | |||
+ | => after the possibility to highlight is added this behavior can further be improved in this way: from the first letter on every all search results are highlighted (not marked or selected) with every further letter the 'highlighted words collection' get less and less and came closer and closer to the searched word; it increase the speed of finding phrases and the overview.<br> - '''Expanded Autocompletion''' use also the pool of the whole text and not only the history to autocomplete.<br> - '''Highlighting''' (jumping/selecting trough marked items) .. at the moment we select the found phrases, which has the handicap that you cannot travel trough the selected words without loosing the selection and therewith the overview; so it can make sense to mark/highlight the found phrases instead, then travel between the highlighted phrases and edit single contents separately without loosing the search resultset.<br>- '''Enlargable toolbar''', manual or if text get bigger than 'find textbox'.. in different countries and the corresponding languages the lenght of wording can differ a lot; not to make the toolbars (textfields) too long and ugly on one hand and not unnecessary limit them to an unconfortable lenght for some languages it would be nice if they could have a minimum length and expand if the words get longer.<br> - '''Position Findbar in Menuebar''' to not waste space in taskbars and have it always available in an unused area.<br> | ||
+ | |||
+ | - '''Average textbox size''' .. as the operating system and/or the local character size can differ, the textbox has to fit to this. the textbox should contain approx. 15 average width letters (a) but not grown more than max. 200px to not make it ugly. | ||
== Ideas == | == Ideas == | ||
Line 386: | Line 398: | ||
None. | None. | ||
− | [[Category:Features]] | + | [[Category:Features]] [[Category:Specification]] |
Latest revision as of 15:19, 25 November 2010
(name changed in 'Find' toolbar)
Specification Status | |
Author | Christoph Lukasiak (Clu) |
Last Change | 18. Aug 2010 |
Status (Help) | Standard |
Abstract
The 'Find' toolbar should be an addition to the 'Find & Replace' dialog, which provides a fast and easy text search without covering the search text.
Contents
References
Reference Document | Check | Location (URL) |
Prerequisites | done | |
Product Requirement, RFE, Issue ID (required) | available | i107176 |
Accessibility Check (required) | done | See accessibility section for check list |
Test case specification (required) | available | TCS Find Toolbar |
IDL Specification | does not apply | |
Software Specification Rules | done | |
Other, e.g. references to related specs, Product Concept Document | available | specification: search toolbar |
Release Roadmap OOo 3.3 | available | http://wiki.services.openoffice.org/wiki/OOoRelease33 |
Contacts
Role | Name | E-Mail Address |
Developer | Carsten Driesner | cd@openoffice.org |
shizhoubo(robertzhou) | robertzhou@openoffice.org | |
Yan Wu | wuyan.ooorg@gmail.com | |
Quality Assurance | Stefan Baltzer | sba@openoffice.org |
Jörg Skottke | Joerg.Skottke@Oracle.com | |
Documentation | Uwe Fischer | Uwe.Fischer@Oracle.com |
Icon Design | Stella Schulze | Stella.Schulze@Oracle.com |
User Experience | Christoph Lukasiak | Christoph.Lukasiak@Oracle.com |
Jaron Kuppers | jaronbaron@gmail.com |
Acronyms and Abbreviations
Acronym / Abbreviation | Definition |
<WYSIWYG> | <What You See Is What You Get> |
Motivation
From the 'usage tracking' data of the 'find & replace' dialog we have learned that 76% of oo user just want to search inside the text, so we have to propose a fast & easy way to do so. Also it was often mentioned that the search & replace dialog covers the search area in an annoying way, so we must found an other solution for it. The other search settings like 'match case' etc. are used less than 0.1%, so we decided to leave them out in this toolbar, but like the replacing function they will still stay available in the find & replace dialog.
Detailed Specification
The 'Find' toolbar is a standard toolbar containing a text search field, a next and previous button. It is located right next to the 'application standard' toolbar, is active by default and behave like every other toolbar (d&d, docking etc.).
By clicking into the search field, the info text disappear and the search text can be inputted. After entering the search text, the search can be started by hitting the return key on keyboard (+ shift for backwards search) or pushing the 'next/previous' button. If anything is found, the first result is selected and can be edited or the next button can be clicked (if selected) for searching for the next result. If nothing is found or it is searched to the end of the document, you get an info dialog similar to the behavior of the 'find & replace' dialog, like in all other cases, even if it works independent.
- Autocomplete involves the program predicting a word or phrase that the user wants to type in without the user actually typing it in completely. This feature is effective when it is easy to predict the word being typed based on those already typed, such as when there are a limited number of possible or commonly used words, or when editing text written in a highly-structured, easy-to-predict language.
- History remember former search strings (string listbox) .. often you search for the same words several times, so it can make sense to remember them (especially it they are long and complicated) and to make them available over a listbox in example to save the input of same phrases again and again. The history is deleted after closing the document (for privacy reasons) and only available in the document it was inputted.
Customize Menu / Context Menu
Property | State | Comment |
Toolbar Name: | Find | |
<Other Language (Optional)> | | |
Has Closer: | no | |
Style: | Icon/Icon | |
Initial State: | docked | |
Initial Docking Position: | next to toolbar 'Standard' | |
Initial Floating Position: | no | |
List in "View/Toolbars": | application dependent (see configuration) | |
Is Context Sensitive: | no | |
'Find' Textfield
Property | State | Comment |
Enabled: | always enabled | |
Disabled: | never disabled | |
Read Only: | no | |
Initial String: | Find | grey |
String Preselected: | no | |
Caret Position: | <0> | |
Characters Not Allowed | all characters allowed (including special characters) | |
Tip Help: | Find Text | |
TextField Label: | no | |
Shortcut: | Ctrl + Alt + F | |
Other: | <Specify Other Properties Here> | |
'Next' Button
'Previous' Button
Accessibility
Accessibility is the responsibility of the I-Team, beginning with UX, DEV and QA, to ensure that the following requirements are fulfilled:
- Is the feature fully keyboard accessible?-> yes
- Have I specified visual alternatives for the case that the specified feature includes audio as output? -> feature does not contain audio output
- Are text alternatives for all icons and graphics available? -> yes
- Don't provide important information in colors alone(Ex: marking important information hard coded in red) -> considered
- Does the specified feature respect system settings for font, size, and color for all windows and user interface elements? -> yes
- Have I ensured that flash rates do not exceed 2 hertz for blinking text, objects, or other elements? In any case, try to avoid flashing UI elements -> considered
- Ensure that assistive technology (AT) (like ZoomText or Orca) is able to read everything. => dev & qa topic
QUESTIONS?
If you need help while designing, implementing or testing the accessibility of the UI, ask/visit:
- The accessibility check list at the OpenOffice.org Wiki
- accessibility@ui.openoffice.org (The accessibility mailing lists, preferred)
- For specific implementation details, architecture: mt@openoffice.org (Malte Timmermann)
- For specific UX and testing questions: es@openoffice.org (Éric Savary)
Migration
The Find toolbar should be migrateable (adaptable) for all OOo applications (Writer, Calc, Draw/Impress) over uno api.
Configuration
The find toolbar is positioned right next to the standard toolbar in every application, but only in Writer and Calc it is enabled by default (makes rather less sense in Draw,Impress and Database because of less text search needs).
Also it should be available by default in HTML Document, XML Form Document and Master Document (because of the similarity to Writer) and also in Labels and Business cards where the Writer is used as basis, but not in Formula, Chart and Basic IDE.
Application | Active by default | Implemented |
Text Document | yes | yes |
Spreadsheet | yes | yes |
Presentation | no | yes |
Drawing | no | yes |
Database | no | yes |
HTML Document | yes | yes |
XML Form Document | yes | yes |
Master Document | yes | yes |
Formula | no | no |
Chart | no | no |
Basic IDE | no | no |
File Format
does not apply
Future Tasks
- Inline messaging / non modal info text inside textbox/infobox/overlay/statusbar etc. (messages like: nothing found etc.) .. info text in message boxes or dialogs look old fashioned, disturb the sight on the document, must be closed manually and bugs a lot of user; inline messages get more and more popular and give the same info in a more appropriate way. Also the background color of the search text can switch to a warning color if f.e. nothing is found (demands 'searching by first letter').
=> currently there does not exist a framework to support such a functionality (is in focus of renaissance project) .. it make no sense to create an island solution just for the find toolbar.
=> but the additional color info make sense at this point and will probably be integrated soon.
- Searching by inserting first letter (start searching by first char) .. from the first letter on the engine starts to search and to mark the corresponding words; by inserting the first letter the search starts from the cursor position in the writer text on and mark the first search result. after inserting the second letter the search starts again from the cursor position and mark the first search result etc..by deleting letters also the search starts from the cursor position on.
=> after the possibility to highlight is added this behavior can further be improved in this way: from the first letter on every all search results are highlighted (not marked or selected) with every further letter the 'highlighted words collection' get less and less and came closer and closer to the searched word; it increase the speed of finding phrases and the overview.
- Expanded Autocompletion use also the pool of the whole text and not only the history to autocomplete.
- Highlighting (jumping/selecting trough marked items) .. at the moment we select the found phrases, which has the handicap that you cannot travel trough the selected words without loosing the selection and therewith the overview; so it can make sense to mark/highlight the found phrases instead, then travel between the highlighted phrases and edit single contents separately without loosing the search resultset.
- Enlargable toolbar, manual or if text get bigger than 'find textbox'.. in different countries and the corresponding languages the lenght of wording can differ a lot; not to make the toolbars (textfields) too long and ugly on one hand and not unnecessary limit them to an unconfortable lenght for some languages it would be nice if they could have a minimum length and expand if the words get longer.
- Position Findbar in Menuebar to not waste space in taskbars and have it always available in an unused area.
- Average textbox size .. as the operating system and/or the local character size can differ, the textbox has to fit to this. the textbox should contain approx. 15 average width letters (a) but not grown more than max. 200px to not make it ugly.
Ideas
- drop down (snippets) functions (with additional function set like s&r dialog) .. to provide all functions which are available in the 'search & replace' dialog but not overload the toolbar it could make sense to provide drop down functionality for them.
- provide also smart & fast filter function for calc and base .. in application like base and calc filtering the data is often more important than searching for phrases, therefore a findbar in this applications should have the ability to filter
- allow choosing between search & filter function .. because of the rather similar intention of finding data it can make sense to combine search and filter functionality in the findbar and/or switch between this functions.
Open Issues
None.