Giter Site home page Giter Site logo

rocketscientists / rocket Goto Github PK

View Code? Open in Web Editor NEW

This project forked from mozilla-mobile/firefoxlite

18.0 18.0 1.0 196.95 MB

Emerging Market Experiment

License: Mozilla Public License 2.0

HTML 3.25% JavaScript 0.01% Java 65.75% CSS 0.11% Shell 0.16% Python 5.27% Kotlin 25.41% Groovy 0.05%
android browser

rocket's People

Contributors

ahunt avatar ann-private avatar ben-yplai avatar benjamin-cheng avatar chianger avatar cnevinc avatar conjuror avatar daisy-pliu avatar dimplejiang avatar fablejames avatar harly21 avatar hartsu avatar hsiangyu69 avatar idiotmax avatar jacklin-ux avatar josephyu1110 avatar kinse avatar mastizada avatar mcomella avatar mtwtm avatar mxlius avatar niyali avatar pharspher avatar pocmo avatar ppnfk avatar proevan avatar st3fan avatar tlhuang avatar walkingice avatar youwenliang avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

Forkers

robang74

rocket's Issues

Download Management stage 0

mozilla-mobile#5228

Breakdowns:

  1. Remove callbacks from async content queries
  2. Move EnqueueDownloadTask to data layer
  3. Move GetDownloadFileHeaderTask to data layer
  4. Move download broadcast receiver to repository/data source
  5. Move showOpenDownloadSnackBar from DownloadInfoManager to UI layer
  6. Separate download implementation to DownloadsDataSource
  7. Combine RelocateService in downloads module
  8. Combine DownloadCompleteReceiver in downloads module
  9. Integrate new DownloadManager
  10. Implement dedicate foreground process for downloads service

[BUG] Fatal Exception: java.lang.IllegalStateException: Fragment FirstrunFragment not attached to a context.

Fatal Exception: java.lang.IllegalStateException: Fragment FirstrunFragment ...... not attached to a context.
       at androidx.fragment.app.Fragment.requireContext(Fragment.java:900)
       at androidx.fragment.app.Fragment.getResources(Fragment.java:964)
       at androidx.fragment.app.Fragment.getString(Fragment.java:986)
       at org.mozilla.rocket.firstrun.FirstrunFragment.showAnimation$lambda-7$lambda-6(FirstrunFragment.kt:167)
       at org.mozilla.rocket.firstrun.FirstrunFragment.$r8$lambda$aCtrB-JJRB22Aciq0PG37CRSflw(FirstrunFragment.kt)
       at org.mozilla.rocket.firstrun.FirstrunFragment$$ExternalSyntheticLambda1.onAnimationUpdate()
       at android.animation.ValueAnimator.animateValue(ValueAnimator.java:1350)
       at android.animation.ValueAnimator.animateBasedOnTime(ValueAnimator.java:1262)
       at android.animation.ValueAnimator.doAnimationFrame(ValueAnimator.java:1310)
       at android.animation.AnimationHandler.doAnimationFrame(AnimationHandler.java:146)
       at android.animation.AnimationHandler.-wrap2(AnimationHandler.java)
       at android.animation.AnimationHandler$1.doFrame(AnimationHandler.java:54)
       at android.view.Choreographer$CallbackRecord.run(Choreographer.java:903)
       at android.view.Choreographer.doCallbacks(Choreographer.java:717)
       at android.view.Choreographer.doFrame(Choreographer.java:630)
       at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:891)
       at android.os.Handler.handleCallback(Handler.java:751)
       at android.os.Handler.dispatchMessage(Handler.java:95)
       at android.os.Looper.loop(Looper.java:186)
       at android.app.ActivityThread.main(ActivityThread.java:6513)
       at java.lang.reflect.Method.invoke(Method.java)
       at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:914)
       at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:804)

Rocket version

  • Remove Firefox logo and related material
  • Remove Content & Service
  • Remove Telemetry
  • Check String

[BUG] Cannot add the same observer with different lifecycles

