Commit Graph

108 Commits

Author SHA1 Message Date
Daniel Panero
eba9c7037c JavaWidget: add debug info for GTK Inspector 2024-11-19 16:14:36 +01:00
Julian Winkler
4b36bca4c6 refactor SurfaceViewWidget for frame_callback in the Wayland server
SurfaceViewWidget is now always a child of a GtkGraphicsOffload and
handles the GdkTexture on its own. This way the extra GtkPicture is no
longer needed and also the frame_callback of the Wayland server can be
implemented.
2024-11-17 17:11:14 +01:00
Julian Winkler
ab07fc11da EditText.setOnEditorActionListener(): disconnect old listener 2024-10-07 11:55:33 +02:00
Julian Winkler
21a75d7ff0 WebView: use Asset_read() instead of Asset_openFileDescriptor()
openFileDescriptor doesn't work for assets which are compressed inside
the APK.
2024-10-05 10:26:50 +02:00
Julian Winkler
4f4fd15fef WebView: implement WebViewClient callbacks 2024-10-04 15:23:34 +02:00
Julian Winkler
633f1e6f96 WebView: implement file:///android_asset/... URIs 2024-10-04 15:23:34 +02:00
Julian Winkler
dc4b40bdf4 WebView.loadDataWithBaseURL(): handle mimeType=null 2024-10-04 15:23:34 +02:00
Julian Winkler
14eae15178 ListView: implement setSelection() and scrollTo() 2024-10-03 15:57:44 +02:00
Julian Winkler
c492e1f03f add Java APIs needed for WhatsApp MainActivity and ConversationActivity 2024-10-03 15:57:44 +02:00
Mis012
e761bb6a6d api-impl: implement WebView using webkitgtk 2024-09-13 20:29:56 +02:00
Julian Winkler
e3c0931714 prevent reference cycles between Java and native objects 2024-08-02 17:02:53 +02:00
Julian Winkler
45801d8f17 implement EditText.removeTextChangedListener() 2024-08-01 22:06:27 +02:00
Julian Winkler
23e7d32924 Button/ImageButton: consume touch events
Androids button consumes touch events, while GTKs button lets touch
events propagate to the parent. This previously caused some glitches
with buttons inside a CoordinatorLayout.
2024-07-31 18:21:14 +02:00
Julian Winkler
c7f64cd24b Button/ImageButton: remove old OnClickListener when setting new one 2024-07-31 18:21:14 +02:00
Mis012
004ba4ff00 remove some old debugging prints, gate others behind verbose log 2024-06-22 14:35:56 +02:00
Julian Winkler
b95613614e implement SurfaceView.lockCanvas() using GskCanvas 2024-06-15 00:00:20 +02:00
Julian Winkler
8f993fd822 AbsListView: add fallback layout params
If the child doesn't specify layout params, use width=MATCH_PARENT and
height=WRAP_CONTENT. Same as AOSPs defaults
2024-06-12 23:04:54 +02:00
Julian Winkler
c5e0f8a7fd View.draw(): draw background, content, children in same order as AOSP 2024-05-27 16:37:49 +00:00
Julian Winkler
6f02565920 GskCanavas: draw default content when custom View calls super.onDraw() 2024-05-27 16:37:49 +00:00
Julian Winkler
6575fef58e replace SkArea with GskCanvas
This reduces RAM usage, as we no longer need to have separate graphics
buffers for all Views with custom onDraw() method
2024-05-27 16:37:49 +00:00
Julian Winkler
8afdd181d0 WrapperWidget: simulate GTK_OVERFLOW_HIDDEN for 0x0 allocated Views 2024-05-27 16:37:49 +00:00
Julian Winkler
dd3965df8a WrapperWidget: create SkArea also for Views with custom draw() method
Previously we only handled custom onDraw() methods
2024-05-20 08:12:02 +02:00
Julian Winkler
5fdcff4419 put sk_area behind the widget
Most widgets want to draw something behind the default content.

If we replace SkArea with GskCanvas in the future, we could draw
the default content, when the super.onDraw() gets called.
2024-05-20 08:09:01 +02:00
Julian Winkler
b28e90a75c implement SeekBar.getProgress() 2024-05-13 22:01:24 +02:00
Julian Winkler
f82af6ecb7 allocate transparent {WrapperWidget / JavaWidget} 0x0 and draw children in overflow area
This prevents overlay widgets from blocking touch events.

Androids ViewGroup.dispatchTouchEvent() loops over all children and only breaks if an eventhandler returns true. Gtk on the other hand stops at the first sensitive child. Even if the eventhandler returned false.
2024-05-11 07:07:24 +02:00