JTextPane and Paragraphs

Hello
I'm using JTextPane with an instance of DefaultStyledDocument. Now I have to add Paragraphes with code (not user input) but I haven't found any way to do it. Can anyone help?
Thanxs
Leander Eyer

Try using this method
protected void insertUpdate(AbstractDocument.DefaultDocumentEvent chng,
                            AttributeSet attr)Updates document structure as a result of text insertion. This will happen within a write lock. This implementation simply parses the inserted content for line breaks and builds up a set of instructions for the element buffer.

Similar Messages

  • Problem with JTextPane and StateInvariantError

    Hi. I am having a problem with JTextPanes and changing only certain text to bold. I am writing a chat program and would like to allow users to make certain text in their entries bold. The best way I can think of to do this is to add <b> and </b> tags to the beginning and end of any text that is to be bold. When the other client receives the message, the program will take out all of the <b> and </b> tags and display any text between them as bold (or italic with <i> and </i>). I've searched the forums a lot and figured out several ways to make the text bold, and several ways to determine which text is bold before sending the text, but none that work together. Currently, I add the bold tags with this code: (note: messageDoc is a StyledDocument and messageText is a JTextPane)
    public String getMessageText() {
              String text = null;
              boolean bold = false, italic = false;
              for (int i = 0; i < messageDoc.getLength(); i++) {
                   messageText.setCaretPosition(i);
                   if (StyleConstants.isBold(messageDoc.getCharacterElement(i).getAttributes()) && !bold) {
                        bold = true;
                        if (text != null) {
                             text = text + "<b>";
                        else {
                             text = "<b>";
                   else if (StyleConstants.isBold(messageDoc.getCharacterElement(i).getAttributes()) && bold) {
                        // Do nothing
                   else if (!StyleConstants.isBold(messageDoc.getCharacterElement(i).getAttributes()) && bold) {
                        bold = false;
                        if (text != null) {
                             text = text + "</b>";
                        else {
                             text = "</b>";
                   try {
                        if (text != null) {
                             text = text + messageDoc.getText(i,1);
                        else {
                             text = messageDoc.getText(i, 1);
                   catch (BadLocationException e) {
                        System.out.println("An error occurred while getting the text from the message document");
                        e.printStackTrace();
              return text;
         } // end getMessageText()When the message is sent to the other client, the program searches through the received message and changes the text between the bold tags to bold. This seems as if it should work, but as soon as I click on the bold button, I get a StateInvariantError. The code for my button is:
    public void actionPerformed(ActionEvent evt) {
              if (evt.getSource() == bold) {
                   MutableAttributeSet bold = new SimpleAttributeSet();
                   StyleConstants.setBold(bold, true);
                   messageText.getStyledDocument().setCharacterAttributes(messageText.getSelectionStart(), messageText.getSelectionStart() - messageText.getSelectionEnd() - 1, bold, false);
         } //end actionPerformed()Can anyone help me to figure out why this error is being thrown? I have searched for a while to figure out this way of doing what I'm trying to do and I've found out that a StateInvariantError has been reported as a bug in several different circumstances but not in relation to this. Or, if there is a better way to add and check the style of the text that would be great as well. Any help is much appreciated, thanks in advance.

    Swing related questions should be posted in the Swing forum.
    Can't tell from you code what the problem is because I don't know the context of how each method is invoked. But it would seem like you are trying to query the data in the Document while the Document is being updated. Try wrapping the getMessageText() method is a SwingUtilities.invokeLater().
    There is no need to write custom code for a Bold Action you can just use:
    JButton bold = new JButton( new StyledEditorKit.BoldAction() );Also your code to build the text String is not very efficient. You should not be using string concatenation to append text to the string. You should be using a StringBuffer or StringBuilder.

  • Figure numbering AND paragraph numbering in the same document

    Hi everyone,
    I have a document with both figure numbering and paragraph numbering. So let say I am in section 4, then the first paragraph would be "4.1. Introduction" and the first picture would be "Figure 4.1: Cool pics".
    I created two different lists, one for the figure and another one for the text so that figure numbers and paragraph number don't conflict. However I cannot add the section number in the figure numbering since it's on the other list... I tried to have the figure numbering and paragraph numbering in the same list, but then the numbers conflict (e.g it gives 4.1 Introduction and Figure 4.2: Cool pics).
    Can anyone help me, doing what I want (which is "4.1. Introduction" and "Figure 4.1: Cool pics")? Any help would be appreciated.
    Thanks!
    ps: I am using Indesign CS5.5 on a pc

    Thanks for your answer Jump_Over, but my project is already divided into chapters (themselves divided in sections) in a book.
    I found a way around by having the figure numbering in the same list as the paragraph numbering, the twist : while I use level 1 to 4 in paragraph numbering, I use level 5 for figure numbering with a numbering definition like ^1.^#, so no more conflict between numbers.
    It's working fine so far...

  • Obnoxious JTextPane and JScrollPane problem.

    I have written a Tailing program. All works great except for one really annoying issue with my JScollPane. I will do my best to explain the problem:
    The program will continue tailing a file and adding the text to the JTextPane. When a user scrolls up on the JScrollPane, the program still adds the text to the bottom of the JTextPane and the user can continue to view what they need.
    Here is the problem: I have text being colored throughout the text pane. For instance, the word ERROR will be in red. The problem is when the program colors the text, it moves the scroll pane to the line where word that was colored is at. I don't want that. If the user moves the scroll bar, I want the scroll bar to always stay there. I don't want the program to move to the text that was just colored.
    Is there a way to turn that off? I can't find anything like that anywhere.

    Coloring text will not cause the scrollpane to scroll.
    You must be playing with the caret position or something.
    If you need further help then you need to create a [url http://homepage1.nifty.com/algafield/sscce.html]Short, Self Contained, Compilable and Executable, Example Program (SSCCE) that demonstrates the incorrect behaviour, because I can't guess exactly what you are doing based on the information provided.
    And don't forget to use the [url http://forum.java.sun.com/help.jspa?sec=formatting]Code Formatting Tags so the code retains its original formatting.

  • JTextPane and Horizontal Scrollbars

    Hi there,
    I had written an app that included an Event Log, and all was good in my
    world.
    Then one of the app users commented they would like errors to stand out within the log!
    I said "No Problem" but it turns out to be a major bloody headache!!!!!
    I was using a JTextArea but after reading some posts on this forum I decided to use a JTextPane. I found some code for changing the font colour, and everything appeared to be working fine ;-)
    ...until that is I realised my HORIZONTAL_SCROLLBAR_AS_NEEDED was never needed as the text had started to wrap ;-(
    I have tried searching this site and none of the suggestions work for me, the vertical scroll works fine - and I am really stuck. Therefore:
    Is there a way to get the Horizontal scroll bar working in a JTextPane?
    Is there an alternative to JTextPane that will allow me to control font colour by line?
    Do you even know what I am harping on about?
    Or should I admit defeat and add a second JTextArea and a button to switch between my two event types??
    Any suggestions would be greatly received!
    P.S. Below is the edited code that I think is responsible for my problem :0)
    public class EventLogGUI extends JPanel
    private JPanel jpLog = new JPanel();
    private StyledDocument sdLog = new DefaultStyledDocument();
    private JTextPane jtpLog = new JTextPane( sdLog );
    private MutableAttributeSet mas = new SimpleAttributeSet();
    private JScrollPane jspLog;
              public EventLogGUI()
              this.setBounds( 5, 7, 407, 256 );
              this.setBorder( BorderFactory.createLoweredBevelBorder() );
              this.setLayout( null );
              this.add( jpLog );
              jspLog = new JScrollPane( jtpLog,JScrollPane.VERTICAL_SCROLLBAR_ALWAYS,JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED );
              jspLog.setBounds( 12, 25, 372, 180 );
              jpLog.setLayout( null );
              jpLog.setBounds( 5, 5, 397, 218 );
              jpLog.add( jspLog );
              jtpLog.setEditable( false );
              jtpLog.setMargin( new Insets ( 2, 2, 2, 2 ) );
              public void initialiseGUI()
              Vector events = uploadEventLog();
              String event;
              jtpLog.setText( "" );
                        for ( int i = 0; i < events.size(); i++ )
                        event = "" + events.elementAt( i );
                                  if ( event.length() >= 8 && event.substring( 0, 8 ).equals( "WARNING:" ) )
                                            StyleConstants.setForeground( mas, Color.red );
                                  else
                                            StyleConstants.setForeground( mas, Color.black );
                                  try
                                  sdLog.insertString( sdLog.getLength(), event + "\n", mas );
                                  catch( Exception e )
    }

    Hi!
    just wondered if you've searched the forum already. If not: always do that before posting.
    I searched and found this helpful:
    http://forum&threadID=256602
    the solution found in that thread is to extend the JTextPane and add a setLineWrap-method:
    class JTextWrapPane extends JTextPane {
        boolean wrapState = true;
        JTextArea j = new JTextArea();
         * Constructor
        JTextWrapPane() {
            super();
        public JTextWrapPane(StyledDocument p_oSdLog) {
            super(p_oSdLog);
        public boolean getScrollableTracksViewportWidth() {
            return wrapState;
        public void setLineWrap(boolean wrap) {
            wrapState = wrap;
        public boolean getLineWrap(boolean wrap) {
            return wrapState;
    }  now you can use JTextWrapPane instead of JTextPane:
    //  instead of   private JTextPane jtpLog = new JTextPane( sdLog );
        private JTextWrapPane jtpLog = new JTextWrapPane( sdLog );and set JTextWrapPane.setLineWrap(false):
            jtpLog.setLineWrap(false);It may not be the non plus ultra, but it seamed to work for me. ;)

  • How to identify line and paragraph breaks on word enumeration

    Hi,
    I am using PDWordFinder to extract text from the PDF document and then enumerate each word.
    I need to identify the line breaks and replace them with white space
    and paragraph breaks should be replaced with "/r".
    I use the following to identify the line breaks
    (PDWordGetAttrEx(docWord, 0) & WXE_LAST_WORD_ON_LINE)
    Is there any way to identify paragraph breaks?
    Thanks in advance
    Vatspal

    Is the PDF tagged/structured or not?   If so, then you have all the
    paragraph information you need by using the PDSEdit APIs.  If not, then
    you will need to do MUCH MORE heuristic analysis of the content to
    determine paragraphs.

  • Does Oracle Support Searches with Sentence and Paragraph Proximity?

    I have successfully used SENTENCE and PARAGRAPH special groups and the WITHIN operator to search for terms contained within the same sentence and/or paragraph. However, I also need to search for terms that are located within a variable number of sentences or paragraphs of each other. For example, I could search for the term 'dog' and the 'cat' located within 3 sentences of each other. Is this possible in Oracle Text? I have searched the documentation and I can only find the 'near' operator for searching based on word proximity. I cannot find any mention of sentence or paragraph proximity. This is a very important requirement for the system.

    Good question. We are trying to duplicate the functionality of an existing system. It was written into the requirements for the new system. I've asked how important this functionality is to the actual users, but we don't have the answer to that question yet. Knowing that Oracle Text does not support this out of the box, we will certainly need to evaluate the importance of this feature and determine whether it warrants some custom development or switching to another search technology.
    I've thought about using regular expressions to implement this feature, but I'm guessing that the performance wouldn't be that great and it wouldn't integrate well with other Oracle Text searches. Has anyone else used regular expressions combined with Oracle Text to implement more sophisticated searching capabilities?

  • Feature request: Heading Tags and Paragraph Tags for Text element

    Sugestion: Would like to see Reflow be able to format text element with heading tags like <h1> and paragraph tag <p>.

    Thanks! Style management and reusable styles are a HUGE feature set coming to Reflow...won't be there immediately but very soon.  Thanks for the input.

  • Improve the implementation of graphic and paragraph styles

    The implementation of Graphic and Paragraph Styles should be more consistent:
    You can currently edit the attributes of paragraph styles (e.g., point size) but not of graphic styles (outer glow). With graphic styles, you have to overwrite the existing style rather than edit it.
    Graphic Styles have the concept of "breaking the link" whereas Paragraph Styles don't.
    Add the ability to select objects based on a paragraph style (yes, you can select based on Attribute, but not all objects with a specific paragraph style).
    Combine graphic and paragraph styles. For example, I want a style with a 12 pt font and an outer glow.

    Same thing happening here.
    You can though first create some type with a 12 point stroke , then define a new paragraph style, and even though it says 10pt will apply 12pt.
    If you have not looked into graphic styles, that might be a better option for stokes. You can
    Move the fill on top of the stroke (allows you to use a different color for stroke, so the orignal sahep of type doe not get squeezed)
    Use multiple strokes aroudn type
    Set the corner options to round
    For appearance & graphic style, the secret to type is to first set your type fill and stroke to none (this removes the stylization at the character level), then apply strokes and fills in the appearance palette at the type level only. This way the stylization won't fight with each other.

  • JTextPane and highlighting

    Hello!
    Here's what I'm trying to do: I have a window that needs to display String data which is constantly being pumped in from a background thread. Each String that comes in represents either "sent" or "recieved" data. The customer wants to see sent and recieved data together, but needs a way to differentiate between them. Since the Strings are being concatinated together into a JTextPane, I need to highlight the background of each String with a color that represents whether it is "sent" (red) or "recieved" (blue) data. Should be easy right? Well, not really...
    Before I describe the problem I'm having, here is a small example of my highlighting code for reference:
         private DefaultStyledDocument doc = new DefaultStyledDocument();
         private JTextPane txtTest = new JTextPane(doc);
         private Random random = new Random();
         private void appendLong() throws BadLocationException {
              String str = "00 A9 10 20 20 50 10 39 69 FF F9 00 20 11 99 33 00 6E ";
              int start = doc.getLength();
              doc.insertString(doc.getLength(), str, null);
              int end = doc.getLength();
              txtTest.getHighlighter().addHighlight(start, end, new DefaultHighlighter.DefaultHighlightPainter(randomColor()));
         private Color randomColor() {
              int r = intRand(0, 255);
              int g = intRand(0, 255);
              int b = intRand(0, 255);
              return new Color(r, g, b);
         private int intRand(int low, int hi) {
              return random.nextInt(hi - low + 1) + low;
         }As you can see, what I'm trying to do is append a String to the JTextPane and highlight the new String with a random color (for testing). But this code doesn't work as expected. The first String works great, but every subsequent String I append seems to inherit the same highlight color as the first one. So with this code the entire document contents will be highlighted with the same color.
    I can fix this problem by changing the insert line to this:
    doc.insertString(doc.getLength()+1, str, null);With that change in place, every new String gets its own color and it all works great - except that now there's a newline character at the beginning of the document which creates a blank line at the top of the JTextPane and makes it look like I didn't process some of the incomming data.
    I've tried in veign to hack that newline character away. For example:
              if (doc.getLength() == 0) {
                   doc.insertString(doc.getLength(), str, null);
              } else {
                   doc.insertString(doc.getLength()+1, str, null);
              } But that causes the 2nd String to begin on a whole new line, instead of continuing on the first line like it should. All the subsequent appends work good though.
    I've also tried:
    txtTest.setText(txtTest.getText()+str);That makes all the text line up correctly, but then all the previous highlighting is lost. The only String that's ever highlighted is the last one.
    I'm getting close to submitting a bug report on this, but I should see if anyone here can help first. Any ideas are much appreciated!

    It may work but it is nowhere near the correct
    solution.It seems to me the "correct" solution would be for Sun to fix the issue, because it seems they are secretly inserting a newline character into my Document. Here's a compilable program that shows what I mean:
    import java.awt.BorderLayout;
    import java.awt.Color;
    import java.awt.EventQueue;
    import java.awt.event.ActionEvent;
    import java.awt.event.ActionListener;
    import java.awt.event.WindowAdapter;
    import java.awt.event.WindowEvent;
    import java.util.Random;
    import javax.swing.JButton;
    import javax.swing.JFrame;
    import javax.swing.JScrollPane;
    import javax.swing.JTextPane;
    import javax.swing.text.BadLocationException;
    import javax.swing.text.DefaultHighlighter;
    import javax.swing.text.DefaultStyledDocument;
    public class TestFrame extends JFrame {
         private JButton btnAppend = new JButton("Append");
         private DefaultStyledDocument doc = new DefaultStyledDocument();
         private JTextPane txtPane = new JTextPane(doc);
         private Random random = new Random();
         public TestFrame() {
              setSize(640, 480);
              setLocationRelativeTo(null);
              addWindowListener(new WindowAdapter() {
                   public void windowClosing(WindowEvent e) {
                        dispose();
              getContentPane().add(new JScrollPane(txtPane), BorderLayout.CENTER);
              getContentPane().add(btnAppend, BorderLayout.SOUTH);
              btnAppend.addActionListener(new ActionListener() {
                   public void actionPerformed(ActionEvent e) {
                        doBtnAppend();
         private void doBtnAppend() {
              try {
                   String str = "00 A9 10 20 20 50 10 39 69 FF F9 00 20 11 99 33 00 6E ";
                   int start = doc.getLength();
                    * This line causes all highlights to have the same color,
                    * but the text correctly starts on the first line.
                   doc.insertString(doc.getLength(), str, null);
                    * This line causes all highlights to have the correct
                    * (different) colors, but the text incorrectly starts
                    * on the 2nd line.
    //               doc.insertString(doc.getLength()+1, str, null);
                    * This if/else solution causes the 2nd appended text to
                    * incorrectly start on the 2nd line, instead of being
                    * concatinated with the existing text on the first line.
                    * (a newline character is somehow inserted after the first
                    * line)
    //               if (doc.getLength() == 0) {
    //                    doc.insertString(doc.getLength(), str, null);
    //               } else {
    //                    doc.insertString(doc.getLength()+1, str, null);
                   int end = doc.getLength();
                   txtPane.getHighlighter().addHighlight(start, end, new DefaultHighlighter.DefaultHighlightPainter(randomColor()));
              } catch (BadLocationException e) {
                   e.printStackTrace();
         public static void main(String[] args) {
              EventQueue.invokeLater(new Runnable() {
                   public void run() {
                        new TestFrame().setVisible(true);
         private Color randomColor() { return new Color(intRand(0, 255), intRand(0, 255), intRand(0, 255)); }
         private int intRand(int low, int high) { return random.nextInt(high - low + 1) + low; }
    }Try each of the document insert lines in the doBtnAppend method and watch what it does. (comment out the other 2 of course)
    It wastes resources and is inefficient. A lot of work
    goes on behind the scenes to create and populate a
    Document.I tracked the start and end times in a thread loop to benchmark it, and most of the time the difference is 0 ms. When the document gets to about 7000 characters I start seeing delays on the order of 60 ms, but I'm stripping off text from the beginning to limit the max size to 10000. It might be worse on slower computers, but without a "correct" and working solution it's the best I can come up with. =)

  • Forced Line Break and Paragraph Return

    Hi.. It´s maybe a simple question but I cannot see diferences.
    What´s the difference between Forced Line Break and Paragraph Return ?
    Thank's for the answer

    A force line break is still the same paragraph. You won't see a difference unless there is some text change with each new paragraph, such as a style change or the addition of space before or after a paragraph. The forced line break can also be used as a trigger in a nested style to make the first line or lines formatting for a paragraph different from the following lines.
    Peter

  • JTextPane HTMLDocument to string missing lines \n and paragraphs

    I have a JTexpane using an HTMLDocument and I use this function to save the content into a String
        protected String saveToBuffer(HTMLDocument lpd){
         HTMLEditorKit  html  = new HTMLEditorKit();
         try{
                   OutputStream out = new ByteArrayOutputStream()  ;
                   html.write(out, lpd, 0, lpd.getLength());
                         String ret = out.toString();
                         return (ret)
         }catch (Exception ex) {
              System.out.println(ex.toString());
              return ("");
        }It works ok with the formats, but the newlines (\n) ar leave as \n
    so when I set it again to de JTexpeane al the text turns into a single line
        protected void LoadFromBuffer(HTMLDocument lpd,String cadena,boolean clean){     
         HTMLEditorKit  html  = new HTMLEditorKit();
         if (clean){
              try{
                   lpd.remove(0, lpd.getLength());
              }catch (BadLocationException ex) {}
         try{
              html.read(new StringReader(cadena) , lpd, lpd.getLength());
         }catch (Exception ex) {
              System.out.println(ex.toString());
        }Edit:
    I have a "simple solution" Straiting the body from the String "ret" and changing \n for <br>
    but there must be a better way ...
    Edited by: Harl on Dec 12, 2007 9:56 AM
    Edited by: Harl on Dec 12, 2007 9:58 AM

    That return the same thing.
    Now I have "good" solution:
         protected void OnKeyPressed(KeyEvent e){
              if (e.getKeyCode()==KeyEvent.VK_ENTER){
                   try{
                        int pos = comen.getCaretPosition();
                        kit.insertHTML(styledDoc,pos,"<BR>",0,0,HTML.Tag.BR);
                        e.consume();
                        comen.setCaretPosition(pos+1);
                   }catch (Exception ex) {}
         }So when enter is pressed the Tag.BR is inserted and the \n is removed (If not two new lines appears)
    But I really don't understand why this isn't the default behaviour when HTMLDocument and HTMLEditorKit are set in the JTextPane

  • Line and paragraph spacing in pages 5.1

    Line spacing in Pages 5.1 does not seem to be incremental any more and I cannot see how to adjust paragraph spacing at all. Any suggestions?? This is on a Mac using the

    Thanks.
    It is a layout problem that seems to be affecting most users.
    There, but overlooked.
    Hope the Apple programmers are paying attention.
    I am really curious why they seem to be doing no independent testing and checking. At least none that shows.
    Peter

  • Word wrapping with JTextPane and styleDocument

    Hello,
    Can someone help me with the following problem.
    I have a JTextPane where i add a styledDocument.
    If i fill this with text it doen't word-warp the text!
    import javax.swing.JTextPane;
    import javax.swing.text.BadLocationException;
    import javax.swing.text.Style;
    import javax.swing.text.StyledDocument;
    public class LogField extends JTextPane implements LogFileTailerListener{
         public static StyledDocument doc;
         private LogFileTailer tailer;
         private TextStyles styles;
         public LogField(){
              this.setEditable(false);
              this.setContentType("text/html");
              doc = (StyledDocument)this.getDocument();
              styles = new TextStyles();
              tailer = new LogFileTailer( LogPanel.logFileName, 1000, true );
              tailer.addLogFileTailerListener( this );
             tailer.start();          
         public void addText(String text, Style style){     
               try {
                  text = text + System.getProperty("line.separator");
                   doc.insertString(doc.getLength(), text, style);
              } catch (BadLocationException e) {
                   // TODO Auto-generated catch block
                   e.printStackTrace();
              this.setCaretPosition(doc.getLength());
         @Override
         public void newLogFileLine(String line) {
                addText(line,styles.getDefaultStyle());
    }

    Since you are simply appending text to the Document you should not be using a type of "text/html".
    If you need further help then you need to create a [Short, Self Contained, Compilable and Executable, Example Program (SSCCE)|http://homepage1.nifty.com/algafield/sscce.html], that demonstrates the incorrect behaviour.

  • Saving RTF from JTextPane and missing subscripts

    I've written a little application that involves saving and loading styled text in a JTextPane. Bold and italic styled text survives the loading/saving process but subscripts always revert to the regular style.
    To test this further, I created a document with bold, italic and subscript styled text in MS Word, saved it as RTF and then loaded it into my JTextPane. I got the same result as above: my subscripts were lost, but bold and italic survived.
    Is this a bug? If so any news of it being known or fixed?
    thanks,
    McN

    Swing's RTFEditorKit only supports an early release of the RTF specification -- maybe somewhere along 1.1. Microsoft has updated the spec with each new version of Word, so that I think the XP version is something around 1.6 or 1.7. The most common behavior of the current Swing RTFEditorKit is to ignore those extra features it doesn't recognize, like subscripts, tables, images, etc. I have occasionally had it produce a null value as well...giving me fits.

Maybe you are looking for

  • NVIDIA nForce4 system driver

    When installing the system drivers from mainbord cd, is it best not to install the NVIDIA IDE SW component as I am told it will cause problems.In fact what components should be installed and which left out? Is it possible to leave any out?  Ihave MSI

  • [gnome] cannot open any window

    Hello, Since this morning I cannot open any window. Not exactly because if I double-click on a folder on my desktop, nautilus shows up but if I double-click on a text-file, nothing happens. If I do ALT+F2, a launcher appears but if I try do start any

  • Access Dictionary Tables in Webdynpro

    Hi I have created a database table in Dictionary Perspective. Also i have created a dc for webdynpro. I need to access the data and insert the data in the database tables from webdynpro application. How can i do that. Pls help. Regards Sonal Mangla

  • Why can't continue play awb format file after call...

    Need a help! When I use most of S40 phone to playing awb format file,if playing be interrupt, music player can't continue to play from where it stopped.Is that normal? Or this relate awb format? Proconditon: Had connect headset (phone support) Step:

  • Pan & Zoom "In"

    Hi there, I have a question regarding Pan & Zoom feature. I have observed we do not have a 100% control over it, but, anyway... maybe someone knows a trick to make it better! 1) When user activates pan&zoom in a page (touching it), the zoom is alread