androidx.lifecycle.LiveData.observe (LiveData.java:199)
org.mozilla.rocket.menu.BottomSheetHomeMenuFragment.initMenuItems (BottomSheetHomeMenuFragment.kt:120)
org.mozilla.rocket.menu.BottomSheetHomeMenuFragment.onCreateView (BottomSheetHomeMenuFragment.kt:62)
androidx.fragment.app.Fragment.performCreateView (Fragment.java:2963)
androidx.fragment.app.DialogFragment.performCreateView (DialogFragment.java:489)
androidx.fragment.app.FragmentStateManager.createView (FragmentStateManager.java:518)
androidx.fragment.app.FragmentStateManager.moveToExpectedState (FragmentStateManager.java:282)
androidx.fragment.app.FragmentManager.executeOpsTogether (FragmentManager.java:2189)
androidx.fragment.app.FragmentManager.removeRedundantOperationsAndExecute (FragmentManager.java:2100)
androidx.fragment.app.FragmentManager.execPendingActions (FragmentManager.java:2002)
androidx.fragment.app.FragmentManager$5.run (FragmentManager.java:524)
android.os.Handler.handleCallback (Handler.java:883)
android.os.Handler.dispatchMessage (Handler.java:100)
android.os.Looper.loop (Looper.java:237)
android.app.ActivityThread.main (ActivityThread.java:7817)
java.lang.reflect.Method.invoke (Method.java)
com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run (RuntimeInit.java:492)
com.android.internal.os.ZygoteInit.main (ZygoteInit.java:1027) 

Rewrite downloading implementation

Download related implementation lives for long time. Android also involved new storage policy. Rewrite downloading implementation to fix related issues.

[BUG] Fatal Exception: java.lang.IllegalStateException: Can not perform this action after onSaveInstanceState

This happens since 2.6.0 to 2.9.0

Fatal Exception: java.lang.IllegalStateException: Can not perform this action after onSaveInstanceState
       at androidx.fragment.app.FragmentManager.checkStateLoss(FragmentManager.java:1844)
       at androidx.fragment.app.FragmentManager.enqueueAction(FragmentManager.java:1884)
       at androidx.fragment.app.FragmentManager.popBackStack(FragmentManager.java:682)
       at org.mozilla.focus.navigation.TransactionHelper.popAllScreens(TransactionHelper.kt:94)
       at org.mozilla.focus.navigation.ScreenNavigator.raiseBrowserScreen(ScreenNavigator.kt:71)
       at org.mozilla.focus.navigation.ScreenNavigator.showBrowserScreen$lambda-2(ScreenNavigator.kt:83)
       at org.mozilla.focus.navigation.ScreenNavigator.$r8$lambda$KPJZST5tDc_MlHn5m_Lx3kDKKMg(ScreenNavigator.kt)
       at org.mozilla.focus.navigation.ScreenNavigator$$ExternalSyntheticLambda1.run()
       at android.os.Handler.handleCallback(Handler.java:739)
       at android.os.Handler.dispatchMessage(Handler.java:95)
       at android.os.Looper.loop(Looper.java:160)
       at android.app.ActivityThread.main(ActivityThread.java:5541)
       at java.lang.reflect.Method.invoke(Method.java)
       at java.lang.reflect.Method.invoke(Method.java:372)
       at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:964)
       at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:759)

[Google Play]Image material

  • Screenshot: 至少 2 張

  • 主題圖片: PEG 或 24 位元 PNG (不得為去背透明圖),1,024 px x 500 px,最大 1 MB

[BUG] Cannot render any webpages when installed in Chromebook

I tried to install Rocket to a Chromebook, which the Chromebook is HP X2 11, running an ARM CPU and the Android version is 11.

It can install and run, but when I try to browse any website, it just shows a white page and nothing is rendered.

Steps to reproduce the behavior:

  1. Install the app from Google PlayStore in ChromeOS.
  2. Start the app and finish the configurations.
  3. Type any website to browser.
  4. White page only and nothing is rendered.

