textinput/peninputarc/inc/pensrvcliinc/peninputclientimpl.h
branchRCL_3
changeset 20 ebd48d2de13c
parent 15 6c2c2d3ab788
child 21 ecbabf52600f
--- a/textinput/peninputarc/inc/pensrvcliinc/peninputclientimpl.h	Thu Aug 19 10:15:25 2010 +0300
+++ b/textinput/peninputarc/inc/pensrvcliinc/peninputclientimpl.h	Tue Aug 31 15:31:50 2010 +0300
@@ -32,6 +32,29 @@
 class MPenUiActivationHandler;
 class CPenUiBackgroundWnd;
 	  
+NONSHARABLE_CLASS(CPeninputServerWaiter) : public CBase
+    {
+    public:
+        static CPeninputServerWaiter* NewL();    
+        void Start();
+        void Stop(TInt aFlag);
+        TBool IsStarted() 
+            {
+             return iWaitScheduler->IsStarted();
+            }
+        TInt Error() 
+            {
+             return iError;
+            }
+        ~CPeninputServerWaiter();
+    protected:
+    private:
+        //CPeninputServerWaiter();
+        void ConstructL();       
+        TInt iError;
+        CActiveSchedulerWait* iWaitScheduler;                         
+    };
+
 NONSHARABLE_CLASS(TUiNotificationHandler)
     {
     public:
@@ -41,8 +64,6 @@
         TInt iType;
     };
     
-
-class CWaitingServerAo;
 /**
  * Client side interface to PeninputSingletonServer.
  *
@@ -54,7 +75,7 @@
     {
 public:
 
-    static RPeninputServerImpl* NewL(TRequestStatus* aStatus = NULL);
+    static RPeninputServerImpl* NewL();
     // Constructors and destructor
 
   
@@ -131,21 +152,12 @@
     /**
      * Get the all support input mode
      *
-     * @param aLanguage: The specific language
+     * @since S60 v4.0
      * @return input mode
      */
-    TInt SupportInputMode( TInt aLanguage );
+    TInt SupportInputMode();
 
     /**
-     * Set input language Id
-     *
-     * @since S60 v4.0
-     * @param aLanguage The input language Id
-     * @return The operation result code.KErrNone if successfully.
-     */    
-    TInt SetInputLanguage( TInt aLanguage );
-    
-    /**
      * Set UI layout id. It will create the UI by the Id
      *
      * @since S60 v4.0
@@ -403,7 +415,7 @@
     void UpdateAppInfo(const TDesC& aInfo, TPeninputAppInfo aType);    
     
     void HandleServerExit();
-    //void OnServerReady(TBool aFlag = ETrue);
+    void OnServerReady(TBool aFlag = ETrue);
     TBool IsForegroundSession();
     //void SetForegroundFlag(TBool aFlag);
     void FinalClose();    
@@ -449,9 +461,24 @@
     void ClearTouchUI();
     void SetResourceChange(TBool aFlag);
     
-    void SetDataQueryPopped(TBool aFlag);
-	
-	void EnablePriorityChangeOnOriChange(TBool aEnabled);
+private:
+        /**
+     * Constructor
+     * 
+     * @since S60 v4.0
+     */
+    RPeninputServerImpl();
+    
+    void ConstructL(const TUid& aUid);
+    
+    TInt DoConnectL();
+
+    void GetUiLayoutPosAndSize();
+    
+    void DimUiLayoutL(TBool aFlag);
+    
+private:    // New functions
+
     /**
      * Starts the server thread
      *
@@ -461,32 +488,6 @@
      * otherwise one of the system wide error codes
      */
     TInt StartThreadL();
-    
-    //TInt ConnectAsync(TRequestStatus& status);
-    TInt StartThreadAsyncL();
-    void AddObserver();
-    TBool ServerReady();
-    void OnServerStarted(TInt aErr);
-    
-private:
-        /**
-     * Constructor
-     * 
-     * @since S60 v4.0
-     */
-    RPeninputServerImpl();
-    
-    void ConstructL(const TUid& aUid,TRequestStatus* aStatus);
-    
-    TInt DoConnectL();
-    TInt DoConnectL(TRequestStatus* aStatus);
-
-    void GetUiLayoutPosAndSize();
-    
-    void DimUiLayoutL(TBool aFlag);
-    
-private:    // New functions
-
 
     void ReadIntArrayFromBufL(const TDesC8& aBuf, RArray<TInt>& aResult);
 
@@ -519,6 +520,9 @@
         
     TBool iLaunchServer;
     
+    //CActiveSchedulerWait* iWaitScheduler;
+    CPeninputServerWaiter * iWaitScheduler;
+    
     TInt iCurPenUiType;    
     
     CPenUiBackgroundWnd* iBackgroundCtrl;
@@ -533,50 +537,9 @@
     TBool iInternalPopup;
     TInt iPriority; 
     TBool iResourceChange;
-    TBool iStartServerOver; 
-    CWaitingServerAo* iWaiterAo;
-    TRequestStatus* iPendingRequest;
-    TBool iServerReady;
-    TBool iDataQueryIsPopped;
 };
 
 
-NONSHARABLE_CLASS(CWaitingServerAo) : public CActive
-    {
-public:
-	
-    CWaitingServerAo(RPeninputServerImpl* aClient);
-    
-    /**
-     * From CActive
-     * will be called when stroke timer ends
-     *
-     * @since S60 v4.0
-     */
-    void RunL();
-
-    /**
-     * From CActive
-     * will be called if RunL leaves
-     *
-     * @since S60 v4.0
-     */
-    TInt RunError(TInt aError);
-
-    /**
-     * From CActive
-     * will be called when stroke timer has been cancelled
-     *
-     * @since S60 v4.0
-     */
-    void DoCancel();
-    
-    TRequestStatus& RequestStatus(); 
-    
-    RPeninputServerImpl* iClient;
-    };
-
-
 NONSHARABLE_CLASS(CPenInputSingletonClient) : public CCoeStatic
     {
     public:
@@ -633,7 +596,7 @@
      * Show pen UI with priority.
      */
     void Show(const TRect& aRect, TBool aGlobalNotes, 
-        TBool aInternal, TInt aPriority, TBool aResource, TBool aDataQueryPopped);
+        TBool aInternal, TInt aPriority, TBool aResource);
     
     /**
      * Called from akncapserver appui to close fastswap.