title: Previous Back Stack entry value allways null and live data never emits
body: <p>So I have a bit of a complex flow. For navigation, we're using Jetpack navigation component.</p>
  <p>So I have a Fragment A that lives in module A. When a button is hit it likes to Fragment B in Module B.</p>
  <p>From there Fragment B will open up a webview that will deep link to a bottom sheet fragment C in module B.</p>
  <p>I need to send the result from Fragment C back to Fragment A.</p>
  <p>Fragment C will pass a value to Fragment B</p>
  <p>Fragment A emission:</p>
  <pre><code>findNavController().previousBackStackEntry?.savedStateHandle?.set&lt;Boolean&gt;(AppsAndDevicesFragment.CONNECTED_CLOUD_DEVICE, true)
  </code></pre>
  <p>Fragment B watches:</p>
  <pre><code>override fun onAttach(context: Context) {
      super.onAttach(context)
      findNavControllerSafely()?.currentBackStackEntry?.savedStateHandle?.getLiveData&lt;Boolean&gt;(
          CONNECTED_CLOUD_DEVICE
      )?.observeForever { result -&gt;
          findNavController().previousBackStackEntry?.savedStateHandle?.set(
              WEARABLE_CONNECTION_OBSERVABLE, result)
      }
  }
  </code></pre>
  <p>Fragment B does properly trigger the observer.</p>
  <p>However in Fragment A, it never fires, and every time I try and fetch the value, it's null</p>
  <p>Fragment A listener:</p>
  <pre><code>override fun onAttach(context: Context) {
      super.onAttach(context)
      val hasConnected = findNavControllerSafely()?.currentBackStackEntry?.savedStateHandle?.get&lt;Boolean&gt;(AppsAndDevicesFragment.WEARABLE_CONNECTION_OBSERVABLE)
      if (hasConnected == true) {
          viewModel.addProgramToJourney(CampaignMode.AUTOMATIC)
      }
      findNavControllerSafely()?.currentBackStackEntry?.savedStateHandle?.getLiveData&lt;Boolean&gt;(
          AppsAndDevicesFragment.WEARABLE_CONNECTION_OBSERVABLE
      )?.observeForever { result -&gt;
          if (result) {
              viewModel.addProgramToJourney(CampaignMode.AUTOMATIC)
          }
          findNavControllerSafely()?.currentBackStackEntry?.savedStateHandle?.remove&lt;Boolean&gt;(
              AppsAndDevicesFragment.WEARABLE_CONNECTION_OBSERVABLE
          )
      }
  }
  </code></pre>
  <p>I don't understand why Fragment A never gets the value.</p>