Expected behavior
I suppose it can run normally and show website when using under ChromeOS, but it's not working.

Device info (please complete the following information):

  • Device: HP X2 11 Chromebook
  • OS: Android 11
  • Webview 119.0.6045.163
  • latest Rocket Version

Reproduce rate
Everytime

Actually, it can run smoothly on some version before but when using the latest version, it starts to not working.

[FEATURE] Share text/link to Rocket

User story

When we are chatting with friends, or reading mails, we are in another apps. Maybe we see some texts or links and we want to open it in this Browser.

We might want to share the text/link to this browser to search/open.

Acceptance Criteria (how do I know when I’m done?)

  1. Open another app, select a text or link
  2. Share the text or link
  3. The text or link could be shared to Rocket to search/open.

[BUG] AndroidDownloadManagerDataSource.kt line 173

Fatal Exception: java.lang.IllegalArgumentException: syntax error, expected column name
       at android.database.DatabaseUtils.readExceptionFromParcel(DatabaseUtils.java:167)
       at android.database.DatabaseUtils.readExceptionFromParcel(DatabaseUtils.java:137)
       at android.content.ContentProviderProxy.query(ContentProviderNative.java:420)
       at android.content.ContentResolver.query(ContentResolver.java:478)
       at android.content.ContentResolver.query(ContentResolver.java:422)
       at android.app.DownloadManager$Query.runQuery(DownloadManager.java:904)
       at android.app.DownloadManager.query(DownloadManager.java:1010)
       at org.mozilla.rocket.download.data.AndroidDownloadManagerDataSource$getDownloadingItems$2.invokeSuspend(AndroidDownloadManagerDataSource.kt:173)
       at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
       at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106)
       at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:571)
       at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:750)
       at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:678)
       at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:665)

and this is another exception stack

Fatal Exception: android.database.sqlite.SQLiteException: near ")": syntax error (code 1 SQLITE_ERROR[1]): , while compiling: SELECT _id AS _id, _data AS local_filename, mediaprovider_uri, destination, title, description, uri, status, hint, mimetype AS media_type, total_bytes AS total_size, lastmod AS last_modified_timestamp, current_bytes AS bytes_so_far, allow_write, notificationpackage, dd_primaryMimeType, dd_fileName, dd_vendor, dd_description, dd_contentSize, dd_objUrl, dd_majorVersion, range_start, range_end, range_first_end, 'placeholder' AS local_uri, 'placeholder' AS reason FROM downloads WHERE ((uid=10345 OR otheruid=10345)) AND (() AND status='192' AND deleted != '1') ORDER BY lastmod DESC
       at android.database.DatabaseUtils.readExceptionFromParcel(DatabaseUtils.java:186)
       at android.database.DatabaseUtils.readExceptionFromParcel(DatabaseUtils.java:142)
       at android.content.ContentProviderProxy.query(ContentProviderNative.java:472)
       at android.content.ContentResolver.query(ContentResolver.java:1193)
       at android.content.ContentResolver.query(ContentResolver.java:1125)
       at android.content.ContentResolver.query(ContentResolver.java:1081)
       at android.app.DownloadManager$Query.runQuery(DownloadManager.java:1457)
       at android.app.DownloadManager.query(DownloadManager.java:1677)
       at android.app.DownloadManager.query(DownloadManager.java:1672)
       at org.mozilla.rocket.download.data.AndroidDownloadManagerDataSource$getDownloadingItems$2.invokeSuspend(AndroidDownloadManagerDataSource.kt:173)
       at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
       at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106)
       at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:571)
       at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:750)
       at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:678)
       at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:665)

[BUG] java.lang.IllegalArgumentException: syntax error, expected column name

