Commit Graph

134 Commits

Author SHA1 Message Date
Julian Winkler
d4aca99823 View: replace custom isAttachedToWindow tracking with GTK signals 2025-10-10 12:05:48 +02:00
Julian Winkler
076ade2c5f api-impl: misc stubs and fixes for WhatsApp 2025-10-06 11:36:08 +02:00
Julian Winkler
c60f8e3850 implement AlarmManager and JobScheduler
This is needed for the bootstrap job when setting up WhatsApp in
companion device mode.

The implementation is based on `Handler.postDelayed()`, so jobs and
alarms are not persistent for now.
2025-10-04 13:05:00 +02:00
Julian Winkler
a09aa53ecf api-impl: stubs and fixes for Breezy Weather 2025-10-01 22:59:22 +02:00
Mis012
ccd11d38b3 View: properly implement translation properties 2025-06-07 01:15:58 +02:00
Julian Winkler
3d9099a37f setSystemUiVisibility(): fullscreen also for SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
This mode would fullscreen the app behind the semi-transparent status
bars, but such a mode doesn't exist on desktop Linux, so we just use
normal fullscreen.
2025-06-04 22:48:23 +02:00
Julian Winkler
cff51b230b api-impl: misc stubs to make FCM-toolbox launch 2025-04-21 11:11:16 +02:00
Julian Winkler
5de2c27abf api-impl: misc stubs for WhatsApp support 2025-04-21 10:19:48 +02:00
Julian Winkler
bd83e211d0 handle onClickListener for synthesized MotionEvents
Since synthesized events can't be handled by GTK, we also need to handle
gestures by ourself in that case.
2025-04-18 07:21:21 +02:00
Julian Winkler
728c43f925 implement View.scrollBy() 2025-04-09 12:40:09 +02:00
Mis012
4d12ad5c90 View: add basic implemntation of dispatchTouchEvent
Some Views block all events going to their descendants, and
then synthesize new events themselves. Gtk doesn't allow event
synthesization, which makes this quite annoying to deal with.
This initial implementation definiely has some problems,
for example it seems to cause infinite loops in some cases,
however it surprisingly works well enough.
2025-03-26 20:06:15 +01:00
Julian Winkler
15a6432d01 Revert "View: call onLayout() only on size change or on request"
This reverts commit b33a470c7b.

This commit was added as fix for layout recreation loops, but this is no
longer a problem, since ViewGroup.detachViewFromParent() has been
improved. The first fix is no longer needed and it seems to cause some
minor regressions, so we revert it.
2025-03-25 23:34:56 +01:00
Julian Winkler
4a4b4a4722 api-impl: misc stubs and fixes for several apps including F-Droid and AuroraStore 2025-03-25 23:34:56 +01:00
Julian Winkler
494b4e7134 call onAnimationStart() / onAnimationStop() callbacks from View.startAnimation() 2025-03-25 23:17:09 +01:00
Julian Winkler
b33a470c7b View: call onLayout() only on size change or on request
GTK always wants us to call gtk_widget_allocate() on all children, so we
need to do it manually when not calling onLayout().
2025-03-02 00:05:59 +01:00
Julian Winkler
161904c8a8 View: implement onKeyDown() callback 2025-02-24 21:49:46 +01:00
Julian Winkler
2374d44b0f View: make sure onDetachedFromWindow() gets called before updating attachedToWindow property 2025-02-24 21:49:46 +01:00
Julian Winkler
3fb1f56da2 api-impl: add misc APIs for Open Sudoku 2025-02-24 21:45:36 +01:00
Julian Winkler
227f3c9682 View: HACK: catch Exceptions during dispatch draw 2025-02-24 21:45:36 +01:00
Mis012
ab5b600bf1 run whitespace_format.py --add-new-line-marker-at-end-of-file --remove-trailing-whitespace --remove-trailing-empty-lines --new-line-marker=linux --normalize-non-standard-whitespace=remove on src/ 2025-02-05 16:27:17 +01:00
Julian Winkler
64c5ebe5b6 api-impl: misc stubs for K-9 Mail
This makes the non composeUI parts of K-9 Mail mostly functional.
2025-01-12 14:37:24 +01:00
Julian Winkler
785c24af62 implement View.setKeepScreenOn() 2025-01-11 23:23:53 +01:00
Julian Winkler
57dd86fc98 api-impl: misc stubs for WhatsApp 2025-01-11 22:42:25 +01:00
Pierre-Hugues Husson
c81442321e api-impl: stubs and fixes for latest WhatsApp version 2025-01-01 11:33:16 +01:00
Julian Winkler
f9db8faebd ImageButton: set the defStyleAttr 2024-12-22 10:24:54 +01:00