diff options
Diffstat (limited to 'src/core/hle/applets')
| -rw-r--r-- | src/core/hle/applets/applet.cpp | 4 | ||||
| -rw-r--r-- | src/core/hle/applets/applet.h | 10 | ||||
| -rw-r--r-- | src/core/hle/applets/erreula.cpp | 4 | ||||
| -rw-r--r-- | src/core/hle/applets/erreula.h | 8 | ||||
| -rw-r--r-- | src/core/hle/applets/mii_selector.cpp | 4 | ||||
| -rw-r--r-- | src/core/hle/applets/mii_selector.h | 9 | ||||
| -rw-r--r-- | src/core/hle/applets/swkbd.cpp | 4 | ||||
| -rw-r--r-- | src/core/hle/applets/swkbd.h | 9 | 
8 files changed, 22 insertions, 30 deletions
| diff --git a/src/core/hle/applets/applet.cpp b/src/core/hle/applets/applet.cpp index 4311d9897..645b2d5fe 100644 --- a/src/core/hle/applets/applet.cpp +++ b/src/core/hle/applets/applet.cpp @@ -101,6 +101,10 @@ ResultCode Applet::Start(const Service::APT::AppletStartupParameter& parameter)      return result;  } +bool Applet::IsRunning() const { +    return is_running; +} +  bool IsLibraryAppletRunning() {      // Check the applets map for instances of any applet      for (auto itr = applets.begin(); itr != applets.end(); ++itr) diff --git a/src/core/hle/applets/applet.h b/src/core/hle/applets/applet.h index bfdcad126..ebeed9813 100644 --- a/src/core/hle/applets/applet.h +++ b/src/core/hle/applets/applet.h @@ -13,8 +13,7 @@ namespace Applets {  class Applet {  public: -    virtual ~Applet() {} -    Applet(Service::APT::AppletId id) : id(id) {} +    virtual ~Applet() = default;      /**       * Creates an instance of the Applet subclass identified by the parameter. @@ -48,7 +47,7 @@ public:      /**       * Whether the applet is currently executing instead of the host application or not.       */ -    virtual bool IsRunning() const = 0; +    bool IsRunning() const;      /**       * Handles an update tick for the Applet, lets it update the screen, send commands, etc. @@ -56,6 +55,8 @@ public:      virtual void Update() = 0;  protected: +    explicit Applet(Service::APT::AppletId id) : id(id) {} +      /**       * Handles the Applet start event, triggered from the application.       * @param parameter Parameter data to handle. @@ -65,6 +66,9 @@ protected:      Service::APT::AppletId id;                    ///< Id of this Applet      std::shared_ptr<std::vector<u8>> heap_memory; ///< Heap memory for this Applet + +    /// Whether this applet is currently running instead of the host application or not. +    bool is_running = false;  };  /// Returns whether a library applet is currently running diff --git a/src/core/hle/applets/erreula.cpp b/src/core/hle/applets/erreula.cpp index e1379ac4d..75d7fd9fc 100644 --- a/src/core/hle/applets/erreula.cpp +++ b/src/core/hle/applets/erreula.cpp @@ -47,7 +47,7 @@ ResultCode ErrEula::ReceiveParameter(const Service::APT::MessageParameter& param  }  ResultCode ErrEula::StartImpl(const Service::APT::AppletStartupParameter& parameter) { -    started = true; +    is_running = true;      // TODO(Subv): Set the expected fields in the response buffer before resending it to the      // application. @@ -62,7 +62,7 @@ ResultCode ErrEula::StartImpl(const Service::APT::AppletStartupParameter& parame      message.sender_id = static_cast<u32>(id);      Service::APT::SendParameter(message); -    started = false; +    is_running = false;      return RESULT_SUCCESS;  } diff --git a/src/core/hle/applets/erreula.h b/src/core/hle/applets/erreula.h index a7ec7ec01..681bbea0c 100644 --- a/src/core/hle/applets/erreula.h +++ b/src/core/hle/applets/erreula.h @@ -17,18 +17,12 @@ public:      ResultCode ReceiveParameter(const Service::APT::MessageParameter& parameter) override;      ResultCode StartImpl(const Service::APT::AppletStartupParameter& parameter) override;      void Update() override; -    bool IsRunning() const override { -        return started; -    } +private:      /// This SharedMemory will be created when we receive the LibAppJustStarted message.      /// It holds the framebuffer info retrieved by the application with      /// GSPGPU::ImportDisplayCaptureInfo      Kernel::SharedPtr<Kernel::SharedMemory> framebuffer_memory; - -private: -    /// Whether this applet is currently running instead of the host application or not. -    bool started = false;  };  } // namespace Applets diff --git a/src/core/hle/applets/mii_selector.cpp b/src/core/hle/applets/mii_selector.cpp index 3455b9201..07c7f5b99 100644 --- a/src/core/hle/applets/mii_selector.cpp +++ b/src/core/hle/applets/mii_selector.cpp @@ -55,7 +55,7 @@ ResultCode MiiSelector::ReceiveParameter(const Service::APT::MessageParameter& p  }  ResultCode MiiSelector::StartImpl(const Service::APT::AppletStartupParameter& parameter) { -    started = true; +    is_running = true;      // TODO(Subv): Set the expected fields in the response buffer before resending it to the      // application. @@ -78,7 +78,7 @@ ResultCode MiiSelector::StartImpl(const Service::APT::AppletStartupParameter& pa      message.sender_id = static_cast<u32>(id);      Service::APT::SendParameter(message); -    started = false; +    is_running = false;      return RESULT_SUCCESS;  } diff --git a/src/core/hle/applets/mii_selector.h b/src/core/hle/applets/mii_selector.h index e3ab9f0cd..ec00e29d2 100644 --- a/src/core/hle/applets/mii_selector.h +++ b/src/core/hle/applets/mii_selector.h @@ -65,23 +65,18 @@ ASSERT_REG_POSITION(unk_6C, 0x6C);  class MiiSelector final : public Applet {  public: -    MiiSelector(Service::APT::AppletId id) : Applet(id), started(false) {} +    MiiSelector(Service::APT::AppletId id) : Applet(id) {}      ResultCode ReceiveParameter(const Service::APT::MessageParameter& parameter) override;      ResultCode StartImpl(const Service::APT::AppletStartupParameter& parameter) override;      void Update() override; -    bool IsRunning() const override { -        return started; -    } +private:      /// This SharedMemory will be created when we receive the LibAppJustStarted message.      /// It holds the framebuffer info retrieved by the application with      /// GSPGPU::ImportDisplayCaptureInfo      Kernel::SharedPtr<Kernel::SharedMemory> framebuffer_memory; -    /// Whether this applet is currently running instead of the host application or not. -    bool started; -      MiiConfig config;  };  } diff --git a/src/core/hle/applets/swkbd.cpp b/src/core/hle/applets/swkbd.cpp index 1e21337f5..edd30d7ef 100644 --- a/src/core/hle/applets/swkbd.cpp +++ b/src/core/hle/applets/swkbd.cpp @@ -70,7 +70,7 @@ ResultCode SoftwareKeyboard::StartImpl(Service::APT::AppletStartupParameter cons      DrawScreenKeyboard(); -    started = true; +    is_running = true;      return RESULT_SUCCESS;  } @@ -113,7 +113,7 @@ void SoftwareKeyboard::Finalize() {      message.sender_id = static_cast<u32>(id);      Service::APT::SendParameter(message); -    started = false; +    is_running = false;  }  }  } // namespace diff --git a/src/core/hle/applets/swkbd.h b/src/core/hle/applets/swkbd.h index ea0b1fba9..cc92a8f19 100644 --- a/src/core/hle/applets/swkbd.h +++ b/src/core/hle/applets/swkbd.h @@ -52,14 +52,11 @@ static_assert(sizeof(SoftwareKeyboardConfig) == 0x400, "Software Keyboard Config  class SoftwareKeyboard final : public Applet {  public: -    SoftwareKeyboard(Service::APT::AppletId id) : Applet(id), started(false) {} +    SoftwareKeyboard(Service::APT::AppletId id) : Applet(id) {}      ResultCode ReceiveParameter(const Service::APT::MessageParameter& parameter) override;      ResultCode StartImpl(const Service::APT::AppletStartupParameter& parameter) override;      void Update() override; -    bool IsRunning() const override { -        return started; -    }      /**       * Draws a keyboard to the current bottom screen framebuffer. @@ -72,6 +69,7 @@ public:       */      void Finalize(); +private:      /// This SharedMemory will be created when we receive the LibAppJustStarted message.      /// It holds the framebuffer info retrieved by the application with      /// GSPGPU::ImportDisplayCaptureInfo @@ -82,9 +80,6 @@ public:      /// Configuration of this instance of the SoftwareKeyboard, as received from the application      SoftwareKeyboardConfig config; - -    /// Whether this applet is currently running instead of the host application or not. -    bool started;  };  }  } // namespace | 