java.lang.IllegalArgumentException: syntax error, expected column name
at android.database.DatabaseUtils.readExceptionFromParcel(DatabaseUtils.java:167)
at android.database.DatabaseUtils.readExceptionFromParcel(DatabaseUtils.java:137)
at android.content.ContentProviderProxy.query(ContentProviderNative.java:420)
at android.content.ContentResolver.query(ContentResolver.java:478)
at android.content.ContentResolver.query(ContentResolver.java:422)
at android.app.DownloadManager$Query.runQuery(DownloadManager.java:904)
at android.app.DownloadManager.query(DownloadManager.java:1010)
at org.mozilla.rocket.download.data.AndroidDownloadManagerDataSource$getDownloadingItems$2.invokeSuspend(AndroidDownloadManagerDataSource.kt:133)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:56)
at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:571)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:738)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:678)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:665)

[BUG] ClassCastException: BrowserFragmentLegacy cannot be cast to BrowserFragment

Caused by java.lang.ClassCastException: org.mozilla.rocket.privately.browse.BrowserFragmentLegacy cannot be cast to org.mozilla.rocket.browser.BrowserFragment
       at org.mozilla.rocket.privately.PrivateModeActivity.getBrowserScreen(PrivateModeActivity.kt:333)
       at org.mozilla.focus.navigation.ScreenNavigator.getBrowserScreen(ScreenNavigator.kt:181)
       at org.mozilla.focus.navigation.ScreenNavigator.showBrowserScreen(ScreenNavigator.kt:83)
       at org.mozilla.rocket.privately.PrivateModeActivity.observeChromeAction$lambda-6(PrivateModeActivity.kt:173)
       at org.mozilla.rocket.privately.PrivateModeActivity.$r8$lambda$B-joiRFG_zpDJNbJ8TyQn5DGACQ(PrivateModeActivity.kt)
       at org.mozilla.rocket.privately.PrivateModeActivity$$ExternalSyntheticLambda13.onChanged()
       at org.mozilla.rocket.download.SingleLiveEvent$1.onChanged(SingleLiveEvent.java:58)
       at androidx.lifecycle.LiveData.considerNotify(LiveData.java:133)
       at androidx.lifecycle.LiveData.dispatchingValue(LiveData.java:146)
       at androidx.lifecycle.LiveData$ObserverWrapper.activeStateChanged(LiveData.java:468)
       at androidx.lifecycle.LiveData$LifecycleBoundObserver.onStateChanged(LiveData.java:425)
       at androidx.lifecycle.LifecycleRegistry$ObserverWithState.dispatchEvent(LifecycleRegistry.java:354)
       at androidx.lifecycle.LifecycleRegistry.forwardPass(LifecycleRegistry.java:265)
       at androidx.lifecycle.LifecycleRegistry.sync(LifecycleRegistry.java:307)
       at androidx.lifecycle.LifecycleRegistry.moveToState(LifecycleRegistry.java:148)
       at androidx.lifecycle.LifecycleRegistry.handleLifecycleEvent(LifecycleRegistry.java:134)
       at androidx.lifecycle.ReportFragment.dispatch(ReportFragment.java:68)
       at androidx.lifecycle.ReportFragment.dispatch(ReportFragment.java:144)
       at androidx.lifecycle.ReportFragment.onStart(ReportFragment.java:109)
       at android.app.Fragment.performStart(Fragment.java:2244)
       at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:1002)
       at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:1148)
       at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:1130)
       at android.app.FragmentManagerImpl.dispatchStart(FragmentManager.java:1958)
       at android.app.FragmentController.dispatchStart(FragmentController.java:163)
       at android.app.Activity.performStart(Activity.java:6274)
       at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2379)
       at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2476)
       at android.app.ActivityThread.-wrap11(ActivityThread.java)
       at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1344)
       at android.os.Handler.dispatchMessage(Handler.java:102)
       at android.os.Looper.loop(Looper.java:148)
       at android.app.ActivityThread.main(ActivityThread.java:5421)
       at java.lang.reflect.Method.invoke(Method.java)
       at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)
       at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)

[BUG] HomeTest.kt: (138, 28): Unresolved reference: menu

Describe the bug


> Task :app:compileFocusWebkitDebugJavaWithJavac
The following annotation processors are not incremental: telemetry-compiler.jar (project :telemetry-compiler), compiler-4.0.0.jar (com.github.bumptech.glide:compiler:4.0.0), auto-service-1.0-rc3.jar (com.google.auto.service:auto-service:1.0-rc3).
Make sure all annotation processors are incremental to improve your build speed.
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: Some input files use unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.

> Task :app:compileFocusWebkitDebugAndroidTestKotlin FAILED
e: /Users/mtwtm/Documents/Rocket/app/src/androidTest/java/org/mozilla/focus/activity/HomeTest.kt: (138, 28): Unresolved reference: menu
e: /Users/mtwtm/Documents/Rocket/app/src/androidTest/java/org/mozilla/focus/activity/HomeTest.kt: (147, 28): Unresolved reference: menu
e: /Users/mtwtm/Documents/Rocket/app/src/androidTest/java/org/mozilla/focus/activity/HomeTest.kt: (150, 28): Unresolved reference: menu

My guess is the menu got removed recently. Will bisect when I have time.

Steps To Reproduce

./gradlew clean assembleAndroidTest

[FEATURE] Remove Partner TopSite

User story
As a user, I would like to freely use my browser without any default top sites and use/remove whatever top sites I want.

Acceptance Criteria (how do I know when I’m done?)

  1. Remove the onboarding for top site selection
  2. Remove the constrain where users can't remove default top sites.

Additional context
We don't have partners now. And we may never will. We should/could at least don't show the partner-facing features.

[FEATURE] Adjust Home title

User story
As a user, I would like to see the browser name, "Rocket" in the middle.

Additional context
Change to "Rocket"
Screenshot_20200902-162207

Firebase setting: Shopping search

Remote config name
_str_e_commerce_shoppinglinks

Audience setting
India
Indonesia
Global

Expected Online Time
ASAP

Additional context
Need to do on preview and production

[BUG] kotlin.UninitializedPropertyAccessException: lateinit property sessionManager has not been initialized

org.mozilla.rocket.browser.SessionController.getFocusSession (SessionController.kt:155)
org.mozilla.rocket.browser.BrowserFragment.goBackground (BrowserFragment.kt:259)
org.mozilla.focus.navigation.TransactionHelper$BackStackListener.setBrowserForegroundState (TransactionHelper.kt:289)
org.mozilla.focus.navigation.TransactionHelper$BackStackListener.setBrowserState$lambda-1 (TransactionHelper.kt:265)
org.mozilla.focus.navigation.TransactionHelper$BackStackListener.$r8$lambda$0pPT3174TqJ1i94HEaeY_XQh0fw
org.mozilla.focus.navigation.TransactionHelper$BackStackListener$$ExternalSyntheticLambda0.run (Unknown Source:4)
org.mozilla.focus.navigation.TransactionHelper$BackStackListener.executeStateRunnable (TransactionHelper.kt:295)
org.mozilla.focus.navigation.TransactionHelper$BackStackListener.setBrowserState (TransactionHelper.kt:269)
org.mozilla.focus.navigation.TransactionHelper$BackStackListener.onBackStackChanged (TransactionHelper.kt:242)
androidx.fragment.app.FragmentManager.reportBackStackChanged (FragmentManager.java:2562)
androidx.fragment.app.FragmentManager.executeOpsTogether (FragmentManager.java:2234)
androidx.fragment.app.FragmentManager.removeRedundantOperationsAndExecute (FragmentManager.java:2100)
androidx.fragment.app.FragmentManager.execPendingActions (FragmentManager.java:2002)
androidx.fragment.app.FragmentManager.dispatchStateChange (FragmentManager.java:3138)
androidx.fragment.app.FragmentManager.dispatchActivityCreated (FragmentManager.java:3072)
androidx.fragment.app.FragmentController.dispatchActivityCreated (FragmentController.java:251)
androidx.fragment.app.FragmentActivity.onStart (FragmentActivity.java:502)
androidx.appcompat.app.AppCompatActivity.onStart (AppCompatActivity.java:246)
org.mozilla.focus.activity.MainActivity.onStart (MainActivity.kt:469)
android.app.Instrumentation.callActivityOnStart (Instrumentation.java:1340)
androidx.test.runner.MonitoringInstrumentation.callActivityOnStart (MonitoringInstrumentation.java:2)
android.app.Activity.performStart (Activity.java:7191)
android.app.ActivityThread.performLaunchActivity (ActivityThread.java:2918)
android.app.ActivityThread.handleLaunchActivity (ActivityThread.java:3030)
android.app.ActivityThread.-wrap11
android.app.ActivityThread$H.handleMessage (ActivityThread.java:1696)
android.os.Handler.dispatchMessage (Handler.java:105)
android.os.Looper.loop (Looper.java:164)
android.app.ActivityThread.main (ActivityThread.java:6938)
java.lang.reflect.Method.invoke (Method.java)
com.android.internal.os.Zygote$MethodAndArgsCaller.run (Zygote.java:327)
com.android.internal.os.ZygoteInit.main (ZygoteInit.java:1374) 

[BUG] crash in WebContextMenu.java line 144

Not sure whether if this is solve-able or not

It started since 2.9.0

Fatal Exception: java.lang.RuntimeException: Failure from system
       at android.app.Instrumentation.execStartActivity(Instrumentation.java:1677)
       at android.app.Activity.startActivityForResult(Activity.java:4590)
       at androidx.activity.ComponentActivity.startActivityForResult(ComponentActivity.java:597)
       at android.app.Activity.startActivityForResult(Activity.java:4548)
       at androidx.activity.ComponentActivity.startActivityForResult(ComponentActivity.java:583)
       at android.app.Activity.startActivity(Activity.java:4909)
       at android.app.Activity.startActivity(Activity.java:4877)
       at android.content.ContextWrapper.startActivity(ContextWrapper.java:379)
       at android.content.ContextWrapper.startActivity(ContextWrapper.java:379)
       at org.mozilla.focus.menu.WebContextMenu$2.onNavigationItemSelected(WebContextMenu.java:144)
       at com.google.android.material.navigation.NavigationView$1.onMenuItemSelected(NavigationView.java:285)
       at androidx.appcompat.view.menu.MenuBuilder.dispatchMenuItemSelected(MenuBuilder.java:834)
       at androidx.appcompat.view.menu.MenuItemImpl.invoke(MenuItemImpl.java:158)
       at androidx.appcompat.view.menu.MenuBuilder.performItemAction(MenuBuilder.java:985)
       at com.google.android.material.internal.NavigationMenuPresenter$1.onClick(NavigationMenuPresenter.java:485)
       at android.view.View.performClick(View.java:6605)
       at android.view.View.performClickInternal(View.java:6582)
       at android.view.View.access$3100(View.java:778)
       at android.view.View$PerformClick.run(View.java:25897)
       at android.os.Handler.handleCallback(Handler.java:873)
       at android.os.Handler.dispatchMessage(Handler.java:99)
       at android.os.Looper.loop(Looper.java:193)
       at android.app.ActivityThread.main(ActivityThread.java:6692)
       at java.lang.reflect.Method.invoke(Method.java)
       at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
       at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858)
Caused by android.os.TransactionTooLargeException: data parcel size 2108168 bytes
       at android.os.BinderProxy.transactNative(Binder.java)
       at android.os.BinderProxy.transact(Binder.java:1129)
       at android.app.IActivityManager$Stub$Proxy.startActivity(IActivityManager.java:3730)
       at android.app.Instrumentation.execStartActivity(Instrumentation.java:1671)
       at android.app.Activity.startActivityForResult(Activity.java:4590)
       at androidx.activity.ComponentActivity.startActivityForResult(ComponentActivity.java:597)
       at android.app.Activity.startActivityForResult(Activity.java:4548)
       at androidx.activity.ComponentActivity.startActivityForResult(ComponentActivity.java:583)
       at android.app.Activity.startActivity(Activity.java:4909)
       at android.app.Activity.startActivity(Activity.java:4877)
       at android.content.ContextWrapper.startActivity(ContextWrapper.java:379)
       at android.content.ContextWrapper.startActivity(ContextWrapper.java:379)
       at org.mozilla.focus.menu.WebContextMenu$2.onNavigationItemSelected(WebContextMenu.java:144)
       at com.google.android.material.navigation.NavigationView$1.onMenuItemSelected(NavigationView.java:285)
       at androidx.appcompat.view.menu.MenuBuilder.dispatchMenuItemSelected(MenuBuilder.java:834)
       at androidx.appcompat.view.menu.MenuItemImpl.invoke(MenuItemImpl.java:158)
       at androidx.appcompat.view.menu.MenuBuilder.performItemAction(MenuBuilder.java:985)
       at com.google.android.material.internal.NavigationMenuPresenter$1.onClick(NavigationMenuPresenter.java:485)
       at android.view.View.performClick(View.java:6605)
       at android.view.View.performClickInternal(View.java:6582)
       at android.view.View.access$3100(View.java:778)
       at android.view.View$PerformClick.run(View.java:25897)
       at android.os.Handler.handleCallback(Handler.java:873)
       at android.os.Handler.dispatchMessage(Handler.java:99)
       at android.os.Looper.loop(Looper.java:193)
       at android.app.ActivityThread.main(ActivityThread.java:6692)
       at java.lang.reflect.Method.invoke(Method.java)
       at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
       at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858)

[BUG] NPE in TextActionActivity

I saw crash log in firebase console

Caused by java.lang.NullPointerException: Attempt to invoke virtual method 'int java.lang.String.hashCode()' on a null object reference
       at org.mozilla.focus.activity.TextActionActivity.onCreate(TextActionActivity.java:37)
       at android.app.Activity.performCreate(Activity.java:7009)
       at android.app.Activity.performCreate(Activity.java:7000)
       at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1214)
       at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2731)
       at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2856)
       at android.app.ActivityThread.-wrap11()
       at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1589)
       at android.os.Handler.dispatchMessage(Handler.java:106)
       at android.os.Looper.loop(Looper.java:164)
       at android.app.ActivityThread.main(ActivityThread.java:6494)
       at java.lang.reflect.Method.invoke(Method.java)
       at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:438)
       at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:807)

it can be reproduced by opening search without providing any text

$ adb shell am start -a android.intent.action.WEB_SEARCH -c android.intent.category.DEFAULT
$ adb shell am start -a android.intent.action.WEB_SEARCH -c android.intent.category.DEFAULT -e query foobar
$ adb shell am start -a android.intent.action.PROCESS_TEXT -c android.intent.category.DEFAULT -t "text/plain"
$ adb shell am start -a android.intent.action.PROCESS_TEXT -c android.intent.category.DEFAULT -t "text/plain" -e android.intent.extra.PROCESS_TEXT foobar

[BUG] Fatal Exception: java.lang.SecurityException Unsupported path /storage/emulated/0/Download

Fatal Exception: java.lang.SecurityException: Unsupported path /storage/emulated/0/Download
       at android.os.Parcel.createExceptionOrNull(Parcel.java:2373)
       at android.os.Parcel.createException(Parcel.java:2357)
       at android.os.Parcel.readException(Parcel.java:2340)
       at android.database.DatabaseUtils.readExceptionFromParcel(DatabaseUtils.java:250)
       at android.database.DatabaseUtils.readExceptionFromParcel(DatabaseUtils.java:189)
       at android.content.ContentProviderProxy.insert(ContentProviderNative.java:549)
       at android.content.ContentResolver.insert(ContentResolver.java:2151)
       at android.content.ContentResolver.insert(ContentResolver.java:2113)
       at android.app.DownloadManager.enqueue(DownloadManager.java:1183)
       at org.mozilla.rocket.download.data.AndroidDownloadManagerDataSource$enqueue$2.invokeSuspend(AndroidDownloadManagerDataSource.kt:64)
       at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
       at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106)
       at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:571)
       at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:750)
       at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:678)
       at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:665)

according to crash log, this crash happens mostly on Android 11. and some are on Android 10. I tried using Pixel 2 + Android 11 stock rom, but I cannot reproduce this issue, even if I removed requestLegacyExternalStorage from AndroidManifest.xml.

[BUG] Fatal Exception: android.app.ForegroundServiceStartNotAllowedException

Describe the bug

Fatal Exception: android.app.ForegroundServiceStartNotAllowedException
startForegroundService() not allowed due to mAllowStartForeground false: service dev.rocketscientists.rocket/org.mozilla.rocket.download.data.RelocateService
android.app.ForegroundServiceStartNotAllowedException$1.createFromParcel (ForegroundServiceStartNotAllowedException.java:54)

androidx.core.content.ContextCompat.startForegroundService (ContextCompat.java:703)
org.mozilla.rocket.download.data.RelocateService$Companion.startActionMove (RelocateService.kt:264)
org.mozilla.rocket.download.data.DownloadCompleteReceiver$startRelocationService$2.invokeSuspend (DownloadCompleteReceiver.kt:92)
kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith (ContinuationImpl.kt:33)
kotlinx.coroutines.DispatchedTask.run (DispatchedTask.kt:106)
kotlinx.coroutines.internal.LimitedDispatcher.run (LimitedDispatcher.kt:42)
kotlinx.coroutines.scheduling.TaskImpl.run (Tasks.kt:95)
kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely (CoroutineScheduler.kt:570)
kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask (CoroutineScheduler.kt:749)
kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker (CoroutineScheduler.kt:677)
kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run (CoroutineScheduler.kt:664)

Steps To Reproduce
Download files when app is in the background on Android 12+ devices

Device info (please complete the following information):
Android 12+

[BUG] context menu background is weird

Open any context menu (ie. long click a image file), the background is weird

context_menu_1

it should look like this

context_menu_2

because we set the background to transparent loooooong time ago, if there was any problem, it should already be reported. Maybe there was a regression after this project was forked.

I will remove that line anyway. Please let me know if you see any weird background after removing.

[BUG] android.database.sqlite.SQLiteException

android.database.sqlite.SQLiteException: LIKE or GLOB pattern too complex (code 1)
at android.database.sqlite.SQLiteConnection.nativeExecuteForCursorWindow(Native Method)
at android.database.sqlite.SQLiteConnection.executeForCursorWindow(SQLiteConnection.java:845)
at android.database.sqlite.SQLiteSession.executeForCursorWindow(SQLiteSession.java:836)
at android.database.sqlite.SQLiteQuery.fillWindow(SQLiteQuery.java:62)
at android.database.sqlite.SQLiteCursor.fillWindow(SQLiteCursor.java:144)
at android.database.sqlite.SQLiteCursor.getCount(SQLiteCursor.java:133)
at org.mozilla.rocket.persistance.History.HistoryDao_Impl.queryHistoryByText(HistoryDao_Impl.java:52)
at org.mozilla.rocket.persistance.History.HistoryRepository.searchHistory(HistoryRepository.java:18)
at org.mozilla.rocket.awesomebar.FrecensySuggestionProvider.onInputChanged(FrecensySuggestionProvider.kt:82)
at mozilla.components.browser.awesomebar.BrowserAwesomeBar$onInputChanged$1.invokeSuspend(BrowserAwesomeBar.kt:131)
at mozilla.components.browser.awesomebar.BrowserAwesomeBar$onInputChanged$1.invoke(BrowserAwesomeBar.kt)
at mozilla.components.browser.awesomebar.BrowserAwesomeBar$queryProvidersForSuggestions$1$invokeSuspend$$inlined$forEach$lambda$1$1.invokeSuspend(BrowserAwesomeBar.kt:144)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
at java.lang.Thread.run(Thread.java:818)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.